47 lines
924 B
Go
47 lines
924 B
Go
package systems
|
|
|
|
import "clortho/lib/db"
|
|
|
|
func CreateSystem(name string) (*db.System, error) {
|
|
system := db.System{Name: name}
|
|
result := db.Connection.Create(&system)
|
|
if result.Error != nil {
|
|
return nil, result.Error
|
|
}
|
|
return &system, nil
|
|
}
|
|
|
|
func GetSystems() []db.System {
|
|
var systems []db.System
|
|
db.Connection.Find(&systems)
|
|
return systems
|
|
}
|
|
|
|
func GetSystem(id uint) (*db.System, error) {
|
|
var system db.System
|
|
result := db.Connection.First(&system, id)
|
|
if result.Error != nil {
|
|
return nil, result.Error
|
|
}
|
|
return &system, nil
|
|
}
|
|
|
|
func UpdateSystem(id uint, name string) (*db.System, error) {
|
|
system, err := GetSystem(id)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
system.Name = name
|
|
result := db.Connection.Save(&system)
|
|
if result.Error != nil {
|
|
return nil, result.Error
|
|
}
|
|
return system, nil
|
|
}
|
|
|
|
func DeleteSystem(id uint) error {
|
|
result := db.Connection.Delete(&db.System{}, id)
|
|
return result.Error
|
|
}
|