Browse Source

关闭审批隐藏菜单

hsun 1 year ago
parent
commit
d8c795b283
1 changed files with 25 additions and 3 deletions
  1. 25 3
      controllers/sys_menu.go

+ 25 - 3
controllers/sys_menu.go

@@ -65,6 +65,16 @@ func (this *SysRoleController) SysMenuList() {
 		shareSellerMap[admin.AdminId] = true
 	}
 
+	// 审批配置
+	confMap, e := models.GetBusinessConf()
+	if e != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取商家配置失败, Err: " + e.Error()
+		return
+	}
+	openMap := map[string]bool{"false": false, "true": true}
+	openApprove := openMap[confMap[models.BusinessConfIsReportApprove]]
+
 	list, err := system.GetMenuListByRoleIds(roleIds)
 	if err != nil {
 		br.Msg = "获取失败"
@@ -72,8 +82,14 @@ func (this *SysRoleController) SysMenuList() {
 		return
 	}
 	lenList := len(list)
+
+	menuList := make([]*system.MenuList, 0)
 	for i := 0; i < lenList; i++ {
 		item := list[i]
+		// 审批关闭时隐藏审批菜单(这需求大可不必=_=!)
+		if !openApprove && item.Name == "审批管理" {
+			continue
+		}
 		child, err := system.GetMenuByParentIdRoleIds(roleIds, item.MenuId)
 		if err != nil {
 			br.Msg = "获取失败"
@@ -90,14 +106,19 @@ func (this *SysRoleController) SysMenuList() {
 				}
 			}
 		}
-		for i, menu := range child {
+		for mi, menu := range child {
 			if menu.Name == "正式客户共享" && sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN &&
 				sysUser.AdminId != 66 && sysUser.AdminId != 15 {
 				//如果不是admin角色、共享客户分组下用户、楼颖丹账号、王沛账号 就不显示该页面
 				if ok, _ := shareSellerMap[sysUser.AdminId]; !ok {
-					child = append(child[:i], child[i+1:]...)
+					child = append(child[:mi], child[mi+1:]...)
 				}
 			}
+
+			// 审批关闭时隐藏系统管理下的审批流配置
+			if menu.Name == "审批流配置" && !openApprove {
+				child = append(child[:mi], child[mi+1:]...)
+			}
 		}
 
 		if strings.Contains(item.Name, "出差管理") && sysUser.AdminId == 66 {
@@ -117,9 +138,10 @@ func (this *SysRoleController) SysMenuList() {
 		//	list[i].LevelPath = ""
 		//}
 		list[i].Children = child
+		menuList = append(menuList, list[i])
 	}
 	resp := new(system.MenuListResp)
-	resp.List = list
+	resp.List = menuList
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "获取成功"