12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- package logic
- import (
- "app.yhyue.com/moapp/MessageCenter/api/internal/svc"
- "app.yhyue.com/moapp/MessageCenter/api/internal/types"
- "app.yhyue.com/moapp/MessageCenter/rpc/messageclient"
- "context"
- "github.com/zeromicro/go-zero/core/logx"
- )
- type MessageGetLastLogic struct {
- logx.Logger
- ctx context.Context
- svcCtx *svc.ServiceContext
- }
- func NewMessageGetLastLogic(ctx context.Context, svcCtx *svc.ServiceContext) MessageGetLastLogic {
- return MessageGetLastLogic{
- Logger: logx.WithContext(ctx),
- ctx: ctx,
- svcCtx: svcCtx,
- }
- }
- func (l *MessageGetLastLogic) MessageGetLast(req types.MessageGetLastReq) (*types.MessageGetLastRes, error) {
- result := &types.MessageGetLastRes{}
- lsi := l.svcCtx.MessageCenter
- resp, err := lsi.GetLastMessage(l.ctx, &messageclient.GetLastMessageReq{
- MsgType: req.MsgType,
- Appid: req.AppId,
- UserId: req.UserId,
- IsRead: req.IsRead,
- })
- if err != nil {
- return nil, err
- }
- result.Code = resp.Code
- result.Message = resp.Message
- if resp.Data != nil {
- result.Data = map[string]interface{}{
- "id": resp.Data.Id,
- "appid": resp.Data.Appid,
- "receive_name": resp.Data.ReceiveName,
- "send_userid": resp.Data.SendUserId,
- "send_name": resp.Data.SendName,
- "createtime": resp.Data.Createtime,
- "title": resp.Data.Title,
- "msg_type": resp.Data.MsgType,
- "link": resp.Data.Link,
- "cite_id": resp.Data.CiteId,
- "content": resp.Data.Content,
- "isRead": resp.Data.IsRead,
- "msgLogId": resp.Data.MsgLogId,
- }
- }
- return result, nil
- }
|