Przeglądaj źródła

素材库列表查询

xyxie 5 miesięcy temu
rodzic
commit
38fa111a99
2 zmienionych plików z 32 dodań i 38 usunięć
  1. 31 37
      controllers/material/material.go
  2. 1 1
      models/material/material.go

+ 31 - 37
controllers/material/material.go

@@ -775,44 +775,43 @@ func (this *MaterialController) List() {
 	var condition string
 	var pars []interface{}
 
-	if classifyId <= 0 {
-		br.Msg = "请选择分类"
-		return
-	}
-	// 查询当前的分类
-	classifyInfo, err := material.GetMaterialClassifyById(classifyId)
-	if err != nil {
-		br.Msg = "分类不存在"
-		br.ErrMsg = "获取分类信息失败,Err:" + err.Error()
-		return
-	}
-	// 获取所有子分类
-	childList, e := material.GetMaterialClassifyByLevelPath(classifyInfo.LevelPath)
-	if e != nil {
-		err = fmt.Errorf("保存分类失败,Err:" + e.Error())
-		return
-	}
-	// 把原先的父级levePath,替换成最新的父级序列
-	classifyIdMap := make(map[string]struct{})
 	classifyIds := make([]string, 0)
 	childClassifyMap := make(map[int]*material.MaterialClassify)
-	for _, tmp := range childList {
-		childClassifyMap[tmp.ClassifyId] = tmp
-		//获取字符串前缀的位置
-		after, _ := strings.CutPrefix(tmp.LevelPath, classifyInfo.LevelPath)
-		fmt.Println("after", after)
-		// 拼接字符串
-		if after != "" {
-			ids := strings.Split(after, ",")
-			for _, v := range ids {
-				if _, ok := classifyIdMap[v]; !ok {
-					classifyIds = append(classifyIds, v)
-					classifyIdMap[v] = struct{}{}
+	if classifyId > 0 {
+		classifyIds = append(classifyIds, strconv.Itoa(classifyId))
+		// 查询当前的分类
+		classifyInfo, err := material.GetMaterialClassifyById(classifyId)
+		if err != nil {
+			br.Msg = "分类不存在"
+			br.ErrMsg = "获取分类信息失败,Err:" + err.Error()
+			return
+		}
+		// 获取所有子分类
+		childList, e := material.GetMaterialClassifyByLevelPath(classifyInfo.LevelPath)
+		if e != nil {
+			err = fmt.Errorf("保存分类失败,Err:" + e.Error())
+			return
+		}
+		// 把原先的父级levePath,替换成最新的父级序列
+		classifyIdMap := make(map[string]struct{})
+		for _, tmp := range childList {
+			childClassifyMap[tmp.ClassifyId] = tmp
+			//获取字符串前缀的位置
+			after, _ := strings.CutPrefix(tmp.LevelPath, classifyInfo.LevelPath)
+			fmt.Println("after", after)
+			// 拼接字符串
+			if after != "" {
+				ids := strings.Split(after, ",")
+				for _, v := range ids {
+					if _, ok := classifyIdMap[v]; !ok {
+						classifyIds = append(classifyIds, v)
+						classifyIdMap[v] = struct{}{}
+					}
 				}
 			}
 		}
 	}
-	classifyIds = append(classifyIds, strconv.Itoa(classifyId))
+
 	if len(classifyIds) > 0 {
 		condition += " AND classify_id IN(" + utils.GetOrmInReplace(len(classifyIds)) + ") "
 		pars = append(pars, classifyIds)
@@ -843,11 +842,6 @@ func (this *MaterialController) List() {
 		return
 	}
 
-	for i, v := range list {
-		if classifyTmp, ok := childClassifyMap[v.ClassifyId]; ok {
-			list[i].ParentIds = classifyTmp.LevelPath
-		}
-	}
 	resp := new(material.MaterialListResp)
 	if list == nil || len(list) <= 0 || (err != nil && err.Error() == utils.ErrNoRow()) {
 		items := make([]*material.MaterialListItems, 0)

+ 1 - 1
models/material/material.go

@@ -152,7 +152,7 @@ type MaterialListItems struct {
 	Material
 	ModifyTime string `description:"修改时间"`
 	CreateTime string `description:"创建时间"`
-	ParentIds  string
+	//ParentIds  string
 }
 
 func GetMaterialListPageByCondition(condition string, pars []interface{}, startSize, pageSize int) (item []*MaterialListItems, err error) {