package service import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/ecode" ) type SolveRateService struct{} func (SolveRateService) AddSolveRate(solveRate *model.SolveRate) int { err := model.NewSolveRateSearch().Create(solveRate) if err != nil { return ecode.SolveRateExist } return ecode.OK } func (SolveRateService) DeleteSolveRate(id int) int { _, err := model.NewSolveRateSearch().SetId(id).Find() if err != nil { return ecode.SolveRateNotExist } err = model.NewSolveRateSearch().SetId(id).Delete() if err != nil { return ecode.SolveRateNotExist } return ecode.OK } func (SolveRateService) GetSolveRateList() ([]*model.SolveRate, int) { list, err := model.NewSolveRateSearch().FindAll() if err != nil { return nil, ecode.SolveRateListErr } return list, ecode.OK } func (SolveRateService) UpdateSolveRate(solveRates []*request.UpdateSolveRate) int { for _, v := range solveRates { // check solveRate exist _, err := model.NewSolveRateSearch().SetId(v.Id).Find() if err != nil { return ecode.SolveRateNotExist } err = model.NewSolveRateSearch().SetId(v.Id).Updates(map[string]interface{}{ "name": v.Name, }) if err != nil { return ecode.SolveRateSetErr } } return ecode.OK } func (SolveRateService) GetSolveRateDetail(id int) (*model.SolveRate, int) { solveRate, err := model.NewSolveRateSearch().SetId(id).Find() if err != nil { return nil, ecode.SolveRateNotExist } return solveRate, ecode.OK }