From 67ac603f410319a0d999e5f493c8ef2d74163fe1 Mon Sep 17 00:00:00 2001 From: Houjie <714924425@qq.com> Date: 星期一, 15 九月 2025 19:44:47 +0800 Subject: [PATCH] 保养标准:点检标准导入 点检名称修改/ 设备台账导入 --- src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java | 128 ++++++++++++++++++------------------------ 1 files changed, 56 insertions(+), 72 deletions(-) diff --git a/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java index 732defb..e696b47 100644 --- a/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java +++ b/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java @@ -16,7 +16,6 @@ import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.util.TranslateDictTextUtils; -import org.jeecg.modules.eam.constant.AssetStatusEnum; import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum; import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum; import org.jeecg.modules.eam.entity.EamEquipment; @@ -82,9 +81,7 @@ // @AutoLog(value = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ") @ApiOperation(value = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ", notes = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ") @GetMapping(value = "/list") - public Result<?> queryPageList(EamEquipmentQuery eamEquipment, - @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, - @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + public Result<?> queryPageList(EamEquipmentQuery eamEquipment, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { // QueryWrapper<EamEquipment> queryWrapper = QueryGenerator.initQueryWrapper(eamEquipment, req.getParameterMap()); IPage<EamEquipment> page = new Page<>(pageNo, pageSize); IPage<EamEquipment> pageList = eamEquipmentService.queryPageList(page, eamEquipment); @@ -181,7 +178,7 @@ return Result.error("鏈壘鍒板搴旀暟鎹�"); } EamEquipmentExtend extend = eamEquipmentExtendService.getById(id); - if(extend != null){ + if (extend != null) { eamEquipment.setRepairStatus(extend.getRepairStatus()); eamEquipment.setMaintenanceStatus(extend.getMaintenanceStatus()); } @@ -229,62 +226,54 @@ // 鑾峰彇涓婁紶鏂囦欢瀵硅薄 MultipartFile file = entity.getValue(); ImportParams params = new ImportParams(); - params.setTitleRows(0); - params.setHeadRows(1); - params.setNeedSave(true); + params.setHeadRows(1); // 璺宠繃绗�1琛岋紝浠庣2琛屽紑濮嬭鍙栧垪鍚� + params.setTitleRows(1); // 绗�1琛屼负鏍囬琛岋紙鍙�夛級 params.setStartSheetIndex(0); params.setSheetNum(1); try { List<EamEquipment> list = ExcelImportUtil.importExcel(file.getInputStream(), EamEquipment.class, params); - //update-begin-author:taoyan date:20190528 for:鎵归噺鎻掑叆鏁版嵁 long start = System.currentTimeMillis(); -// service.saveBatch(list); StringBuilder sb = new StringBuilder(); for (EamEquipment eamEquipment : list) { - //蹇呭~瀛楁鏍¢獙 + boolean isInvalid = false; + StringBuilder errorMsg = new StringBuilder(); + // 璁惧缂栧彿鍜岃澶囧悕绉版牎楠� if (StringUtils.isBlank(eamEquipment.getEquipmentCode()) || StringUtils.isBlank(eamEquipment.getEquipmentName())) { - sb.append(String.format("璁惧缂栫爜[%s]鎴栬澶囧悕绉癧%s]涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode(), eamEquipment.getEquipmentName())); - continue; + errorMsg.append(String.format("璁惧缂栫爜[%s]鎴栬澶囧悕绉颁负绌猴紝鏃犳硶瀵煎叆\n\n", eamEquipment.getEquipmentCode(), eamEquipment.getEquipmentName())); + isInvalid = true; } - if (StringUtils.isBlank(eamEquipment.getEquipmentCategory())) { - sb.append(String.format("璁惧缂栫爜[%s]璁惧鍒嗙被涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode())); - continue; + // 鎵�灞炰骇绾挎牎楠� + if (StringUtils.isBlank(eamEquipment.getOrgId())) { + errorMsg.append(String.format("璁惧缂栫爜[%s]鎵�灞炰骇绾夸负绌猴紝鏃犳硶瀵煎叆\n\n", eamEquipment.getEquipmentCode())); + isInvalid = true; } - if (StringUtils.isBlank(eamEquipment.getOrgId()) || StringUtils.isBlank(eamEquipment.getEquipmentManager())) { - sb.append(String.format("璁惧缂栫爜[%s]浣跨敤杞﹂棿鎴栬澶囩鐞嗗憳涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode())); - continue; - } -// if (eamEquipment.getAcceptanceCheckDate() == null) { -// sb.append(String.format("璁惧缂栫爜[%s]楠屾敹涓虹┖锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode())); -// continue; -// } -// if (StringUtils.isBlank(eamEquipment.getTechnologyStatus())) { -// sb.append(String.format("璁惧缂栫爜[%s]鎶�鏈姸鎬佷负绌猴紝鏃犳硶瀵煎叆\n\r", eamEquipment.getEquipmentCode())); -// continue; -// } + // 璁惧缂栫爜鍞竴鎬ф牎楠� EamEquipment one = eamEquipmentService.getOne(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getEquipmentCode, eamEquipment.getEquipmentCode()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0)); if (one != null) { - sb.append(String.format("璁惧缂栫爜[%s]宸插瓨鍦紝鏃犳硶閲嶅瀵煎叆\n\r", eamEquipment.getEquipmentCode())); + errorMsg.append(String.format("璁惧缂栫爜[%s]宸插瓨鍦紝鏃犳硶閲嶅瀵煎叆\n\r", eamEquipment.getEquipmentCode())); + isInvalid = true; + } + // 鏍¢獙涓嶉�氳繃锛岃褰曢敊璇苟璺宠繃瀵煎叆 + if (isInvalid) { + sb.append(errorMsg); continue; } + // 鏍¢獙閫氳繃锛屾墽琛屽鍏� if (!CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { eamEquipment.setMdcFlag(CommonConstant.DEFAULT_0); } EamEquipment equipment = eamEquipmentService.saveEquipment(eamEquipment); if (equipment == null) { - //淇濆瓨澶辫触锛岃烦杩囨湰娆″惊鐜� sb.append(String.format("璁惧缂栫爜[%s]淇濆瓨澶辫触锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode())); - continue; } - //璋冪敤mdcEquipment鎻掑叆MDC璁惧 -// if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { -// //鎻掑叆MDC璁惧 -// MdcEquipment mdcEquipment = new MdcEquipment(); -// mdcEquipment.setEquipmentId(eamEquipment.getEquipmentCode()); -// mdcEquipment.setEquipmentType(eamEquipment.getDeviceType()); -// mdcEquipment.setEquipmentName(eamEquipment.getEquipmentName()); -// mdcEquipmentService.addNewEquipmentFromEam(mdcEquipment, eamEquipment.getOrgId()); -// } + // MDC璁惧鐩稿叧閫昏緫锛堣嫢鏈夐渶瑕侊級 + // if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { + // MdcEquipment mdcEquipment = new MdcEquipment(); + // mdcEquipment.setEquipmentId(eamEquipment.getEquipmentCode()); + // mdcEquipment.setEquipmentType(eamEquipment.getDeviceType()); + // mdcEquipment.setEquipmentName(eamEquipment.getEquipmentName()); + // mdcEquipmentService.addNewEquipmentFromEam(mdcEquipment, eamEquipment.getOrgId()); + // } } //400鏉� saveBatch娑堣�楁椂闂�1592姣 寰幆鎻掑叆娑堣�楁椂闂�1947姣 //1200鏉� saveBatch娑堣�楁椂闂�3687姣 寰幆鎻掑叆娑堣�楁椂闂�5212姣 @@ -295,7 +284,7 @@ } return Result.ok("鏂囦欢瀵煎叆鎴愬姛锛佹暟鎹鏁帮細" + list.size()); } catch (Exception e) { - //update-begin-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず + String msg = e.getMessage(); log.error(msg, e); if (msg != null && msg.indexOf("Duplicate entry") >= 0) { @@ -303,7 +292,7 @@ } else { return Result.error("鏂囦欢瀵煎叆澶辫触:" + e.getMessage()); } - //update-end-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず + } finally { try { file.getInputStream().close(); @@ -315,32 +304,18 @@ return Result.error("鏂囦欢瀵煎叆澶辫触锛�"); } -// @ApiOperation(value = "璁惧琛�-閫氳繃杞﹂棿ids鑾峰彇璁惧鏍�", notes = "璁惧琛�-閫氳繃杞﹂棿ids鑾峰彇璁惧鏍�") -// @GetMapping(value = "/loadTreeListByProductionIds") -// public Result<List<EamEquipmentTree>> loadTreeListByProductionIds(@RequestParam(name = "ids", required = true) String ids) { -// Result<List<EamEquipmentTree>> result = new Result<>(); -// try { -// List<EamEquipmentTree> mdcEquipmentTreeList = eamEquipmentService.loadTreeListByProductionIds(ids); -// result.setSuccess(true); -// result.setResult(mdcEquipmentTreeList); -// } catch (Exception e) { -// log.error(e.getMessage(), e); -// } -// return result; -// } /** * 妫�绱㈣澶� - * @param keyword 鏌ヨ鍏抽敭璇� 璁惧缂栧彿锛岃澶囧悕绉版ā绯婂尮閰� + * + * @param keyword 鏌ヨ鍏抽敭璇� 璁惧缂栧彿锛岃澶囧悕绉版ā绯婂尮閰� * @param pageSize 涓�娆¤繑鍥炲灏戣褰� - * @param id 璁惧涓婚敭 + * @param id 璁惧涓婚敭 * @return */ @ApiOperation(value = "璁惧琛�-寮傛鍔犺浇璁惧鍒楄〃", notes = "璁惧琛�-寮傛鍔犺浇璁惧鍒楄〃") @GetMapping(value = "/asyncLoadEquipment") - public Result<?> asyncLoadEquipment(@RequestParam(name="keyword",required = false) String keyword, - @RequestParam(value = "pageSize", required = false, defaultValue = "20") Integer pageSize, - @RequestParam(name="id",required = false) String id) { + public Result<?> asyncLoadEquipment(@RequestParam(name = "keyword", required = false) String keyword, @RequestParam(value = "pageSize", required = false, defaultValue = "20") Integer pageSize, @RequestParam(name = "id", required = false) String id) { List<EquipmentSearchResult> resultList = eamEquipmentService.asyncLoadEquipment(keyword, pageSize, id); return Result.ok(resultList); } @@ -353,18 +328,27 @@ if (workOrder == null) { return Result.error("宸ュ崟涓嶅瓨鍦紒"); } - List<Map<String, Object>> equipmentMapList = eamEquipmentService.list(new LambdaQueryWrapper<EamEquipment>() - .eq(EamEquipment::getOrgId, workOrder.getFactoryId()) - .eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0) - .apply("NOT EXISTS (SELECT 1 FROM eam_inspection_order t WHERE t.equipment_id = eam_equipment.id AND t.work_order_id = {0})", orderId) - .apply("EXISTS (SELECT 1 FROM eam_maintenance_standard t WHERE t.equipment_id = eam_equipment.id AND t.del_flag = {0} " + - "AND t.standard_status = {1} AND t.maintenance_category = {2})", - CommonConstant.DEL_FLAG_0, MaintenanceStandardStatusEnum.NORMAL.name(), MaintenanceCategoryEnum.POINT_INSPECTION.name())) - .stream().map(e -> (Map<String, Object>) new HashMap<String, Object>() {{ - put("value", e.getId()); - put("label", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]"); - put("text", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]"); - }}).collect(Collectors.toList()); + List<Map<String, Object>> equipmentMapList = eamEquipmentService.list(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getOrgId, workOrder.getFactoryId()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0).apply("NOT EXISTS (SELECT 1 FROM eam_inspection_order t WHERE t.equipment_id = eam_equipment.id AND t.work_order_id = {0})", orderId).apply("EXISTS (SELECT 1 FROM eam_maintenance_standard t WHERE t.equipment_id = eam_equipment.id AND t.del_flag = {0} " + "AND t.standard_status = {1} AND t.maintenance_category = {2})", CommonConstant.DEL_FLAG_0, MaintenanceStandardStatusEnum.NORMAL.name(), MaintenanceCategoryEnum.POINT_INSPECTION.name())).stream().map(e -> (Map<String, Object>) new HashMap<String, Object>() {{ + put("value", e.getId()); + put("label", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]"); + put("text", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]"); + }}).collect(Collectors.toList()); + return Result.ok(equipmentMapList); + } + + @AutoLog(value = "鏌ヨ鎺掍骇宸ュ崟鎵�灞炰骇绾夸笅闇�瑕佸伐鑹虹偣妫�鐨勮澶囧垪琛�") + @ApiOperation(value = "鏌ヨ鎺掍骇宸ュ崟鎵�灞炰骇绾夸笅闇�瑕佸伐鑹虹偣妫�鐨勮澶囧垪琛�", notes = "鏌ヨ鎺掍骇宸ュ崟鎵�灞炰骇绾夸笅闇�瑕佸伐鑹虹偣妫�鐨勮澶囧垪琛�") + @GetMapping(value = "/listProductionLineProcessCheckEquipment") + public Result<?> listProductionLineProcessCheckEquipment(@RequestParam("orderId") String orderId) { + MesProductionWorkOrder workOrder = mesProductionWorkOrderService.getById(orderId); + if (workOrder == null) { + return Result.error("宸ュ崟涓嶅瓨鍦紒"); + } + List<Map<String, Object>> equipmentMapList = eamEquipmentService.list(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getOrgId, workOrder.getFactoryId()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0).apply("EXISTS (SELECT 1 FROM eam_equipment_process_parameters t WHERE t.equipment_id = eam_equipment.id)").apply("NOT EXISTS (SELECT 1 FROM eam_process_check t WHERE t.equipment_id = eam_equipment.id AND t.work_order_id = {0})", orderId)).stream().map(e -> (Map<String, Object>) new HashMap<String, Object>() {{ + put("value", e.getId()); + put("label", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]"); + put("text", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]"); + }}).collect(Collectors.toList()); return Result.ok(equipmentMapList); } } -- Gitblit v1.9.3