From d76b518341ec0644c3500555d5c4121bc30d581e Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期四, 31 七月 2025 09:24:09 +0800 Subject: [PATCH] 台账导入导出字段修改 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java | 68 ++++++++++++++++++++++++++++----- 1 files changed, 57 insertions(+), 11 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java index 111e961..159c091 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java @@ -562,7 +562,11 @@ */ @Override @Transactional(rollbackFor = Exception.class) - public Result<?> importPointInspectionExcel(MultipartFile file) { + public Result<?> importPointInspectionExcel(MultipartFile file,String id) { + EamMaintenanceStandard eamMaintenanceStandardOld=new EamMaintenanceStandard(); + if (StrUtil.isNotEmpty(id)){ + eamMaintenanceStandardOld=eamMaintenanceStandardMapper.selectById(id); + } try (Workbook workbook = WorkbookFactory.create(file.getInputStream())) { Sheet sheet = workbook.getSheetAt(0); @@ -577,14 +581,32 @@ eamMaintenanceStandard.setStandardName(name); - // 妫�鏌ラ噸澶� - EamMaintenanceStandard exist = checkDuplicate(eamMaintenanceStandard.getEquipmentId(), - eamMaintenanceStandard.getMaintenanceCategory(), MaintenanceStandardStatusEnum.ABOLISH.name()); - if (exist != null) { - return Result.error(name + ": 璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞"); + // 妫�鏌ラ噸澶�,鍙鍏ユ牎楠岋紝鍗囩増涓嶆牎楠� + if (StrUtil.isEmpty(id)){ + EamMaintenanceStandard exist = checkDuplicate(eamMaintenanceStandard.getEquipmentId(), + eamMaintenanceStandard.getMaintenanceCategory(), MaintenanceStandardStatusEnum.ABOLISH.name()); + if (exist != null) { + return Result.error(name + ": 璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞"); + } + } + if (eamMaintenanceStandardOld.getEquipmentId().equals(eamMaintenanceStandard.getEquipmentId()) + &&eamMaintenanceStandardOld.getMaintenanceCategory().equals(eamMaintenanceStandard.getMaintenanceCategory())) { + //鍗囩増鎿嶄綔锛屼綔搴熷師鏈� + eamMaintenanceStandardOld.setStandardStatus(MaintenanceStandardStatusEnum.ABOLISH.name()); + eamMaintenanceStandardMapper.updateById(eamMaintenanceStandard); + //鐗堟湰閫掑鑾峰彇鏁板瓧 + Pattern pattern = Pattern.compile("(\\d+)(?:\\.\\d+)*$"); + Matcher matcher = pattern.matcher(eamMaintenanceStandardOld.getStandardVersion()); + if (matcher.find()) { + try { + int mainVersion = Integer.parseInt(matcher.group(1)); + eamMaintenanceStandard.setStandardVersion("v" + (mainVersion + 1)); + } catch (NumberFormatException ignored) { + } + } } eamMaintenanceStandard.setInitialDate(new Date()); - eamMaintenanceStandardMapper.insert(eamMaintenanceStandard); + eamMaintenanceStandardMapper.insert(eamMaintenanceStandardOld); Map<Integer, String> rowErrors = new HashMap<>(); @@ -1094,7 +1116,7 @@ */ @Override @Transactional - public Result<?> importMaintenanceStandard(MultipartFile file, String type) { + public Result<?> importMaintenanceStandard(MultipartFile file, String type,String id) { String fileName = file.getOriginalFilename(); try (XWPFDocument doc = new XWPFDocument(file.getInputStream())) { @@ -1140,11 +1162,35 @@ return Result.error(fileName + ": 璁惧淇℃伅鎻愬彇澶辫触"); } + EamMaintenanceStandard eamMaintenanceStandardOld=new EamMaintenanceStandard(); + if (StrUtil.isNotEmpty(id)){ + eamMaintenanceStandardOld=eamMaintenanceStandardMapper.selectById(id); + } + // 閰嶇疆绫诲瀷鐩稿叧鍙傛暟 configureStandard(standard, type, file); - EamMaintenanceStandard exist = checkDuplicate(standard.getEquipmentId(), standard.getMaintenanceCategory(), MaintenanceStandardStatusEnum.ABOLISH.name()); - if (exist != null) { - return Result.error(fileName + ": 璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞"); + if (StrUtil.isEmpty(id)){ + EamMaintenanceStandard exist = checkDuplicate(standard.getEquipmentId(), standard.getMaintenanceCategory(), MaintenanceStandardStatusEnum.ABOLISH.name()); + if (exist != null) { + return Result.error(fileName + ": 璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞"); + } + } + + if (eamMaintenanceStandardOld.getEquipmentId().equals(standard.getEquipmentId()) + &&eamMaintenanceStandardOld.getMaintenanceCategory().equals(standard.getMaintenanceCategory())) { + //鍗囩増鎿嶄綔锛屼綔搴熷師鏈� + eamMaintenanceStandardOld.setStandardStatus(MaintenanceStandardStatusEnum.ABOLISH.name()); + eamMaintenanceStandardMapper.updateById(eamMaintenanceStandardOld); + //鐗堟湰閫掑鑾峰彇鏁板瓧 + Pattern pattern = Pattern.compile("(\\d+)(?:\\.\\d+)*$"); + Matcher matcher = pattern.matcher(eamMaintenanceStandardOld.getStandardVersion()); + if (matcher.find()) { + try { + int mainVersion = Integer.parseInt(matcher.group(1)); + standard.setStandardVersion("v" + (mainVersion + 1)); + } catch (NumberFormatException ignored) { + } + } } standard.setStandardName(documentTitle); eamMaintenanceStandardMapper.insert(standard); -- Gitblit v1.9.3