getBuoyMsg.go 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package common
  2. import (
  3. "app.yhyue.com/moapp/MessageCenter/entity"
  4. "app.yhyue.com/moapp/MessageCenter/rpc/type/message"
  5. "app.yhyue.com/moapp/MessageCenter/util"
  6. qutil "app.yhyue.com/moapp/jybase/common"
  7. "fmt"
  8. "log"
  9. "strconv"
  10. "strings"
  11. )
  12. func FindUserBuoyMsg(this *message.FindUserBuoyMsgReq) *message.FindUserBuoyMsgRes {
  13. var err error
  14. data := message.FindUserBuoyMsgRes{}
  15. res := entity.Mysql.SelectBySql(fmt.Sprintf(`SELECT * FROM message WHERE receive_userid = "%s" and isdel = 1 and appid = %s and isRead =0 and show_buoy = 1 and show_content != "" ORDER BY createtime DESC LIMIT 0,%d`, this.UserId, this.Appid, int(this.PageSize)))
  16. //log.Println("数据:", res)
  17. if res != nil && len(*res) > 0 {
  18. for _, v := range *res {
  19. _id := util.Int64All(v["id"])
  20. id := strconv.FormatInt(_id, 10)
  21. links2 := util.ObjToString((v["link"]))
  22. link2, androidUrl2, iosUrl2, weChatUrl2 := LinkSplit(links2)
  23. data.Data = append(data.Data, &message.BuoyMessages{
  24. Id: id,
  25. BuoyDetail: util.ObjToString(v["show_content"]),
  26. PcUrl: link2,
  27. AndroidUrl: androidUrl2,
  28. IosUrl: iosUrl2,
  29. WeChatUrl: weChatUrl2,
  30. })
  31. }
  32. }
  33. if err == nil {
  34. data.Code = 0
  35. data.Message = "查询成功"
  36. } else {
  37. data.Code = 1
  38. data.Message = "查询失败"
  39. }
  40. return &data
  41. }
  42. func LinkSplit(url string) (link, androidUrl, iosUrl, weChatUrl string) {
  43. if url != "" {
  44. arr := strings.Split(url, ",")
  45. if len(arr) == 4 {
  46. link = arr[0]
  47. androidUrl = arr[1]
  48. iosUrl = arr[2]
  49. weChatUrl = arr[3]
  50. } else {
  51. if len(arr) > 0 {
  52. link = arr[0]
  53. } else {
  54. link = ""
  55. }
  56. androidUrl = ""
  57. iosUrl = ""
  58. weChatUrl = ""
  59. }
  60. }
  61. return link, androidUrl, iosUrl, weChatUrl
  62. }
  63. func ClearUnreadMsg(in *message.ClearUnreadMsgReq) error {
  64. if in.Userid != "" {
  65. query := map[string]interface{}{
  66. "receive_userid": in.Userid,
  67. "appid": in.AppId,
  68. "isdel": 1,
  69. "isRead": 0,
  70. }
  71. //更新服务未读数
  72. if !entity.Mysql.Update("message", query, map[string]interface{}{"isRead": 1}) {
  73. log.Println("更新服务未读数失败")
  74. }
  75. for _, v := range entity.MessageColumn {
  76. go MsgCountZero(in.Userid, in.AppId, qutil.Int64All(v["msg_type"]))
  77. }
  78. }
  79. //更新私信未读数
  80. if in.PositionId > 0 {
  81. sQuery := map[string]interface{}{
  82. "my_position_id": in.PositionId,
  83. "ent_id": in.EntId,
  84. }
  85. if !entity.BaseMysql.Update("socialize_summary", sQuery, map[string]interface{}{"unread": 0}) {
  86. log.Println("更新私信未读数失败")
  87. }
  88. }
  89. return nil
  90. }