package service import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/ecode" ) type IsInvoiceService struct{} func (IsInvoiceService) AddIsInvoice(isInvoice *model.IsInvoice) int { err := model.NewIsInvoiceSearch().Create(isInvoice) if err != nil { return ecode.IsInvoiceExist } return ecode.OK } func (IsInvoiceService) DeleteIsInvoice(id int) int { _, err := model.NewIsInvoiceSearch().SetId(id).Find() if err != nil { return ecode.IsInvoiceNotExist } err = model.NewIsInvoiceSearch().SetId(id).Delete() if err != nil { return ecode.IsInvoiceNotExist } return ecode.OK } func (IsInvoiceService) GetIsInvoiceList() ([]*model.IsInvoice, int) { list, err := model.NewIsInvoiceSearch().FindAll() if err != nil { return nil, ecode.IsInvoiceListErr } return list, ecode.OK } func (IsInvoiceService) UpdateIsInvoice(isInvoices []*request.UpdateIsInvoice) int { for _, v := range isInvoices { // check isInvoice exist _, err := model.NewIsInvoiceSearch().SetId(v.Id).Find() if err != nil { return ecode.IsInvoiceNotExist } err = model.NewIsInvoiceSearch().SetId(v.Id).Updates(map[string]interface{}{ "name": v.Name, }) if err != nil { return ecode.IsInvoiceSetErr } } return ecode.OK } func (IsInvoiceService) GetIsInvoiceDetail(id int) (*model.IsInvoice, int) { isInvoice, err := model.NewIsInvoiceSearch().SetId(id).Find() if err != nil { return nil, ecode.IsInvoiceNotExist } return isInvoice, ecode.OK }