| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- package cust
- import (
- "context"
- "dashoo.cn/opms_libary/myerrors"
- "github.com/gogf/gf/frame/g"
- "github.com/gogf/gf/util/gconv"
- "dashoo.cn/micro/app/dao/cust"
- model "dashoo.cn/micro/app/model/cust"
- "dashoo.cn/micro/app/service"
- //serviceLog "dashoo.cn/micro/app/service/cust"
- )
- type CustomercontactService struct {
- *service.ContextService
- Dao *cust.CustCustomerContactDao
- }
- func NewCustomerContactService(ctx context.Context) (svc *CustomercontactService, err error) {
- svc = new(CustomercontactService)
- if svc.ContextService, err = svc.Init(ctx); err != nil {
- return nil, err
- }
- svc.Dao = cust.NewCustCustomerContactDao(svc.Tenant)
- return svc, nil
- }
- // Create 添加联系人
- func (s *CustomercontactService) Create(req *model.CustCustomerContactSeq) (err error) {
- contact := new(model.CustCustomerContact)
- if err = gconv.Struct(req, contact); err != nil {
- err = myerrors.TipsError("添加联系人 验证失败")
- return
- }
- service.SetCreatedInfo(contact, s.GetCxtUserId(), s.GetCxtUserName())
- _, err = s.Dao.Insert(contact)
- if err != nil {
- g.Log().Error(err)
- return
- }
- return
- }
- // 修改联系人
- func (s *CustomercontactService) UpdateById(req *model.UpdateCustCustomerContactSeq) (err error) {
- count, err := s.Dao.Count(req.Id)
- if err != nil {
- g.Log().Error(err)
- return
- }
- if count == 0 {
- err = myerrors.TipsError("修改联系人信息不存在")
- return
- }
- CustomertData := new(model.CustCustomerContact)
- if err = gconv.Struct(req, CustomertData); err != nil {
- g.Log().Error(err)
- return
- }
- service.SetUpdatedInfo(CustomertData, s.GetCxtUserId(), s.GetCxtUserName())
- _, err = s.Dao.FieldsEx(s.Dao.C.CreatedTime, s.Dao.C.CreatedBy, s.Dao.C.CreatedName, s.Dao.C.CustId, s.Dao.C.Id).
- WherePri(s.Dao.C.Id, req.Id).Update(CustomertData)
- if err != nil {
- g.Log().Error(err)
- return
- }
- return
- }
- // 获取联系人信息
- func (s *CustomercontactService) GetList(req *model.ContactSeq) (total int, list []*model.CustCustomerContactInfo, err error) {
- contactDao := s.Dao.M.Where("cust_id = ", req.CustId)
- if req.IsDecision != "" {
- contactDao = contactDao.Where("is_decision", req.IsDecision)
- }
- if req.CuctName != "" {
- contactDao = contactDao.Where("cuct_name "+" like ?", "%"+req.CuctName+"%")
- }
- total, err = contactDao.Count()
- if err != nil {
- g.Log().Error(err)
- err = myerrors.TipsError("获取总行数失败。")
- return
- }
- err = contactDao.Page(req.GetPage()).Order(" id desc ").Scan(&list)
- if err != nil {
- g.Log().Error(err)
- return
- }
- return
- }
- // 删除联系人
- func (s *CustomercontactService) DeleteById(Ids []int64) (err error) {
- result, err := s.Dao.Where(" id in (?) ", Ids).Count()
- if err != nil {
- return err
- }
- if result == 0 {
- return myerrors.TipsError("联系人不存在")
- }
- // 删除客户联系人表
- _, err = s.Dao.Where("id in (?) ", Ids).Delete()
- if err != nil {
- g.Log().Error(err)
- return
- }
- return
- }
|