messagefindlogic.go 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package logic
  2. import (
  3. "app.yhyue.com/moapp/MessageCenter/rpc/messageclient"
  4. "context"
  5. "log"
  6. "app.yhyue.com/moapp/MessageCenter/api/internal/svc"
  7. "app.yhyue.com/moapp/MessageCenter/api/internal/types"
  8. "github.com/zeromicro/go-zero/core/logx"
  9. )
  10. type MessageFindLogic struct {
  11. logx.Logger
  12. ctx context.Context
  13. svcCtx *svc.ServiceContext
  14. }
  15. func NewMessageFindLogic(ctx context.Context, svcCtx *svc.ServiceContext) MessageFindLogic {
  16. return MessageFindLogic{
  17. Logger: logx.WithContext(ctx),
  18. ctx: ctx,
  19. svcCtx: svcCtx,
  20. }
  21. }
  22. func (l *MessageFindLogic) MessageFind(req types.MessageFindReq) (*types.MessageFindRes, error) {
  23. // todo: add your logic here and delete this line
  24. result := &types.MessageFindRes{}
  25. log.Println(req)
  26. lsi := l.svcCtx.MessageCenter
  27. resp, err := lsi.FindUserMsg(l.ctx, &messageclient.FindUserMsgReq{
  28. MsgType: req.MsgType,
  29. Appid: req.AppId,
  30. UserId: req.UserId,
  31. ReceiveUserId: req.ReceiveUserId,
  32. Read: req.IsRead,
  33. OffSet: req.Offset,
  34. PageSize: req.PageSize,
  35. })
  36. if err != nil {
  37. return nil, err
  38. }
  39. //data := make([]map[string]interface{}, 0)
  40. result.Code = resp.Code
  41. result.Message = resp.Message
  42. result.Total = resp.Count
  43. for _, v := range resp.Data {
  44. result.Data = append(result.Data, map[string]interface{}{
  45. "id": v.Id,
  46. "appid": v.Appid,
  47. "receive_name": v.ReceiveName,
  48. "send_userid": v.SendUserId,
  49. "send_name": v.SendName,
  50. "createtime": v.Createtime,
  51. "title": v.Title,
  52. "msg_type": v.MsgType,
  53. "link": v.Link,
  54. "cite_id": v.CiteId,
  55. "content": v.Content,
  56. "isRead": v.IsRead,
  57. "msgLogId": v.MsgLogId,
  58. })
  59. }
  60. return result, nil
  61. }