package service import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/ecode" ) type PossibilityService struct{} func (PossibilityService) AddPossibility(possibility *model.Possibility) int { err := model.NewPossibilitySearch().Create(possibility) if err != nil { return ecode.PossibilityExist } return ecode.OK } func (PossibilityService) DeletePossibility(id int) int { _, err := model.NewPossibilitySearch().SetId(id).Find() if err != nil { return ecode.PossibilityNotExist } err = model.NewPossibilitySearch().SetId(id).Delete() if err != nil { return ecode.PossibilityNotExist } return ecode.OK } func (PossibilityService) GetPossibilityList() ([]*model.Possibility, int) { list, err := model.NewPossibilitySearch().FindAll() if err != nil { return nil, ecode.PossibilityListErr } return list, ecode.OK } func (PossibilityService) UpdatePossibility(possibilities []*request.UpdatePossibility) int { for _, v := range possibilities { // check possibility exist _, err := model.NewPossibilitySearch().SetId(v.Id).Find() if err != nil { return ecode.PossibilityNotExist } err = model.NewPossibilitySearch().SetId(v.Id).Updates(map[string]interface{}{ "name": v.Name, }) if err != nil { return ecode.PossibilitySetErr } } return ecode.OK }