SubscriptionsService.go 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package service
  2. import (
  3. "fmt"
  4. . "gitdxz.51daxuetong.cn/go_dev/jjl-tools/tinodeService/dao"
  5. . "gitdxz.51daxuetong.cn/go_dev/jjl-tools/tinodeService/lib"
  6. )
  7. type SubscriptionsService struct {
  8. }
  9. type SubscriptionsListReturn struct {
  10. TotalCount int `json:"total_count"`
  11. Totalpage int `json:"totalpage"`
  12. Page int `json:"page"`
  13. List []Subscriptions `json:"list"`
  14. }
  15. //通过chatId获取用户的所有的会话列表
  16. func (subSvc SubscriptionsService) GetSubsCoutomerListByChatId(chatId string) (subList []Subs, err error) {
  17. //在ChatRecord中获取用户的uid
  18. chatDao := ChatRecordDao{}
  19. record, err :=chatDao.GetChatRecordByChatId(chatId)
  20. if err != nil {
  21. fmt.Println("====GetChatRecordByChatId====",err)
  22. return
  23. }
  24. //通过uid获取用户的所有的会话列表
  25. subDao := SubscriptionsDao{}
  26. subList, err = subDao.GetSubsCoutomerList(record.VISITOR_ID)
  27. if err != nil {
  28. fmt.Println("====GetSubsCoutomerList====",err)
  29. return
  30. }
  31. for k, v := range subList {
  32. subList[k].From = GencodeUid(v.Userid)
  33. //这里去最后的聊天时间, 取订阅subs的最后updatedat, 由于是2个订阅, 那个大取那个
  34. if (v.Updatedat.Before(v.Updateat)) {
  35. subList[k].Updatedat = v.Updateat
  36. }
  37. }
  38. return
  39. }