From 3091802b7b8f65fa26a208bbd03e56f00424b0a0 Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期三, 04 六月 2025 16:08:49 +0800
Subject: [PATCH] 工具管理-孔加工、车削、铣削、刀片、工具标识参数导入接口调整

---
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ParaCommonToolController.java |  218 ++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 170 insertions(+), 48 deletions(-)

diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ParaCommonToolController.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ParaCommonToolController.java
index 56e9c7e..b09c212 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ParaCommonToolController.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ParaCommonToolController.java
@@ -22,9 +22,8 @@
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.PmsUtil;
-import org.jeecg.modules.tms.entity.BaseTools;
-import org.jeecg.modules.tms.entity.ParaCommonTool;
-import org.jeecg.modules.tms.entity.ToolsClassify;
+import org.jeecg.modules.tms.entity.*;
+import org.jeecg.modules.tms.enums.AccuracyClass;
 import org.jeecg.modules.tms.service.IBaseToolsService;
 import org.jeecg.modules.tms.service.IParaCommonToolService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -32,6 +31,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.modules.tms.service.IToolsClassifyService;
+import org.jeecg.modules.tms.service.IToolsConfigPropertyService;
 import org.jeecg.modules.tms.utils.ExcelUtils;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
@@ -66,6 +66,8 @@
 	private IToolsClassifyService toolsClassifyService;
 	@Autowired
 	private IBaseToolsService baseToolsService;
+	@Autowired
+	private IToolsConfigPropertyService toolsConfigPropertyService;
 	
 	/**
 	 * 鍒嗛〉鍒楄〃鏌ヨ
@@ -210,84 +212,204 @@
 						continue;
 					}
 					dataLines++;
-					Cell cell1 = row.getCell(1);
-					if (cell1 == null || cell1.getCellType() == CellType.BLANK) {
-						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,涓�绾у垎绫诲悕绉颁负绌�! ");
+					Cell cell0 = row.getCell(0);
+					if (cell0 == null || cell0.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,鍒�鍏风紪鐮佷负绌�! ");
 						errorLines++;
 						continue;
 					}
-					Cell cell2 = row.getCell(2);
-					if (cell2 == null || cell2.getCellType() == CellType.BLANK) {
-						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,浜岀骇鍒嗙被鍚嶇О涓虹┖! ");
+					Cell cell1 = row.getCell(1);
+					if (cell1 == null || cell1.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,搴撲綅鍙蜂负绌�! ");
 						errorLines++;
 						continue;
 					}
 					Cell cell3 = row.getCell(3);
 					if (cell3 == null || cell3.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,涓�绾у垎绫诲悕绉颁负绌�! ");
+						errorLines++;
+						continue;
+					}
+
+					Cell cell4 = row.getCell(4);
+					if (cell4 == null || cell4.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,浜岀骇鍒嗙被鍚嶇О涓虹┖! ");
+						errorLines++;
+						continue;
+					}
+					Cell cell5 = row.getCell(5);
+					if (cell5 == null || cell5.getCellType() == CellType.BLANK) {
 						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,涓夌骇鍒嗙被鍚嶇О涓虹┖! ");
 						errorLines++;
 						continue;
 					}
-					Cell cell4 = row.getCell(4);
-					if (cell4 == null || cell4.getCellType() == CellType.BLANK) {
+					Cell cell6 = row.getCell(6);
+					if (cell6 == null || cell6.getCellType() == CellType.BLANK) {
 						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,鍥涚骇鍒嗙被鍚嶇О涓虹┖! ");
 						errorLines++;
 						continue;
 					}
-					Cell cell9 = row.getCell(9);
-					if (cell9 == null || cell9.getCellType() == CellType.BLANK) {
-						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,鍨嬪彿/鍥惧彿涓虹┖! ");
-						errorLines++;
-						continue;
-					}
-					//鏍规嵁鍥涚骇鍒嗙被鍚嶇О鍜屽瀷鍙�/鍥惧彿鏌ヨ宸ュ叿淇℃伅
-					List<ToolsClassify> toolClassifyList = toolsClassifyService.list(new LambdaQueryWrapper<ToolsClassify>()
-							.eq(ToolsClassify::getTypeName, ExcelUtils.getCellValueAsString(cell4))
+
+					ToolsClassify classify;
+					List<ToolsClassify> class1List = toolsClassifyService.list(new LambdaQueryWrapper<ToolsClassify>()
+							.eq(ToolsClassify::getTypeName, ExcelUtils.getCellValueAsString(cell3))
 							.eq(ToolsClassify::getStatus, CommonConstant.STATUS_1));
-					if (CollectionUtil.isEmpty(toolClassifyList)) {
-						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绯荤粺涓嶅瓨鍦ㄨ鍥涚骇鍒嗙被鍚嶇О! ");
+					if (CollectionUtil.isEmpty(class1List)) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绯荤粺涓嶅瓨鍦ㄨ涓�绾у垎绫诲悕绉�! ");
 						errorLines++;
 						continue;
 					} else {
-						ToolsClassify toolsClassify = toolClassifyList.get(0);
-						List<BaseTools> baseToolsList = baseToolsService.list(new LambdaQueryWrapper<BaseTools>()
-								.eq(BaseTools::getClassifyId, toolsClassify.getId())
-								.eq(BaseTools::getToolModel, ExcelUtils.getCellValueAsString(cell9)));
-						if (CollectionUtil.isEmpty(baseToolsList)) {
-							errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绯荤粺涓嶅瓨鍦ㄥ搴旂殑宸ュ叿淇℃伅! ");
+						ToolsClassify classify1 = class1List.get(0);
+						List<ToolsClassify> class2List = toolsClassifyService.list(new LambdaQueryWrapper<ToolsClassify>()
+								.eq(ToolsClassify::getParentId, classify1.getId())
+								.eq(ToolsClassify::getTypeName, ExcelUtils.getCellValueAsString(cell4))
+								.eq(ToolsClassify::getStatus, CommonConstant.STATUS_1));
+						if (CollectionUtil.isEmpty(class2List)) {
+							errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绯荤粺涓嶅瓨鍦ㄨ浜岀骇鍒嗙被鍚嶇О! ");
 							errorLines++;
 							continue;
 						} else {
-							BaseTools baseTools = baseToolsList.get(0);
-							List<ParaCommonTool> paraCommonToolList = paraCommonToolService.list(new LambdaQueryWrapper<ParaCommonTool>()
-									.eq(ParaCommonTool::getToolCode, baseTools.getId())
-									.eq(ParaCommonTool::getToolModel, ExcelUtils.getCellValueAsString(cell9)));
-							if (CollectionUtil.isEmpty(paraCommonToolList)) {
-								paraCommonTool.setClassifyId(toolsClassify.getId());
-								paraCommonTool.setToolCode(baseTools.getId());
-								paraCommonTool.setToolModel(ExcelUtils.getCellValueAsString(cell9));
+							ToolsClassify classify2 = class2List.get(0);
+							List<ToolsClassify> class3List = toolsClassifyService.list(new LambdaQueryWrapper<ToolsClassify>()
+									.eq(ToolsClassify::getParentId, classify2.getId())
+									.eq(ToolsClassify::getTypeName, ExcelUtils.getCellValueAsString(cell5))
+									.eq(ToolsClassify::getStatus, CommonConstant.STATUS_1));
+							if (CollectionUtil.isEmpty(class3List)) {
+								errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绯荤粺涓嶅瓨鍦ㄨ涓夌骇鍒嗙被鍚嶇О! ");
+								errorLines++;
+								continue;
 							} else {
-								paraCommonTool = paraCommonToolList.get(0);
+								ToolsClassify classify3 = class3List.get(0);
+								List<ToolsClassify> class4List = toolsClassifyService.list(new LambdaQueryWrapper<ToolsClassify>()
+										.eq(ToolsClassify::getParentId, classify3.getId())
+										.eq(ToolsClassify::getTypeName, ExcelUtils.getCellValueAsString(cell6))
+										.eq(ToolsClassify::getStatus, CommonConstant.STATUS_1));
+								if (CollectionUtil.isEmpty(class4List)) {
+									errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绯荤粺涓嶅瓨鍦ㄨ鍥涚骇鍒嗙被鍚嶇О! ");
+									errorLines++;
+									continue;
+								} else {
+									classify = class4List.get(0);
+									paraCommonTool.setClassifyId(classify.getId());
+								}
 							}
 						}
 					}
 
-					Cell cell0 = row.getCell(0);//搴忓彿(鎴栦紒涓氬唴鍘熶唬鐮�)
-					paraCommonTool.setSignCode(ExcelUtils.getCellValueAsString(cell0));
-					Cell cell5 = row.getCell(5);//鐗╁搧涓枃鍚嶇О
-					if (cell5 == null || cell5.getCellType() == CellType.BLANK) {
+					Cell cell2 = row.getCell(2);//搴忓彿(鎴栦紒涓氬唴鍘熶唬鐮�)
+					paraCommonTool.setSignCode(ExcelUtils.getCellValueAsString(cell2));
+					Cell cell7 = row.getCell(7);//鐗╁搧涓枃鍚嶇О
+					if (cell7 == null || cell7.getCellType() == CellType.BLANK) {
 						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,鐗╁搧涓枃鍚嶇О涓虹┖! ");
 						errorLines++;
 						continue;
 					} else {
-						paraCommonTool.setChineseName(ExcelUtils.getCellValueAsString(cell5));
+						paraCommonTool.setChineseName(ExcelUtils.getCellValueAsString(cell7));
 					}
-					Cell cell6 = row.getCell(6);//鐗╁搧澶栨枃鍚嶇О
-					paraCommonTool.setForeignLanguageName(ExcelUtils.getCellValueAsString(cell6));
-					Cell cell7 = row.getCell(7);//鏍囧噯绾у埆
-					paraCommonTool.setStandardLevel(ExcelUtils.getCellValueAsString(cell7));
-					Cell cell8 = row.getCell(8);//鏍囧噯鍙�
-					paraCommonTool.setStandardCode(ExcelUtils.getCellValueAsString(cell8));
+					Cell cell8 = row.getCell(8);//鐗╁搧澶栨枃鍚嶇О
+					paraCommonTool.setForeignLanguageName(ExcelUtils.getCellValueAsString(cell8));
+					Cell cell9 = row.getCell(9);//鏍囧噯绾у埆
+					paraCommonTool.setStandardLevel(ExcelUtils.getCellValueAsString(cell9));
+					Cell cell10 = row.getCell(10);//鏍囧噯鍙�
+					paraCommonTool.setStandardCode(ExcelUtils.getCellValueAsString(cell10));
+					Cell cell11 = row.getCell(11);
+					if (cell11 == null || cell11.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,鍨嬪彿/鍥惧彿涓虹┖! ");
+						errorLines++;
+						continue;
+					} else {
+						paraCommonTool.setToolModel(ExcelUtils.getCellValueAsString(cell11));
+					}
+					Cell cell12 = row.getCell(12);
+					String accuracyClassCode;
+					if (cell12 == null || cell12.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绮惧害绛夌骇涓虹┖! ");
+						errorLines++;
+						continue;
+					} else {
+						accuracyClassCode = AccuracyClass.getCodeFromValue(ExcelUtils.getCellValueAsString(cell12));
+						if (accuracyClassCode == null) {
+							errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,绮惧害绛夌骇涓嶇鍚堣姹�! ");
+							errorLines++;
+							continue;
+						}
+					}
+
+					BaseTools baseTools = new BaseTools()
+							.setToolCode(ExcelUtils.getCellValueAsString(cell0))
+							.setClassifyId(classify.getId())
+							.setSignCode(ExcelUtils.getCellValueAsString(cell2))
+							.setChineseName(ExcelUtils.getCellValueAsString(cell7))
+							.setForeignLanguageName(ExcelUtils.getCellValueAsString(cell8))
+							.setStandardLevel(ExcelUtils.getCellValueAsString(cell9))
+							.setStandardCode(ExcelUtils.getCellValueAsString(cell10))
+							.setToolModel(ExcelUtils.getCellValueAsString(cell11))
+							.setCurrentCode("0000")//褰撳墠缂栫爜鍒濆鍖�
+							.setParamaTableName("1")//1锛氶�氱敤鍙傛暟绫诲瀷
+							.setAccuracyClass(accuracyClassCode);
+
+					//鏍规嵁鍒�鍏风紪鐮併�佸瀷鍙�/鍥惧彿銆佸垎绫籭d鏌ヨ鍒�鍏蜂俊鎭�
+					List<BaseTools> toolsList = baseToolsService.list(new LambdaQueryWrapper<BaseTools>()
+							.eq(BaseTools::getToolCode, ExcelUtils.getCellValueAsString(cell0))
+							.eq(BaseTools::getClassifyId, classify.getId())
+							.eq(BaseTools::getToolModel, ExcelUtils.getCellValueAsString(cell11)));
+					if (CollectionUtil.isEmpty(toolsList)) {
+						//涓嶅瓨鍦ㄧ浉搴斿垁鍏凤紝鏂板
+						baseToolsService.save(baseTools);
+					} else {
+						//瀛樺湪鐩稿簲鍒�鍏凤紝鏇存柊
+						BaseTools tools = toolsList.get(0);
+						baseTools.setId(tools.getId());
+						baseToolsService.updateById(baseTools);
+					}
+
+					paraCommonTool.setToolCode(baseTools.getId());
+					ToolsConfigProperty configProperty = new ToolsConfigProperty()
+							.setChineseName(ExcelUtils.getCellValueAsString(cell7))
+							.setForeignLanguageName(ExcelUtils.getCellValueAsString(cell8))
+							.setStandardLevel(ExcelUtils.getCellValueAsString(cell9))
+							.setStandardCode(ExcelUtils.getCellValueAsString(cell10))
+							.setToolModel(ExcelUtils.getCellValueAsString(cell11))
+							.setPositionCode(ExcelUtils.getCellValueAsString(cell1))
+							.setApplicationType("1");//1:閫氱敤宸ュ叿绫诲瀷
+					//鏍规嵁鍒�鍏穒d銆佸垎绫籭d鏌ヨ閫氱敤鍙傛暟淇℃伅
+					List<ToolsConfigProperty> configPropertyList = toolsConfigPropertyService.list(new LambdaQueryWrapper<ToolsConfigProperty>()
+							.eq(ToolsConfigProperty::getToolCode, baseTools.getId())
+							.eq(ToolsConfigProperty::getClassifyId, classify.getId())
+							.eq(ToolsConfigProperty::getStatus, CommonConstant.STATUS_1));
+					if (CollectionUtil.isEmpty(configPropertyList)) {
+						//涓嶅瓨鍦ㄩ�氱敤鍙傛暟淇℃伅锛屾柊澧�
+						configProperty.setStatus(CommonConstant.STATUS_1);
+						configProperty.setToolCode(baseTools.getId());
+						configProperty.setClassifyId(classify.getId());
+						toolsConfigPropertyService.save(configProperty);
+					} else {
+						//瀛樺湪閫氱敤鍙傛暟淇℃伅锛屾洿鏂�
+						ToolsConfigProperty property = configPropertyList.get(0);
+						configProperty.setId(property.getId());
+						toolsConfigPropertyService.updateById(configProperty);
+					}
+
+					List<ParaCommonTool> paraCommonToolList = paraCommonToolService.list(new LambdaQueryWrapper<ParaCommonTool>()
+							.eq(ParaCommonTool::getToolCode, baseTools.getId())
+							.eq(ParaCommonTool::getClassifyId, classify.getId())
+							.eq(ParaCommonTool::getToolModel, ExcelUtils.getCellValueAsString(cell11)));
+					if (CollectionUtil.isNotEmpty(paraCommonToolList)) {
+						//瀛樺湪璇ラ�氱敤鍙傛暟淇℃伅锛屾洿鏂�
+						ParaCommonTool commonTool = paraCommonToolList.get(0);
+						paraCommonTool.setId(commonTool.getId());
+					}
+
+					Cell cell13 = row.getCell(13);//鍒�鍏锋潗鏂�
+					if (cell13 == null || cell13.getCellType() == CellType.BLANK) {
+						errorMessage.add("绗�" + currentRowNum + "琛岋紝鏁版嵁瀵煎叆澶辫触,鍒�鍏锋潗鏂欎负绌�! ");
+						errorLines++;
+						continue;
+					} else {
+						paraCommonTool.setToolMaterial(ExcelUtils.getCellValueAsString(cell13));
+					}
+					Cell cell14 = row.getCell(14);//闆朵欢鏉愭枡
+					paraCommonTool.setPartMaterial(ExcelUtils.getCellValueAsString(cell14));
 
 					paraCommonToolImportList.add(paraCommonTool);
 					successLines++;

--
Gitblit v1.9.3