From fe47ff909096722ba8e9172c3e1f0f7910b16909 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期二, 21 十月 2025 14:49:18 +0800
Subject: [PATCH] 结束出院日期格式
---
smartor/src/main/java/com/smartor/service/impl/SvyCategoryServiceImpl.java | 37 ++++++++++++++++++++++++-------------
1 files changed, 24 insertions(+), 13 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/SvyCategoryServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/SvyCategoryServiceImpl.java
index ccb7ed3..eaaccc6 100644
--- a/smartor/src/main/java/com/smartor/service/impl/SvyCategoryServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/SvyCategoryServiceImpl.java
@@ -16,7 +16,10 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -51,23 +54,31 @@
@Override
public List<SvyCategoryVO> selectSvyCategoryList(SvyCategory svyCategory) {
List<SvyCategory> svyCategories = svyCategoryMapper.selectSvyCategoryList(svyCategory);
- //灏唒id涓虹┖鐨勶紝杩囨护鎺�
-// svyCategories = svyCategories.stream().filter(assort -> assort.getPid() == null).collect(Collectors.toList());
List<SvyCategoryVO> svyCategoryVOS = DtoConversionUtils.sourceToTarget(svyCategories, SvyCategoryVO.class);
- //閬嶅巻鏌ュ嚭鏉ョ殑鏁版嵁锛岄�氳繃 id=pid 鑾峰彇浠栦滑鐨勫瓙鏁版嵁
- for (SvyCategoryVO svyCategoryVO : svyCategoryVOS) {
-// if (svyCategoryVO.getPid() != null) {
-// continue;
-// }
- SvyCategory svyCategory1 = new SvyCategory();
- svyCategory1.setPid(svyCategoryVO.getId());
- List<SvyCategory> svyCategoryList = svyCategoryMapper.selectSvyCategoryList(svyCategory1);
- if (!Collections.isEmpty(svyCategoryList)) {
- svyCategoryVO.setSvyCategoryList(svyCategoryList);
+
+ List<SvyCategoryVO> rootList = new ArrayList<>();
+ Map<Long, SvyCategoryVO> categoryMap = new HashMap<>();
+
+ // 寤虹珛id->瀵硅薄鐨勬槧灏�
+ for (SvyCategoryVO category : svyCategoryVOS) {
+ categoryMap.put(category.getId(), category);
+ }
+
+ for (SvyCategoryVO category : svyCategoryVOS) {
+ if (category.getPid() == null || category.getPid() == -1) {
+ // 椤跺眰鑺傜偣
+ rootList.add(category);
+ } else {
+ // 鎵惧埌鐖惰妭鐐癸紝骞舵坊鍔犲埌鍏跺瓙鑺傜偣鍒楄〃
+ SvyCategoryVO parent = categoryMap.get(category.getPid());
+ if (parent != null) {
+ SvyCategory sc = DtoConversionUtils.sourceToTarget(category, SvyCategory.class);
+ parent.getSvyCategoryList().add(sc);
+ }
}
}
- return svyCategoryVOS;
+ return rootList;
}
/**
--
Gitblit v1.9.3