40 lines
581 B
Go
40 lines
581 B
Go
package users
|
|
|
|
import "errors"
|
|
|
|
type User struct {
|
|
Id int `json:"id"`
|
|
Name string `json:"name"`
|
|
}
|
|
|
|
var users []User
|
|
|
|
func initUsers() {
|
|
users = make([]User, 0)
|
|
}
|
|
|
|
func getAllUsers() ([]User, error) {
|
|
return users, nil
|
|
}
|
|
|
|
func getUserById(id int) (User, error) {
|
|
if id > len(users) {
|
|
return User{}, errors.New("User doesn't exist")
|
|
}
|
|
|
|
return users[id], nil
|
|
}
|
|
|
|
func insertuser(user User) error {
|
|
if user.Name == "" {
|
|
return errors.New("A name must be specified")
|
|
}
|
|
|
|
newUser := User{
|
|
Id: len(users),
|
|
Name: user.Name,
|
|
}
|
|
users = append(users, newUser)
|
|
return nil
|
|
}
|