enter_score.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. package cygx
  2. import (
  3. "hongze/hz_crm_api/controllers"
  4. "hongze/hz_crm_api/models"
  5. "hongze/hz_crm_api/models/cygx"
  6. "hongze/hz_crm_api/models/system"
  7. "hongze/hz_crm_api/utils"
  8. )
  9. // X类客户录分模块
  10. type EnterScoreController struct {
  11. controllers.BaseAuthController
  12. }
  13. // @Title 详情
  14. // @Description 获取详情接口
  15. // @Param CompanyContractId query int true "ID"
  16. // @Success Ret=200 {object} cygx.CygxAllocationCompanyContractDetailResp
  17. // @router /enterScore/detail [get]
  18. func (this *EnterScoreController) CompanyContracDetail() {
  19. br := new(models.BaseResponse).Init()
  20. defer func() {
  21. this.Data["json"] = br
  22. this.ServeJSON()
  23. }()
  24. AdminUser := this.SysUser
  25. if AdminUser == nil {
  26. br.Msg = "请登录"
  27. br.ErrMsg = "请登录,用户信息为空"
  28. br.Ret = 408
  29. return
  30. }
  31. resp := new(cygx.CygxEnterScoreDetailResp)
  32. //权益研究员
  33. sysUserList, err := cygx.GetAskEmailList()
  34. if err != nil {
  35. br.Msg = "获取失败"
  36. br.ErrMsg = "获取失败,GetAskEmailList Err: " + err.Error()
  37. return
  38. }
  39. mapRaiUser := make(map[string][]*cygx.EnterScoreRealNameListResp)
  40. for _, v := range sysUserList {
  41. item := new(cygx.EnterScoreRealNameListResp)
  42. item.RealName = v.Name
  43. item.ChartPermissionName = v.ChartPermissionName
  44. mapRaiUser[v.ChartPermissionName] = append(mapRaiUser[v.ChartPermissionName], item)
  45. }
  46. listPermission, err := cygx.GetChartPermissionAll()
  47. if err != nil {
  48. br.Msg = "获取信息失败"
  49. br.ErrMsg = "获取品种信息失败,Err:" + err.Error()
  50. return
  51. }
  52. var itemslistPermission []*cygx.EnterScorePermissionListResp
  53. permissionNameArr := []string{"医药", "消费", "科技", "智造", "策略", "固收"}
  54. for _, v := range listPermission {
  55. if !utils.InArrayByStr(permissionNameArr, v.PermissionName) {
  56. continue
  57. }
  58. item := new(cygx.EnterScorePermissionListResp)
  59. item.ChartPermissionName = v.PermissionName
  60. item.List = mapRaiUser[v.PermissionName]
  61. itemslistPermission = append(itemslistPermission, item)
  62. }
  63. resp.EnterScoreObj.ListRai = itemslistPermission
  64. //ficc 研究员
  65. ficcUserList, err := system.GetFiccEnterScoreAdmin()
  66. if err != nil {
  67. br.Msg = "获取失败"
  68. br.ErrMsg = "获取失败,GetFiccEnterScoreAdmin Err: " + err.Error()
  69. return
  70. }
  71. mapFiccUser := make(map[string][]*cygx.EnterScoreRealNameListResp)
  72. for _, v := range ficcUserList {
  73. item := new(cygx.EnterScoreRealNameListResp)
  74. item.RealName = v.RealName
  75. item.ChartPermissionName = v.GroupName
  76. mapFiccUser[v.GroupName] = append(mapFiccUser[v.GroupName], item)
  77. }
  78. var itemsFicclistPermission []*cygx.EnterScorePermissionListResp
  79. permissionFiccNameArr := []string{"宏观组", "建材组", "有色组", "能化组"}
  80. for _, v := range permissionFiccNameArr {
  81. item := new(cygx.EnterScorePermissionListResp)
  82. item.ChartPermissionName = v
  83. item.List = mapFiccUser[v]
  84. itemsFicclistPermission = append(itemsFicclistPermission, item)
  85. }
  86. resp.EnterScoreObj.ListFicc = itemsFicclistPermission
  87. groupNameArr := []string{"销售分", "专题分", "专家分", "云图大拓", "艾摩宏观"}
  88. var itemsGroup []*cygx.EnterScoreGroupListResp
  89. for _, v := range groupNameArr {
  90. item := new(cygx.EnterScoreGroupListResp)
  91. item.GroupName = v
  92. itemsGroup = append(itemsGroup, item)
  93. }
  94. resp.EnterScoreObj.ListProup = itemsGroup
  95. resp.PercentageObj = resp.EnterScoreObj
  96. resp.EnterScoreType = 1
  97. resp.Quarter = make([]string, 0)
  98. br.Ret = 200
  99. br.Success = true
  100. br.Msg = "获取成功"
  101. br.Data = resp
  102. }