39 lines
597 B
Go
39 lines
597 B
Go
package model
|
|
|
|
import (
|
|
"sort"
|
|
"time"
|
|
)
|
|
|
|
type Company struct {
|
|
ID uint `gorm:"primary_key"`
|
|
CreatedAt time.Time
|
|
UpdatedAt time.Time
|
|
Name string
|
|
}
|
|
|
|
func GetCompanies() ([]*Company) {
|
|
|
|
comapnies := make([]*Company, 0)
|
|
GetDB().Find(&comapnies)
|
|
|
|
sort.Slice(comapnies, func(i, j int) bool {
|
|
return comapnies[i].Name < comapnies[j].Name
|
|
})
|
|
|
|
return comapnies
|
|
}
|
|
|
|
func DeleteCompany(id uint) (err error) {
|
|
|
|
company := &Company{}
|
|
company.ID = id
|
|
return GetDB().Delete(&company).Error
|
|
}
|
|
|
|
func (company *Company) CreateOrUpdate() (*Company) {
|
|
|
|
GetDB().Save(company)
|
|
|
|
return company;
|
|
} |