package service
|
|
import (
|
"aps_crm/model"
|
"aps_crm/model/request"
|
"aps_crm/pkg/ecode"
|
)
|
|
type DepartmentService struct{}
|
|
func (DepartmentService) AddDepartment(department *model.Department) int {
|
err := model.NewDepartmentSearch().Create(department)
|
if err != nil {
|
return ecode.DepartmentExist
|
}
|
|
return ecode.OK
|
}
|
|
func (DepartmentService) DeleteDepartment(id int) int {
|
_, err := model.NewDepartmentSearch().SetId(id).Find()
|
if err != nil {
|
return ecode.DepartmentNotExist
|
}
|
|
err = model.NewDepartmentSearch().SetId(id).Delete()
|
if err != nil {
|
return ecode.DepartmentNotExist
|
}
|
return ecode.OK
|
}
|
|
func (DepartmentService) GetDepartmentList() ([]*model.Department, int) {
|
list, err := model.NewDepartmentSearch().Find()
|
if err != nil {
|
return nil, ecode.DepartmentListErr
|
}
|
|
return list, ecode.OK
|
}
|
|
func (DepartmentService) UpdateDepartment(departments []*request.UpdateDepartment) int {
|
for _, v := range departments {
|
// check department exist
|
_, err := model.NewDepartmentSearch().SetId(v.Id).Find()
|
if err != nil {
|
return ecode.DepartmentNotExist
|
}
|
|
err = model.NewDepartmentSearch().SetId(v.Id).Updates(map[string]interface{}{
|
"name": v.Name,
|
})
|
if err != nil {
|
return ecode.DepartmentSetErr
|
}
|
}
|
|
return ecode.OK
|
}
|