From e180e3a496d6f29d3a3b34016400de9d997c6bd9 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 07 四月 2026 14:42:23 +0800
Subject: [PATCH] 省立同德满意度功能提交
---
smartor/src/main/java/com/smartor/service/impl/IvrLibaScriptAssortServiceImpl.java | 45 +++++++++++++++++++++++++++++++--------------
1 files changed, 31 insertions(+), 14 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/IvrLibaScriptAssortServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/IvrLibaScriptAssortServiceImpl.java
index e84d877..a527db5 100644
--- a/smartor/src/main/java/com/smartor/service/impl/IvrLibaScriptAssortServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/IvrLibaScriptAssortServiceImpl.java
@@ -3,6 +3,7 @@
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
+import com.smartor.common.PinYinUtil;
import com.smartor.domain.*;
import com.smartor.mapper.IvrLibaScriptAssortMapper;
import com.smartor.service.IIvrLibaScriptAssortService;
@@ -13,7 +14,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;
/**
@@ -85,6 +89,9 @@
} else {
ivrLibaScriptAssort.setSeqno(seqMax + 1);
}
+ if (ivrLibaScriptAssort.getIndexAssortName() != null && ivrLibaScriptAssort.getIndexAssortName().contains("婊℃剰搴�") && ivrLibaScriptAssort.getPid() != -1) {
+ ivrLibaScriptAssort.setType(PinYinUtil.getpy(ivrLibaScriptAssort.getIndexAssortName()));
+ }
i = ivrLibaScriptAssortMapper.insertIvrLibaScriptAssort(ivrLibaScriptAssort);
log.info("闂璇濇湳鍒嗙被搴撲竴绾ф爲鐨勪富閿�:{}", ivrLibaScriptAssort.getId());
@@ -122,6 +129,9 @@
@Override
public int updateIvrLibaScriptAssort(IvrLibaScriptAssort ivrLibaScriptAssort) {
ivrLibaScriptAssort.setUpdateTime(DateUtils.getNowDate());
+ if (ivrLibaScriptAssort.getIndexAssortName() != null && ivrLibaScriptAssort.getIndexAssortName().contains("婊℃剰搴�") && ivrLibaScriptAssort.getPid() != -1) {
+ ivrLibaScriptAssort.setType(PinYinUtil.getpy(ivrLibaScriptAssort.getIndexAssortName()));
+ }
return ivrLibaScriptAssortMapper.updateIvrLibaScriptAssort(ivrLibaScriptAssort);
}
@@ -178,22 +188,29 @@
@Override
public List<IvrLibaScriptAssortVO> selectIvrLibaScriptAssortList(IvrLibaScriptAssort ivrLibaScriptAssort) {
List<IvrLibaScriptAssort> ivrLibaScriptAssorts = ivrLibaScriptAssortMapper.selectIvrLibaScriptAssortList(ivrLibaScriptAssort);
- //灏唒id涓虹┖鐨勶紝杩囨护鎺�
- ivrLibaScriptAssorts = ivrLibaScriptAssorts.stream().filter(assort -> assort.getPid() == null).collect(Collectors.toList());
-
List<IvrLibaScriptAssortVO> ivrLibaScriptAssortVOS = DtoConversionUtils.sourceToTarget(ivrLibaScriptAssorts, IvrLibaScriptAssortVO.class);
- //閬嶅巻鏌ュ嚭鏉ョ殑鏁版嵁锛岄�氳繃 id=pid 鑾峰彇浠栦滑鐨勫瓙鏁版嵁
- for (IvrLibaScriptAssortVO ivrLibaScriptAssortVO : ivrLibaScriptAssortVOS) {
- if (ivrLibaScriptAssortVO.getPid() != null) {
- continue;
- }
- IvrLibaScriptAssort ivrLibaTargetAssort1 = new IvrLibaScriptAssort();
- ivrLibaTargetAssort1.setPid(ivrLibaScriptAssortVO.getId());
- List<IvrLibaScriptAssort> ivrLibaScriptAssorts1 = ivrLibaScriptAssortMapper.selectIvrLibaScriptAssortList(ivrLibaTargetAssort1);
- if (!Collections.isEmpty(ivrLibaScriptAssorts1)) {
- ivrLibaScriptAssortVO.setIvrLibaScriptAssortList(ivrLibaScriptAssorts1);
+
+ List<IvrLibaScriptAssortVO> rootList = new ArrayList<>();
+ Map<Long, IvrLibaScriptAssortVO> categoryMap = new HashMap<>();
+
+ // 寤虹珛id->瀵硅薄鐨勬槧灏�
+ for (IvrLibaScriptAssortVO category : ivrLibaScriptAssortVOS) {
+ categoryMap.put(category.getId(), category);
+ }
+
+ for (IvrLibaScriptAssortVO category : ivrLibaScriptAssortVOS) {
+ if (category.getPid() == null || category.getPid() == -1) {
+ // 椤跺眰鑺傜偣
+ rootList.add(category);
+ } else {
+ // 鎵惧埌鐖惰妭鐐癸紝骞舵坊鍔犲埌鍏跺瓙鑺傜偣鍒楄〃
+ IvrLibaScriptAssortVO parent = categoryMap.get(category.getPid());
+ if (parent != null) {
+ IvrLibaScriptAssort sc = DtoConversionUtils.sourceToTarget(category, IvrLibaScriptAssort.class);
+ parent.getIvrLibaScriptAssortList().add(sc);
+ }
}
}
- return ivrLibaScriptAssortVOS;
+ return rootList;
}
}
--
Gitblit v1.9.3