activity_special.go 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. package services
  2. import (
  3. "context"
  4. "fmt"
  5. "hongze/hongze_cygx/models"
  6. "hongze/hongze_cygx/utils"
  7. "strconv"
  8. "time"
  9. )
  10. //func init() {
  11. // UpdateCygxActivitySpecialSignupNum()
  12. //}
  13. //修改专项调研,用户与公司的参与数量
  14. func UpdateCygxActivitySpecialSignupNum(cont context.Context) (err error) {
  15. defer func() {
  16. if err != nil {
  17. fmt.Println(err)
  18. go utils.SendAlarmMsg("修改活动状态至进行中失败"+err.Error(), 2)
  19. go utils.SendEmail(utils.APPNAME+"【"+utils.RunMode+"】"+"失败提醒", "修改活动状态至进行中失败 ErrMsg:"+err.Error(), utils.EmailSendToUsers)
  20. }
  21. }()
  22. //根据手机号分组获取列表以及数量
  23. var condition string
  24. var pars []interface{}
  25. condition += ` AND s.create_time < ? `
  26. pars = append(pars, time.Now().Format(utils.FormatDate))
  27. listSpecial, err := models.GetActivityListSpecialGroupByMobile(condition, pars)
  28. if err != nil {
  29. return err
  30. }
  31. var mapMobile []string
  32. for _, v := range listSpecial {
  33. mapMobile = append(mapMobile, v.Mobile)
  34. }
  35. //根据手机号获取这些用户的信息
  36. userList, err := models.GetWxUserByMobiles(mapMobile)
  37. if err != nil {
  38. return err
  39. }
  40. //更改这些手机对应的关注关注数量
  41. err = models.UpdateActivitySpecialSignupNumMulti(listSpecial)
  42. if err != nil {
  43. return err
  44. }
  45. //更改这些手机对应的公司ID
  46. err = models.UpdateActivitySpecialSignupCompanyIdMulti(userList)
  47. if err != nil {
  48. return err
  49. }
  50. //根据CompanyId分组获取列表以及数量
  51. listSpecialByCompanyId, err := models.GetActivityListSpecialGroupByCompanyId(condition, pars)
  52. if err != nil {
  53. return err
  54. }
  55. //更改这些公司对应的关注关注数量
  56. err = models.UpdateActivitySpecialSignupCompanyNumMulti(listSpecialByCompanyId)
  57. if err != nil {
  58. return err
  59. }
  60. fmt.Println("UpdateCygxActivitySpecialSignupNum end")
  61. return
  62. }
  63. //处理专项调研的展示
  64. func GetActivityLabelSpecialList(userType, isPower int, chartPermissionIds, scale, permissionNameStr string) (item *models.ActivityTypeHome, err error) {
  65. var condition string
  66. var pars []interface{}
  67. condition = ` AND art.publish_status = 1 AND art.label != '' `
  68. //行业名称
  69. if isPower == 1 {
  70. condition += ` AND art.chart_permission_name IN (` + permissionNameStr + `) `
  71. }
  72. if chartPermissionIds != "" {
  73. condition += ` AND art.chart_permission_id IN (` + chartPermissionIds + `) `
  74. }
  75. var conditionOr string
  76. if scale != "" {
  77. conditionOr += ` OR ( art.scale LIKE '%` + scale + `%' ` + condition + `) `
  78. }
  79. condition += ` AND art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%'` + conditionOr
  80. specialList, err := models.GetActivityLabelSpecialListAll(condition, pars, 0, 8)
  81. if err != nil {
  82. return
  83. }
  84. for k2, v2 := range specialList {
  85. specialList[k2].KeyWord = LabelStrV5(v2.KeyWord, v2.IsShowSubjectName, v2.TemporaryLabel)
  86. specialList[k2].ImgUrlBg = "https://hzstatic.hzinsights.com/static/temp/20220426202204/20220426/XDLLsjC9XAAy8LIzQr7GsjrBbtX6.png"
  87. specialList[k2].ImgUrlBg = utils.ACTIVITY_ZXDY_ImgUrl3
  88. }
  89. itemList := new(models.ActivityTypeHome)
  90. itemList.ActivityTypeName = "专项产业调研"
  91. itemList.Resource = 2
  92. itemList.List = specialList
  93. itemList.ActivityTypeId = 7
  94. itemList.ImgUrl = utils.ACTIVITY_ZXDY_ImgUrl1
  95. itemList.ImgUrlBg = utils.ACTIVITY_ZXDY_ImgUrl2
  96. item = itemList
  97. return
  98. }