From 9bad721754fe8bbe2e5f459d0706e0fefac569f3 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期日, 20 九月 2026 09:05:41 +0800
Subject: [PATCH] feat(mes): 添加智能质检报告功能与AI导入能力
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/indicator/MesQcIndicatorController.java | 37 ++++++++++++++++++++++++++++++++++---
1 files changed, 34 insertions(+), 3 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/indicator/MesQcIndicatorController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/indicator/MesQcIndicatorController.java
index 14f49fe..b7d2e0b 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/indicator/MesQcIndicatorController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/indicator/MesQcIndicatorController.java
@@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.mes.controller.admin.qc.indicator;
+import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
@@ -23,9 +24,13 @@
import java.io.IOException;
import java.util.List;
+import java.util.Map;
+import java.util.Set;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap;
+import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
@Tag(name = "绠$悊鍚庡彴 - MES 璐ㄦ鎸囨爣")
@RestController
@@ -74,7 +79,17 @@
@PreAuthorize("@ss.hasPermission('mes:qc-indicator:query')")
public CommonResult<PageResult<MesQcIndicatorRespVO>> getIndicatorPage(@Valid MesQcIndicatorPageReqVO pageReqVO) {
PageResult<MesQcIndicatorDO> pageResult = indicatorService.getIndicatorPage(pageReqVO);
- return success(BeanUtils.toBean(pageResult, MesQcIndicatorRespVO.class));
+ PageResult<MesQcIndicatorRespVO> voPageResult = BeanUtils.toBean(pageResult, MesQcIndicatorRespVO.class);
+ fillParentName(voPageResult.getList());
+ return success(voPageResult);
+ }
+
+ @GetMapping("/group-list")
+ @Operation(summary = "鑾峰緱鍒嗙粍椤圭簿绠�鍒楄〃", description = "鍙寘鍚垎缁勯」锛屼富瑕佺敤浜庛�屾墍灞炲垎缁勩�嶇殑涓嬫媺閫夐」")
+ @PreAuthorize("@ss.hasPermission('mes:qc-indicator:query')")
+ public CommonResult<List<MesQcIndicatorRespVO>> getIndicatorGroupList() {
+ List<MesQcIndicatorDO> list = indicatorService.getIndicatorGroupList();
+ return success(BeanUtils.toBean(list, MesQcIndicatorRespVO.class));
}
@GetMapping("/export-excel")
@@ -85,9 +100,25 @@
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<MesQcIndicatorDO> list = indicatorService.getIndicatorPage(pageReqVO).getList();
+ // 缁勮瀵煎嚭 VO锛堣ˉ榻愭墍灞炲垎缁勫悕绉帮級
+ List<MesQcIndicatorRespVO> excelList = BeanUtils.toBean(list, MesQcIndicatorRespVO.class);
+ fillParentName(excelList);
// 瀵煎嚭 Excel
- ExcelUtils.write(response, "璐ㄦ鎸囨爣.xls", "鏁版嵁", MesQcIndicatorRespVO.class,
- BeanUtils.toBean(list, MesQcIndicatorRespVO.class));
+ ExcelUtils.write(response, "璐ㄦ鎸囨爣.xls", "鏁版嵁", MesQcIndicatorRespVO.class, excelList);
+ }
+
+ /**
+ * 鍥炲~銆屾墍灞炲垎缁勩�嶅悕绉般�傜埗鎸囨爣鍙兘涓嶅湪褰撳墠椤碉紙鐢氳嚦涓嶅湪绛涢�夌粨鏋滃唴锛夛紝鎵�浠ュ崟鐙寜 id 鎵归噺鍙栦竴娆�
+ */
+ private void fillParentName(List<MesQcIndicatorRespVO> list) {
+ Set<Long> parentIds = convertSet(list, MesQcIndicatorRespVO::getParentId,
+ vo -> vo.getParentId() != null && !MesQcIndicatorDO.PARENT_ID_ROOT.equals(vo.getParentId()));
+ if (CollUtil.isEmpty(parentIds)) {
+ return;
+ }
+ Map<Long, String> parentNameMap = convertMap(indicatorService.getIndicatorList(parentIds),
+ MesQcIndicatorDO::getId, MesQcIndicatorDO::getName);
+ list.forEach(vo -> vo.setParentName(parentNameMap.get(vo.getParentId())));
}
}
--
Gitblit v1.9.3