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 GetMsgTypeLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } func NewGetMsgTypeLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetMsgTypeLogic { return &GetMsgTypeLogic{ Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx, } } func (l *GetMsgTypeLogic) GetMsgType(req *types.GetMsgTypeReq) (resp *types.GetMsgTypeRes, err error) { result := &types.GetMsgTypeRes{} lsi := l.svcCtx.MessageCenter res, err := lsi.GetMsgType(l.ctx, &messageclient.GetMsgTypeReq{ Appid: req.AppId, UserId: req.UserId, }) if err != nil { return nil, err } for _, val := range res.Data { result.Data = append(result.Data, map[string]interface{}{ "msgType": val.MsgType, "name": val.Name, "code": val.Code, "displayPlatform": val.DisplayPlatform, "img": val.Img, }) } result.Code = res.Code result.Message = res.Message return result, nil }