workdesktopmenuinfologic.go 1.7 KB

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