salechanceaddlogic.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package logic
  2. import (
  3. "context"
  4. "bp.jydev.jianyu360.cn/CRM/application/api/internal/svc"
  5. "bp.jydev.jianyu360.cn/CRM/application/api/internal/types"
  6. "bp.jydev.jianyu360.cn/CRM/application/service"
  7. "github.com/zeromicro/go-zero/core/logx"
  8. )
  9. type SaleChanceAddLogic struct {
  10. logx.Logger
  11. ctx context.Context
  12. svcCtx *svc.ServiceContext
  13. }
  14. func NewSaleChanceAddLogic(ctx context.Context, svcCtx *svc.ServiceContext) *SaleChanceAddLogic {
  15. return &SaleChanceAddLogic{
  16. Logger: logx.WithContext(ctx),
  17. ctx: ctx,
  18. svcCtx: svcCtx,
  19. }
  20. }
  21. func (l *SaleChanceAddLogic) SaleChanceAdd(req *types.SaleChanceReq) (resp *types.Reply, err error) {
  22. // todo: add your logic here and delete this line
  23. resp = &types.Reply{}
  24. chance := &service.SaleChanceService{
  25. BaseUserId: req.BaseUserId,
  26. PositionId: req.PositionId,
  27. EntUserId: req.EntUserId,
  28. EntId: req.EntId,
  29. AppId: req.AppId,
  30. AccountId: req.AccountId,
  31. EntDeptId: req.EntDeptId,
  32. ChanceName: req.ChanceName, //机会名称
  33. Summary: req.Summary, //概要信息
  34. ChanceClassify: req.ChanceClassify, //机会分类
  35. ExpectedOrderTime: req.ExpectedOrderTime, //最初预计落单段时间 时间戳
  36. ExpectedMoney: req.ExpectedMoney, //最初预计落单金额
  37. CustomName: req.CustomName, //客户全称
  38. BusinessType: req.BusinessType, //业务类型
  39. Remarks: req.Remarks, //备注
  40. NextfollowUpTime: req.NextfollowUpTime, //下次跟进时间戳
  41. Types: req.Types, //处理方式 1自办;2转办
  42. User: req.User, //企业用户id
  43. EmployInfoId: req.EmployInfoId, //资讯收录id
  44. CustomId: req.CustomId, //客户id
  45. CreateName: req.CreateName,
  46. ChanceSource: req.ChanceSource,
  47. OwnerId: req.OwnerId,
  48. BusinessId: req.BusinessId,
  49. }
  50. status, error_msg := service.CanAdd(req.EntId, "more_create_chance", req.EmployInfoId, req.CustomId, req.PositionId)
  51. if status <= 0 {
  52. resp.Error_code = -1
  53. resp.Error_msg = error_msg
  54. resp.Data = map[string]interface{}{
  55. "status": -1,
  56. }
  57. return
  58. }
  59. status, _ = chance.Add(l.ctx)
  60. resp.Data = map[string]interface{}{
  61. "status": status,
  62. }
  63. return
  64. }