From c800257cb6c8b45e7edc20e2e9018cd90b230806 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期三, 09 七月 2025 19:50:00 +0800 Subject: [PATCH] art: 技术状态鉴定-基础代码生成 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java | 80 +++++++++++++-------------------------- 1 files changed, 27 insertions(+), 53 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 06054ef..ab2dd0c 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 @@ -127,9 +127,11 @@ List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService. list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId())); if(!CollectionUtils.isEmpty(baseFactoryUserList)){ - List<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toList()); - List<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList()); + Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet()); + Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet()); queryWrapper.in("e.factory_org_code", factoryCode); + } else { + return page; } } if(eamMaintenanceStandard != null) { @@ -181,7 +183,7 @@ //鍒犻櫎鏍囪 entity.setDelFlag(CommonConstant.DEL_FLAG_0); //閲嶅鎬ф牎楠� - EamMaintenanceStandard exist = checkDuplicate(entity.getEquipmentId(), entity.getMaintenanceCategory()); + EamMaintenanceStandard exist = checkDuplicate(entity.getEquipmentId(), entity.getMaintenanceCategory(),MaintenanceStandardStatusEnum.WAIT_SUBMIT.name()); if(exist != null){ throw new JeecgBootException("璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�"); } @@ -265,7 +267,7 @@ //鍒犻櫎鏍囪 newEntity.setDelFlag(CommonConstant.DEL_FLAG_0); //閲嶅鎬ф牎楠� - EamMaintenanceStandard exist = checkDuplicate(newEntity.getEquipmentId(), newEntity.getMaintenanceCategory()); + EamMaintenanceStandard exist = checkDuplicate(newEntity.getEquipmentId(), newEntity.getMaintenanceCategory(),MaintenanceStandardStatusEnum.WAIT_SUBMIT.name()); if(exist != null){ throw new JeecgBootException("璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�"); } @@ -286,12 +288,12 @@ } @Override - public EamMaintenanceStandard checkDuplicate(String equipmentId, String maintenanceCategory) { + public EamMaintenanceStandard checkDuplicate(String equipmentId, String maintenanceCategory,String standardStatus) { LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EamMaintenanceStandard::getEquipmentId, equipmentId); queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, maintenanceCategory); queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0); - queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.WAIT_SUBMIT.name()); + queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, standardStatus); queryWrapper.orderByDesc(EamMaintenanceStandard::getStandardVersion); List<EamMaintenanceStandard> list = eamMaintenanceStandardMapper.selectList(queryWrapper); @@ -567,6 +569,12 @@ } eamMaintenanceStandard.setStandardName(name); + + EamMaintenanceStandard exist = checkDuplicate(eamMaintenanceStandard.getEquipmentId(), eamMaintenanceStandard.getMaintenanceCategory(),MaintenanceStandardStatusEnum.START.name()); + if(exist != null){ + return Result.error(name + ": 璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞"); + } + eamMaintenanceStandardMapper.insert(eamMaintenanceStandard); // 2. 鎻愬彇姣忔棩鐐规椤圭洰 @@ -932,6 +940,7 @@ /*瀵煎叆鐐规鏂囦欢Excel--------------------------缁撴潫*/ /*瀵煎叆浜屼繚涓変繚鏂囦欢Excel--------------------------寮�濮�*/ + /** * 缁熶竴淇濆吇瑙勮寖瀵煎叆鍏ュ彛 * @param file 涓婁紶鏂囦欢 @@ -951,7 +960,6 @@ List<XWPFTable> tables = doc.getTables(); EamMaintenanceStandard standard = null; - boolean firstTableProcessed = false; List<EamMaintenanceStandardDetail> items = new ArrayList<>(); String standardId = null; @@ -967,13 +975,17 @@ } // 鎻愬彇璁惧淇℃伅 - standard = extractDeviceInfo(table); + standard = extractDeviceInfo(table,type); if (standard == null) { return Result.error(fileName + ": 璁惧淇℃伅鎻愬彇澶辫触"); } // 閰嶇疆绫诲瀷鐩稿叧鍙傛暟 configureStandard(standard, type, file); + EamMaintenanceStandard exist = checkDuplicate(standard.getEquipmentId(), standard.getMaintenanceCategory(),MaintenanceStandardStatusEnum.START.name()); + if(exist != null){ + return Result.error(fileName + ": 璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞"); + } eamMaintenanceStandardMapper.insert(standard); standardId = standard.getId(); @@ -984,8 +996,7 @@ items.addAll(extractThirdMaintenanceItems(table, standardId, true)); } - firstTableProcessed = true; - } else if (firstTableProcessed) { // 鍚庣画椤甸潰 + } else { // 鍚庣画椤甸潰 // 鎻愬彇鍚庣画椤甸潰鐨勪繚鍏婚」鐩� if ("SECOND".equals(type)) { items.addAll(extractSecondMaintenanceItems(table, standardId, false)); @@ -1173,7 +1184,7 @@ } else if (cellContents.size() == 1) { // 鍗曞垪妯″紡锛氳涓哄唴瀹� item.setItemName(cellContents.get(0)); - } else if (cellContents.isEmpty() && !isRowEmpty(row)) { + } else if (!isRowEmpty(row)) { // 鐗规畩澶勭悊锛氳闈炵┖浣嗘病鏈夋彁鍙栧埌鍐呭锛堝彲鑳芥槸澶嶆潅鍚堝苟鍗曞厓鏍硷級 // 灏濊瘯鎻愬彇鏁磋鏂囨湰浣滀负鍐呭 StringBuilder content = new StringBuilder(); @@ -1257,7 +1268,7 @@ /** * 鎻愬彇璁惧鍩烘湰淇℃伅 */ - private EamMaintenanceStandard extractDeviceInfo(XWPFTable table) { + private EamMaintenanceStandard extractDeviceInfo(XWPFTable table,String type) { if (table.getNumberOfRows() < 2) return null; // 鎻愬彇鍓嶄袱琛屾暟鎹� @@ -1279,15 +1290,15 @@ }else { standard.setEquipmentId(equipments.getId()); } + if (type.equals("THIRD")){ + EamEquipmentExtend eamEquipmentExtend=eamEquipmentExtendService.getById(standard.getEquipmentId()); + standard.setMaintenancePeriod(eamEquipmentExtend.getThirdMaintenancePeriod()); + } } return standard; } - // 绠�鏄撶増瀛楃涓查潪绌哄垽鏂� - private boolean isNotBlank(String str) { - return str != null && !str.trim().isEmpty(); - } /** * 琛ㄦ牸琛屾暟鎹В鏋� @@ -1371,21 +1382,6 @@ } /** - * 鍒涘缓淇濆吇椤圭洰 - */ - private EamMaintenanceStandardDetail createItem( - EamMaintenanceStandardDetailCategory category, - String content, - String standardId) { - - EamMaintenanceStandardDetail item = new EamMaintenanceStandardDetail(); - item.setItemCategory(category.name()); - item.setStandardId(standardId); - item.setItemName(cleanContent(content)); - return item; - } - - /** * 鍏煎鐗堝崟鍏冩牸鏂囨湰鎻愬彇 */ private String getCellText(XWPFTableCell cell) { @@ -1405,28 +1401,6 @@ } } return text.toString(); - } - - /** - * 鍐呭娓呯悊 - */ - private String cleanContent(String text) { - if (text == null) return ""; - - // 鏇挎崲鐗规畩绌烘牸鍜屽悎骞惰繛缁┖鏍� - text = text.replace('\u00A0', ' ') - .replace('\u2007', ' ') - .replace('\u202F', ' ') - .replaceAll("\\s+", " "); - - // 瑙勮寖鏍囩偣绗﹀彿 - return text.replace(',', '銆�') - .replace('锛�', '銆�') - .replace(';', '锛�') - .replace('锛�', '锛�') - .replace(':', '锛�') - .replace('锛�', '锛�') - .trim(); } /** -- Gitblit v1.9.3