user_rai_label.go 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package cygx
  2. import (
  3. "errors"
  4. "fmt"
  5. "hongze/hz_crm_api/models/cygx"
  6. "hongze/hz_crm_api/services/alarm_msg"
  7. "hongze/hz_crm_api/utils"
  8. "time"
  9. )
  10. // GetUserLabelByUserIdArr 根据多个userId 获取每个UserId最新的十条数据
  11. func GetUserLabelByUserIdArr(userIdArr []int) (mapRsp map[int][]*cygx.WxUserRaiLabelListResp) {
  12. if len(userIdArr) == 0 {
  13. return
  14. }
  15. var err error
  16. defer func() {
  17. if err != nil {
  18. fmt.Println(err)
  19. go alarm_msg.SendAlarmMsg(fmt.Sprint("根据多个userId 获取每个UserId最新的十条数据失败:"+err.Error(), "userIdArr", userIdArr), 2)
  20. }
  21. }()
  22. labelList, e := cygx.GetWxUserRaiLabelListByUserIds(userIdArr)
  23. if e != nil {
  24. err = errors.New("GetWxUserRaiLabelListByUserIds, Err: " + e.Error())
  25. return
  26. }
  27. mapRsp = make(map[int][]*cygx.WxUserRaiLabelListResp)
  28. RaiUserLabelStyleSetConfig := RaiUserLabelStyleSet
  29. for _, v := range labelList {
  30. if RaiUserLabelStyleSet[v.SourceType] != nil {
  31. v.BackgroundColor = RaiUserLabelStyleSetConfig[v.SourceType].BackgroundColor
  32. v.TextClolr = RaiUserLabelStyleSetConfig[v.SourceType].TextClolr
  33. }
  34. mapRsp[v.UserId] = append(mapRsp[v.UserId], v)
  35. }
  36. return
  37. }
  38. // DeleteActivityWxUserRaiLabel 点了到会,又点了取消的人,对应的活动标签给取消掉
  39. func DeleteActivityWxUserRaiLabel(userIdArr []int, activityId int) {
  40. if len(userIdArr) == 0 {
  41. return
  42. }
  43. var err error
  44. defer func() {
  45. if err != nil {
  46. fmt.Println(err)
  47. go alarm_msg.SendAlarmMsg(fmt.Sprint("点了到会,又点了取消的人,对应的活动标签给取消掉失败, DeleteActivityWxUserRaiLabel Err:"+err.Error(), "userIdArr", userIdArr), 2)
  48. }
  49. }()
  50. e := cygx.DeleteWxUserRaiLabelWithActivity(userIdArr, activityId)
  51. if e != nil {
  52. err = errors.New("DeleteWxUserRaiLabelWithActivity, Err: " + e.Error())
  53. return
  54. }
  55. return
  56. }
  57. // 添加用户参加活动标签到Redis
  58. func ActivityWxUserRaiLabelRedisAdd(sourceId, uid int, createTime time.Time) (err error) {
  59. defer func() {
  60. if err != nil {
  61. fmt.Println(err)
  62. msg := fmt.Sprint("sourceId:", sourceId, "userId:", uid)
  63. go alarm_msg.SendAlarmMsg("添加用户参加活动标签,写入Redis队列消息失败:"+err.Error()+msg, 2)
  64. }
  65. }()
  66. log := &cygx.WxUserRaiLabelRedis{UserId: uid, SourceId: sourceId, SourceType: 2, CreateTime: createTime}
  67. if utils.Re == nil {
  68. err := utils.Rc.LPush(utils.WX_USER_RAI_LABEL_KEY, log)
  69. if err != nil {
  70. fmt.Println("ActivityWxUserRaiLabelRedisAdd LPush Err:" + err.Error())
  71. }
  72. }
  73. return
  74. }
  75. // 添加用户参加路演标签到Redis
  76. func RoadShowWxUserRaiLabelRedisAdd(sourceId, uid int, createTime time.Time) (err error) {
  77. defer func() {
  78. if err != nil {
  79. fmt.Println(err)
  80. msg := fmt.Sprint("sourceId:", sourceId, "userId:", uid)
  81. go alarm_msg.SendAlarmMsg("添加用户参加路演标签,写入Redis队列消息失败:"+err.Error()+msg, 2)
  82. }
  83. }()
  84. log := &cygx.WxUserRaiLabelRedis{UserId: uid, SourceId: sourceId, SourceType: 3, CreateTime: createTime}
  85. if utils.Re == nil {
  86. err := utils.Rc.LPush(utils.WX_USER_RAI_LABEL_KEY, log)
  87. if err != nil {
  88. fmt.Println("RoadShowWxUserRaiLabelRedisAdd LPush Err:" + err.Error())
  89. }
  90. }
  91. return
  92. }