package service import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/ecode" ) type QuotationStatusService struct{} func (QuotationStatusService) AddQuotationStatus(quotationStatus *model.QuotationStatus) int { err := model.NewQuotationStatusSearch().Create(quotationStatus) if err != nil { return ecode.QuotationStatusExist } return ecode.OK } func (QuotationStatusService) DeleteQuotationStatus(id int) int { _, err := model.NewQuotationStatusSearch().SetId(id).Find() if err != nil { return ecode.QuotationStatusNotExist } err = model.NewQuotationStatusSearch().SetId(id).Delete() if err != nil { return ecode.QuotationStatusNotExist } return ecode.OK } func (QuotationStatusService) GetQuotationStatusList() ([]*model.QuotationStatus, int) { list, err := model.NewQuotationStatusSearch().FindAll() if err != nil { return nil, ecode.QuotationStatusListErr } return list, ecode.OK } func (QuotationStatusService) UpdateQuotationStatus(quotationStatuss []*request.UpdateQuotationStatus) int { for _, v := range quotationStatuss { // check quotationStatus exist _, err := model.NewQuotationStatusSearch().SetId(v.Id).Find() if err != nil { return ecode.QuotationStatusNotExist } err = model.NewQuotationStatusSearch().SetId(v.Id).Updates(map[string]interface{}{ "name": v.Name, }) if err != nil { return ecode.QuotationStatusSetErr } } return ecode.OK } func (QuotationStatusService) GetQuotationStatusDetail(id int) (*model.QuotationStatus, int) { quotationStatus, err := model.NewQuotationStatusSearch().SetId(id).Find() if err != nil { return nil, ecode.QuotationStatusNotExist } return quotationStatus, ecode.OK }