wangpengfei
2023-08-07 9c2489c0c360c8dda36d3cbe1dba79222096b2dd
service/serviceFeeManage.go
@@ -1,76 +1,81 @@
package service
import (
   "aps_crm/model"
   "aps_crm/pkg/ecode"
   "aps_crm/pkg/mysqlx"
)
type FeeManageService struct{}
func (FeeManageService) AddServiceFeeManage(serviceFeeManage *model.ServiceFeeManage) int {
   tx := mysqlx.GetDB().Begin()
   err := model.NewClientSearch(tx).Create(serviceFeeManage.Client)
   if err != nil {
      tx.Rollback()
      return ecode.ClientExist
   }
   serviceFeeManage.ClientId = serviceFeeManage.Client.Id
   err = model.NewServiceFeeManageSearch(tx).Create(serviceFeeManage)
   if err != nil {
      tx.Rollback()
      return ecode.ServiceFeeManageExist
   }
   tx.Commit()
   return ecode.OK
}
func (FeeManageService) UpdateServiceFeeManage(serviceFeeManage *model.ServiceFeeManage) int {
   // check serviceFeeManage exist
   _, err := model.NewServiceFeeManageSearch(nil).SetId(serviceFeeManage.Id).Find()
   if err != nil {
      return ecode.ServiceFeeManageNotExist
   }
   tx := mysqlx.GetDB().Begin()
   err = model.NewServiceFeeManageSearch(tx).SetId(serviceFeeManage.Id).Update(serviceFeeManage)
   if err != nil {
      tx.Rollback()
      return ecode.ServiceFeeManageSetErr
   }
   // update client
   err = model.NewClientSearch(tx).SetId(serviceFeeManage.ClientId).Update(serviceFeeManage.Client)
   if err != nil {
      tx.Rollback()
      return ecode.ClientUpdateErr
   }
   tx.Commit()
   return ecode.OK
}
func (FeeManageService) GetServiceFeeManageList(page, pageSize int, keyword string) ([]*model.ServiceFeeManage, int64, int) {
   // get contact list
   contacts, total, err := model.NewServiceFeeManageSearch(nil).SetKeyword(keyword).SetPage(page, pageSize).FindAll()
   if err != nil {
      return nil, 0, ecode.ServiceFeeManageListErr
   }
   return contacts, total, ecode.OK
}
func (FeeManageService) DeleteServiceFeeManage(ids []int) int {
   // delete client
   err := model.NewServiceFeeManageSearch(nil).SetIds(ids).Delete()
   if err != nil {
      return ecode.ServiceFeeManageDeleteErr
   }
   return ecode.OK
}
package service
import (
   "aps_crm/constvar"
   "aps_crm/model"
   "aps_crm/pkg/ecode"
   "aps_crm/pkg/mysqlx"
)
type FeeManageService struct{}
func (FeeManageService) AddServiceFeeManage(serviceFeeManage *model.ServiceFeeManage) int {
   tx := mysqlx.GetDB().Begin()
   err := model.NewClientSearch(tx).Create(serviceFeeManage.Client)
   if err != nil {
      tx.Rollback()
      return ecode.ClientExist
   }
   serviceFeeManage.ClientId = serviceFeeManage.Client.Id
   err = model.NewServiceFeeManageSearch(tx).Create(serviceFeeManage)
   if err != nil {
      tx.Rollback()
      return ecode.ServiceFeeManageExist
   }
   tx.Commit()
   return ecode.OK
}
func (FeeManageService) UpdateServiceFeeManage(serviceFeeManage *model.ServiceFeeManage) int {
   // check serviceFeeManage exist
   _, err := model.NewServiceFeeManageSearch(nil).SetId(serviceFeeManage.Id).Find()
   if err != nil {
      return ecode.ServiceFeeManageNotExist
   }
   tx := mysqlx.GetDB().Begin()
   err = model.NewServiceFeeManageSearch(tx).SetId(serviceFeeManage.Id).Update(serviceFeeManage)
   if err != nil {
      tx.Rollback()
      return ecode.ServiceFeeManageSetErr
   }
   // update client
   err = model.NewClientSearch(tx).SetId(serviceFeeManage.ClientId).Update(serviceFeeManage.Client)
   if err != nil {
      tx.Rollback()
      return ecode.ClientUpdateErr
   }
   tx.Commit()
   return ecode.OK
}
func (FeeManageService) DeleteServiceFeeManage(ids []int) int {
   // delete client
   err := model.NewServiceFeeManageSearch(nil).SetIds(ids).Delete()
   if err != nil {
      return ecode.ServiceFeeManageDeleteErr
   }
   return ecode.OK
}
func (FeeManageService) GetServiceFeeManageList(page, pageSize int, queryClass constvar.ServiceFeeQueryClass, keywordType constvar.ServiceFeeKeywordType, keyword string) ([]*model.ServiceFeeManage, int64, int) {
   // get contact list
   contacts, total, err := model.NewServiceFeeManageSearch(nil).
      SetQueryClass(queryClass).
      SetKeywordType(keywordType).
      SetKeyword(keyword).
      SetPage(page, pageSize).FindAll()
   if err != nil {
      return nil, 0, ecode.ServiceFeeManageListErr
   }
   return contacts, total, ecode.OK
}