workdesktopmenuinfologic.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package logic
  2. import (
  3. "context"
  4. "userCenter/rpc/internal/config"
  5. "userCenter/service"
  6. "userCenter/rpc/internal/svc"
  7. "userCenter/rpc/pb"
  8. "github.com/zeromicro/go-zero/core/logx"
  9. )
  10. type WorkDesktopMenuInfoLogic struct {
  11. ctx context.Context
  12. svcCtx *svc.ServiceContext
  13. logx.Logger
  14. }
  15. func NewWorkDesktopMenuInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *WorkDesktopMenuInfoLogic {
  16. return &WorkDesktopMenuInfoLogic{
  17. ctx: ctx,
  18. svcCtx: svcCtx,
  19. Logger: logx.WithContext(ctx),
  20. }
  21. }
  22. // 获取菜单树
  23. func (l *WorkDesktopMenuInfoLogic) WorkDesktopMenuInfo(in *pb.WorkDesktopMenuInfoReq) (*pb.WorkDesktopMenuInfoResp, error) {
  24. if in.UserId == "" {
  25. return &pb.WorkDesktopMenuInfoResp{
  26. ErrorCode: -1,
  27. ErrorMsg: "用户信息有误",
  28. Data: nil,
  29. }, nil
  30. }
  31. var (
  32. errorCode int64 = 0
  33. errorMsg = ""
  34. menuMode = "all"
  35. )
  36. //菜单树
  37. menuList, err := service.GetWordDesktopMenuTree(in, config.ConfigJson.RedisOutTime, config.ConfigJson.InternalTime, config.ConfigJson.BigMemberOff)
  38. //菜单模式
  39. menuMode, err = service.GetWorkDesktopMenuMode(in)
  40. logx.Info(err, "+++++:", len(menuList))
  41. if err != nil {
  42. errorCode = -1
  43. errorMsg = err.Error()
  44. }
  45. return &pb.WorkDesktopMenuInfoResp{
  46. ErrorCode: errorCode,
  47. ErrorMsg: errorMsg,
  48. Data: &pb.MenuData{
  49. MenuType: menuMode,
  50. MenuList: menuList,
  51. },
  52. }, nil
  53. }