materialdetaillogic.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package logic
  2. import (
  3. "app.yhyue.com/moapp/MessageCenter/rpc/messageclient"
  4. "context"
  5. "app.yhyue.com/moapp/MessageCenter/api/internal/svc"
  6. "app.yhyue.com/moapp/MessageCenter/api/internal/types"
  7. "github.com/zeromicro/go-zero/core/logx"
  8. )
  9. type MaterialDetailLogic struct {
  10. logx.Logger
  11. ctx context.Context
  12. svcCtx *svc.ServiceContext
  13. }
  14. func NewMaterialDetailLogic(ctx context.Context, svcCtx *svc.ServiceContext) *MaterialDetailLogic {
  15. return &MaterialDetailLogic{
  16. Logger: logx.WithContext(ctx),
  17. ctx: ctx,
  18. svcCtx: svcCtx,
  19. }
  20. }
  21. func (l *MaterialDetailLogic) MaterialDetail(req *types.MaterialDetailReq) (resp *types.MaterialDetailResp, err error) {
  22. // todo: add your logic here and delete this line
  23. res, err := l.svcCtx.MessageCenter.MlDetails(l.ctx, &messageclient.MaterialDetailReq{
  24. Id: req.Id,
  25. MsgLogId: req.MsgLogId,
  26. UserId: req.UserId,
  27. PositionId: req.PositionId,
  28. })
  29. if err != nil {
  30. return nil, err
  31. }
  32. detail := map[string]interface{}{
  33. "id": res.Data.Id,
  34. "receiveUserId": res.Data.ReceiveUserId,
  35. "title": res.Data.Title,
  36. "content": res.Data.Content,
  37. "msgType": res.Data.MsgType,
  38. "link": res.Data.Link,
  39. "isRead": res.Data.IsRead,
  40. "createtime": res.Data.Createtime,
  41. "file_url": res.Data.FileUrl,
  42. "material_content": res.Data.MaterialContent,
  43. "qrcode_url": res.Data.QrcodeUrl,
  44. "task_name": res.Data.TaskName,
  45. "task_description": res.Data.TaskDescription,
  46. "attUrl": res.Data.AttUrl,
  47. }
  48. return &types.MaterialDetailResp{
  49. Code: 1,
  50. Err_msg: "成功",
  51. Data: detail,
  52. }, nil
  53. }