contant.go 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. package cust
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/opms_libary/myerrors"
  6. "github.com/gogf/gf/errors/gerror"
  7. "github.com/gogf/gf/frame/g"
  8. "github.com/gogf/gf/os/gtime"
  9. "github.com/gogf/gf/util/gconv"
  10. "github.com/gogf/gf/util/gvalid"
  11. model "dashoo.cn/micro/app/model/cust"
  12. server "dashoo.cn/micro/app/service/cust"
  13. )
  14. type CustomerContantHeader struct{}
  15. const (
  16. ContantCreate = "创建联系人"
  17. ContantUpdateById = "修改联系人"
  18. ContantDeleteById = "删除联系人"
  19. )
  20. //创建客户联系人
  21. func (c *CustomerContantHeader) Create(ctx context.Context, req *model.CustCustomerContactSeq, rsp *comm_def.CommonMsg) error {
  22. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  23. return err
  24. }
  25. contactService, err := server.NewCustomerContactService(ctx)
  26. if err != nil {
  27. g.Log().Error(err)
  28. return err
  29. }
  30. err = contactService.Create(req)
  31. var Ids []int64
  32. Ids = append(Ids, gconv.Int64(req.CustId))
  33. c.WriteCustLog(ctx, ContantCreate, Ids, req)
  34. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  35. if err != nil {
  36. g.Log().Error(err)
  37. return err
  38. }
  39. return nil
  40. }
  41. //修改联系人
  42. func (c *CustomerContantHeader) UpdateById(ctx context.Context, req *model.UpdateCustCustomerContactSeq, rsp *comm_def.CommonMsg) error {
  43. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  44. return err
  45. }
  46. customerServer, err := server.NewCustomerContactService(ctx)
  47. if err != nil {
  48. g.Log().Error(err)
  49. return gerror.New("系统异常,请重新尝试")
  50. }
  51. err = customerServer.UpdateById(req)
  52. var Ids []int64
  53. Ids = append(Ids, gconv.Int64(req.CustId))
  54. c.WriteCustLog(ctx, ContantUpdateById, Ids, req)
  55. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  56. if err != nil {
  57. g.Log().Error(err)
  58. return err
  59. }
  60. return nil
  61. }
  62. //客户联系人详情 //GetEntityById
  63. func (c *CustomerContantHeader) GetList(ctx context.Context, req *model.ContactSeq, rsp *comm_def.CommonMsg) error {
  64. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  65. return err
  66. }
  67. customerServer, err := server.NewCustomerContactService(ctx)
  68. if err != nil {
  69. g.Log().Error(err)
  70. return gerror.New("系统异常,请重新尝试")
  71. }
  72. list, err := customerServer.GetList(req.CustId)
  73. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  74. if err != nil {
  75. g.Log().Error(err)
  76. return err
  77. }
  78. rsp.Data = g.Map{"list": list}
  79. return nil
  80. }
  81. //删除联系人
  82. func (c *CustomerContantHeader) DeleteById(ctx context.Context, req *model.DelCustomerContact, rsp *comm_def.CommonMsg) error {
  83. if req.Id == 0 {
  84. return gerror.New("参数有误!")
  85. }
  86. customerServer, err := server.NewCustomerContactService(ctx)
  87. if err != nil {
  88. g.Log().Error(err)
  89. return gerror.New("系统异常,请重新尝试")
  90. }
  91. err = customerServer.DeleteById(req.Id)
  92. var Ids []int64
  93. Ids = append(Ids, gconv.Int64(req.CustId))
  94. c.WriteCustLog(ctx, ContantDeleteById, Ids, req)
  95. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  96. if err != nil {
  97. g.Log().Error(err)
  98. return err
  99. }
  100. return nil
  101. }
  102. //DeleteById
  103. //操作日志
  104. func (c *CustomerContantHeader) WriteCustLog(ctx context.Context, custType string, Id []int64, req interface{}) {
  105. CustomerService, _ := server.NewCustomerService(ctx)
  106. custDynameics := new(model.AddCustomerDynameicsReq)
  107. custDynameics.OpnType = custType
  108. custDynameics.OpnDate = gtime.Now()
  109. custDynameics.OpnContent = req
  110. CustomerService.OperationLog(ctx, Id, custDynameics)
  111. }