Explorar o código

feat:常用功能

wangshan %!s(int64=2) %!d(string=hai) anos
pai
achega
63d1574792

+ 0 - 2
api/internal/logic/workdesktopmenuinfologic.go

@@ -2,7 +2,6 @@ package logic
 
 import (
 	"context"
-	"log"
 	"net/http"
 	"userCenter/entity"
 	"userCenter/rpc/pb"
@@ -38,7 +37,6 @@ func (l *WorkDesktopMenuInfoLogic) WorkDesktopMenuInfo(req *types.WorkDesktopMen
 		NewUserId: req.NewUserId,
 		EntId:     req.EntId,
 	})
-	log.Println("----:", req.EntId)
 	return &types.CommonResp{
 		Error_code: res.ErrorCode,
 		Error_msg:  res.ErrorMsg,

+ 11 - 2
entity/workDesktop.go

@@ -270,14 +270,23 @@ func CommonlyUpdate(in *pb.WorkDesktopComprehensiveReq) (B bool, M string) {
 }
 
 // CommonlyFormat 常用功能 格式化
-func (m *WorkDesktopMenu) CommonlyFormat(childMenus map[int][]*JYMenu) ([]*pb.ThreeLevelMenu, error) {
+func (m *WorkDesktopMenu) CommonlyFormat(childMenus map[int][]*JYMenu) ([]*pb.ThreeLevelMenu, []string, bool) {
 	menuList := make([]*pb.ThreeLevelMenu, 0)
 	subLevel := map[int]bool{}
+	delBool := false //更新因超级订阅用户,又购买大会员得用户 导致附件下载包||采购单位画像记录||企业画像记录 不应该展示
+	var saveIds []string
 	for _, mv := range m.MenuTree {
 		//过滤子级
 		if subLevel[mv.ParentId] {
 			continue
 		}
+		//附件下载包、采购单位画像记录、企业画像记录  如果是大会员+超级订阅  排除此三项菜单
+		//灵活性降低,不应该这么搞
+		if (mv.Name == "附件下载包" && m.VerifyPermissions("3")) || (mv.Name == "采购单位画像记录" && m.VerifyPermissions("5")) || (mv.Name == "企业画像记录" && m.VerifyPermissions("4,12,13,19,20,21,23")) {
+			delBool = true
+			continue
+		}
+		saveIds = append(saveIds, encrypt.SE.EncodeString(strconv.Itoa(mv.Id)))
 		subLevel[mv.Id] = true
 		//0:默认展示;1:需验证权限,有权限展示;2:需验证权限,无权限也可展示(可用服务无权限不展示)
 		usable := m.VerifyPermissions(mv.PowerIds)
@@ -335,5 +344,5 @@ func (m *WorkDesktopMenu) CommonlyFormat(childMenus map[int][]*JYMenu) ([]*pb.Th
 		}
 		menuList = append(menuList, oneLevel)
 	}
-	return menuList, nil
+	return menuList, saveIds, delBool
 }

+ 13 - 4
service/workDesktop.go

@@ -16,7 +16,7 @@ import (
 	. "userCenter/rpc/usercenter"
 )
 
-//工作桌面--菜单当前选择模式--全部:all/可用:usable
+// RenewWorkDesktopMenuModeOrCommonly 工作桌面--菜单当前选择模式--全部:all/可用:usable
 //工作桌面--常用功能更新
 //工作桌面--常用功能列表
 func RenewWorkDesktopMenuModeOrCommonly(in *WorkDesktopComprehensiveReq) (r *WorkDesktopComprehensiveResp) {
@@ -115,7 +115,16 @@ func RenewWorkDesktopMenuModeOrCommonly(in *WorkDesktopComprehensiveReq) (r *Wor
 					}
 				}
 				//常用功能格式化
-				r.Data, _ = m.CommonlyFormat(childMenus)
+				menu, saveIds, delBool := m.CommonlyFormat(childMenus)
+				if delBool && len(saveIds) > 0 {
+					in.MenuIds = strings.Join(saveIds, ",")
+					go func(in *WorkDesktopComprehensiveReq) {
+						if b, _ := entity.CommonlyUpdate(in); !b {
+							logx.Info("常用功能-更新数据失败")
+						}
+					}(in)
+				}
+				r.Data = menu
 			}
 		}
 	case "menuMode": //菜单模式更新
@@ -149,7 +158,7 @@ func RenewWorkDesktopMenuModeOrCommonly(in *WorkDesktopComprehensiveReq) (r *Wor
 	return
 }
 
-//
+// GetWorkDesktopMenuMode 获取工作菜单模式
 func GetWorkDesktopMenuMode(in *WorkDesktopMenuInfoReq) (str string, err error) {
 	if in.UserId == "" {
 		return "", fmt.Errorf("参数异常")
@@ -165,7 +174,7 @@ func GetWorkDesktopMenuMode(in *WorkDesktopMenuInfoReq) (str string, err error)
 	return
 }
 
-//获取工作桌面菜单树
+// GetWordDesktopMenuTree 获取工作桌面菜单树
 func GetWordDesktopMenuTree(in *WorkDesktopMenuInfoReq) ([]*pb.MenuList, error) {
 	if in.EntId > 0 {
 		//判断商机管理用户是否切换企业