package logic import ( MC "app.yhyue.com/moapp/jybase/common" "bp.jydev.jianyu360.cn/BaseService/userCenter/service" "context" "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/svc" "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb" "github.com/zeromicro/go-zero/core/logx" ) type WorkDesktopMenuInfoLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewWorkDesktopMenuInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *WorkDesktopMenuInfoLogic { return &WorkDesktopMenuInfoLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } // WorkDesktopMenuInfo 获取菜单树 func (l *WorkDesktopMenuInfoLogic) WorkDesktopMenuInfo(in *pb.WorkDesktopMenuInfoReq) (*pb.WorkDesktopMenuInfoResp, error) { if in.UserId == "" { return &pb.WorkDesktopMenuInfoResp{ ErrorCode: -1, ErrorMsg: "用户信息有误", Data: nil, }, nil } var ( errorCode int64 = 0 errorMsg = "" menuMode = "all" ) //个人版没有mgoUserId,in.PositionType == "0" in.MgoUserId = MC.If(in.PositionType == "0", in.UserId, in.MgoUserId).(string) logx.Info("+++++++++++++++++++++++++++++++:", in.MgoUserId, "---", in.UserId, "---", in.Phone) in.UserId = MC.If(in.PositionId != "", in.PositionId, in.UserId).(string) //p278职位id(没有企业 职位id是个人职位id,职位id对应相应的企业) 职位id 慢慢替换 userId //菜单树 in.Platform = MC.InterfaceToStr(MC.If(in.Platform == "", "pc", in.Platform)) menuList, err := service.GetWordDesktopMenuTree(in) //菜单模式 menuMode, err = service.GetWorkDesktopMenuMode(in) if err != nil { errorCode = -1 errorMsg = err.Error() } return &pb.WorkDesktopMenuInfoResp{ ErrorCode: errorCode, ErrorMsg: errorMsg, Data: &pb.MenuData{ MenuType: menuMode, MenuList: menuList, }, }, nil }