Browse Source

表格编辑页面的分类

xyxie 1 year ago
parent
commit
f23864e985
1 changed files with 39 additions and 2 deletions
  1. 39 2
      controllers/data_manage/excel/excel_classify.go

+ 39 - 2
controllers/data_manage/excel/excel_classify.go

@@ -136,14 +136,51 @@ func (this *ExcelClassifyController) ExcelClassifyItems() {
 	if source <= 0 {
 		source = utils.EXCEL_DEFAULT
 	}
-	rootList, err := excel.GetExcelClassifyByParentId(0, source)
+	classifyList, err := excel.GetExcelClassifyBySource(source)
 	if err != nil {
 		br.Msg = "获取失败"
 		br.ErrMsg = "获取数据失败,Err:" + err.Error()
 		return
 	}
+
+	// 获取二级分类
+	// 获取三级分类
+	classifyMap := make(map[int][]*excel.ExcelClassifyItems)
+	for _, v := range classifyList {
+		if v.ParentId > 0 {
+			classifyMap[v.ParentId] = append(classifyMap[v.ParentId], v)
+		}
+	}
+	// todo 整理第三层
+	//组装三级分类
+	for key, classify := range classifyList {
+		subList, ok := classifyMap[classify.ExcelClassifyId]
+		if ok && classify.Level == 3 {
+			classifyList[key].Children = append(classifyList[key].Children, subList...)
+		}
+	}
+	// todo 整理第二层
+	for key, classify := range classifyList {
+		subList, ok := classifyMap[classify.ExcelClassifyId]
+		if ok && classify.Level == 2 {
+			classifyList[key].Children = append(classifyList[key].Children, subList...)
+		}
+	}
+	// todo 整理第一层
+	for key, classify := range classifyList {
+		subList, ok := classifyMap[classify.ExcelClassifyId]
+		if ok && classify.Level == 1 {
+			classifyList[key].Children = append(classifyList[key].Children, subList...)
+		}
+	}
+	nodeAll := make([]*excel.ExcelClassifyItems, 0)
+	for _, v := range classifyList {
+		if v.ParentId == 0 {
+			nodeAll = append(nodeAll, v)
+		}
+	}
 	resp := response2.ExcelClassifyListResp{
-		AllNodes: rootList,
+		AllNodes: nodeAll,
 	}
 	br.Ret = 200
 	br.Success = true