Browse Source

fix:研究员角色查看数据

Roc 8 months ago
parent
commit
058dfd8689
1 changed files with 19 additions and 4 deletions
  1. 19 4
      controllers/data_manage/manual_edb.go

+ 19 - 4
controllers/data_manage/manual_edb.go

@@ -358,14 +358,29 @@ func (c *ManualEdbController) EdbList() {
 
 	// 所属分类
 	if classifyId > 0 {
-		classifyIdList, err := data.GetUserManualClassifyIdList(userId)
+		// 获取有用权限的分类
+		classifyList, err := models.GetEdbdataClassify(int64(userId))
 		if err != nil {
-			br.Msg = "获取分类数据失败"
-			br.Msg = "获取拥有的分类数据失败,Err:" + err.Error()
 			return
 		}
+
+		var isParent bool
+		classifyIdList := make([]int, 0)
+		for _, v := range classifyList {
+			if v.ClassifyId == classifyId {
+				isParent = true
+				classifyIdList = append(classifyIdList, v.ClassifyId)
+				if v.Child != nil && len(v.Child) > 0 {
+					for _, vv := range v.Child {
+						classifyIdList = append(classifyIdList, vv.ClassifyId)
+					}
+				}
+				break
+			}
+		}
+
 		num := len(classifyIdList)
-		if num > 0 {
+		if num > 0 && isParent {
 			condition += ` AND a.classify_id in (` + utils.GetOrmInReplace(num) + `) `
 			pars = append(pars, classifyIdList)
 		} else {