package service import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/ecode" ) type ClientLevelService struct{} func (ClientLevelService) AddClientLevel(clientLevel *model.ClientLevel) int { err := model.NewClientLevelSearch().Create(clientLevel) if err != nil { return ecode.ClientLevelExist } return ecode.OK } func (ClientLevelService) DeleteClientLevel(id int) int { _, err := model.NewClientLevelSearch().SetId(id).Find() if err != nil { return ecode.ClientLevelNotExist } err = model.NewClientLevelSearch().SetId(id).Delete() if err != nil { return ecode.ClientLevelNotExist } return ecode.OK } func (ClientLevelService) GetClientLevelList() ([]*model.ClientLevel, int) { list, err := model.NewClientLevelSearch().FindAll() if err != nil { return nil, ecode.ClientLevelListErr } return list, ecode.OK } func (ClientLevelService) UpdateClientLevel(clientLevels []*request.UpdateClientLevel) int { for _, v := range clientLevels { // check clientLevel exist _, err := model.NewClientLevelSearch().SetId(v.Id).Find() if err != nil { return ecode.ClientLevelNotExist } err = model.NewClientLevelSearch().SetId(v.Id).Updates(map[string]interface{}{ "name": v.Name, }) if err != nil { return ecode.ClientLevelSetErr } } return ecode.OK }