From cb7eb6fa3477e624f7112a2eac632783b96bf4b4 Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期一, 15 一月 2024 16:19:35 +0800 Subject: [PATCH] 点检标准 多sheet页导入 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java | 238 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 155 insertions(+), 83 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java index 3606d73..5efd33a 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java @@ -21,6 +21,7 @@ import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.eam.entity.*; +import org.jeecg.modules.eam.model.MaintenanceCycleVo; import org.jeecg.modules.eam.service.*; import org.jeecgframework.poi.excel.entity.ImportParams; import org.springframework.beans.factory.annotation.Autowired; @@ -136,12 +137,22 @@ /** - * 鏃ュ父淇濆吇宸ュ崟鍒涘缓 缁勪欢閫氳繃浣跨敤閮ㄩ棬杩囨护鑾峰彇淇濆吇鏍囧噯 + * 浜屼繚 缁勪欢閫氳繃浣跨敤閮ㄩ棬杩囨护鑾峰彇淇濆吇鏍囧噯 * qsw 2023-4-26 */ @GetMapping("getMaintenanceStandard2List") public Result<?> getMaintenanceStandard2List(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) { IPage<Map<String, Object>> maintenanceStandardList = maintenanceStandardService.getMaintenanceStandard2List(pageNo, pageSize, params); + return Result.ok(maintenanceStandardList); + } + + /** + * 涓変繚 缁勪欢閫氳繃浣跨敤閮ㄩ棬杩囨护鑾峰彇淇濆吇鏍囧噯 + * qsw 2023-12-12 + */ + @GetMapping("getMaintenanceStandard3List") + public Result<?> getMaintenanceStandard3List(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) { + IPage<Map<String, Object>> maintenanceStandardList = maintenanceStandardService.getMaintenanceStandard3List(pageNo, pageSize, params); return Result.ok(maintenanceStandardList); } @@ -158,11 +169,29 @@ @Transactional(rollbackFor = {Exception.class}) public Result<String> add(@RequestBody MaintenanceStandard maintenanceStandard) { // maintenanceStandard.setType("daily"); + + String maintenanceType = maintenanceStandard.getMaintenanceType(); + String equipmentId = maintenanceStandard.getEquipmentId(); + List<MaintenanceStandard> maintenanceStandards = maintenanceStandardService.lambdaQuery() + .eq(MaintenanceStandard::getEquipmentId, equipmentId) + .eq(MaintenanceStandard::getMaintenanceType, maintenanceType) + .eq(MaintenanceStandard::getDelFlag, "0") + .eq(MaintenanceStandard::getVersionStatus, "2").list(); + if(maintenanceStandards.size() > 0){ + return Result.error("淇濆吇鏍囧噯宸插瓨鍦ㄤ笉鍏佽閲嶅鎻愪氦锛�"); + } LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); maintenanceStandard.setWritePerson(sysUser.getRealname()); + maintenanceStandard.setAssignMode("1"); maintenanceStandardService.save(maintenanceStandard); + + Equipment equipment = equipmentService.getById(maintenanceStandard.getEquipmentId()); + List<MaintenanceCycleVo> maintenanceCycle = maintenanceStandardService.getPeriodicMaintenanceCycle(equipment.getEquipmentImportanceId(), maintenanceStandard.getMaintenanceType()); List<MaintenanceStandardDetail> maintenanceStandardDetaillist = maintenanceStandard.getMaintenanceStandardDetaillist(); for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetaillist) { + if(maintenanceCycle.size() > 0){ + maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.get(0).getValue()); + } maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId()); maintenanceStandardDetail.setPhoto(maintenanceStandardDetail.getPhoto()); maintenanceStandardDetailService.saveOrUpdate(maintenanceStandardDetail); @@ -190,8 +219,13 @@ maintenanceStandardDetailService.updateById(dailyInspectionStandardDetail); } //2.閲嶆柊鎸佷箙淇濆吇椤圭洰 + Equipment equipment = equipmentService.getById(maintenanceStandard.getEquipmentId()); + List<MaintenanceCycleVo> maintenanceCycle = maintenanceStandardService.getPeriodicMaintenanceCycle(equipment.getEquipmentImportanceId(), maintenanceStandard.getMaintenanceType()); List<MaintenanceStandardDetail> maintenanceStandardDetails = maintenanceStandard.getMaintenanceStandardDetaillist(); for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetails) { + if(maintenanceCycle.size() > 0){ + maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.get(0).getValue()); + } maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId()); maintenanceStandardDetailService.saveOrUpdate(maintenanceStandardDetail); } @@ -302,14 +336,18 @@ equipmentNum =cellEquipmentNum.getText(); equipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentNum).eq("del_flag",0),false); if(ObjectUtils.isNotNull(equipment)){ - maintenanceStandard = maintenanceStandardService.getOne(new QueryWrapper<MaintenanceStandard>().eq("version_status",2).eq("del_flag",0).eq("equipment_id",equipment.getId()),false); + maintenanceStandard = maintenanceStandardService.getOne(new QueryWrapper<MaintenanceStandard>().eq("maintenance_type","2").eq("version_status","2").eq("del_flag",0).eq("equipment_id",equipment.getId()),false); if(ObjectUtils.isNull(maintenanceStandard)){ maintenanceStandard = new MaintenanceStandard(); maintenanceStandard.setNum(sysIdentityService.getNumByTypeAndLength("DailyMaintenanceStandard",4)); maintenanceStandard.setEquipmentId(equipment.getId()); maintenanceStandard.setAssignMode("1"); maintenanceStandard.setVersion("1.0"); + maintenanceStandard.setType("daily"); + maintenanceStandard.setMaintenanceType("2"); maintenanceStandard.setVersionStatus("2"); + maintenanceStandard.setDelFlag(0); + maintenanceStandard.setApprovalStatus("5"); maintenanceStandardService.save(maintenanceStandard); } else { @@ -327,11 +365,17 @@ else { continue; } + String role0 = ""; for (XWPFTableRow row : table.getRows()) { XWPFTableCell cell0 = row.getCell(0); XWPFTableCell cell2 = row.getCell(2); - if(rowNumber>3){ - String role = getMergedCellValue(cell0); + if(rowNumber>1){ + String role = cell0.getText(); + if(StringUtils.isNotBlank(role)){ + role0=role; + } + } + if(rowNumber>2){ String projectName = cell2.getText(); MaintenanceStandardDetail maintenanceStandardDetail = new MaintenanceStandardDetail(); MaintenanceProjectCategory maintenanceProjectCategory = maintenanceProjectCategoryService.getOne(new QueryWrapper<MaintenanceProjectCategory>().eq("name","浜岀骇淇濆吇").eq("del_flag",0),false); @@ -347,14 +391,110 @@ maintenanceProjectService.save(maintenanceProject); } maintenanceStandardDetail.setMaintenanceProjectId(maintenanceProject.getId()); - if(role.equals("缁翠慨浜哄憳淇濆吇鍐呭")){ + if(role0.equals("缁翠慨浜哄憳淇濆吇鍐呭")){ maintenanceStandardDetail.setMaintenanceRole("maintenance"); - } else if(role.equals("鎿嶄綔浜哄憳淇濆吇鍐呭")){ + } else if(role0.equals("鎿嶄綔浜哄憳淇濆吇鍐呭")){ maintenanceStandardDetail.setMaintenanceRole("operator"); } if(ObjectUtils.isNotNull(maintenanceCycle)){ maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.getId()); } + maintenanceStandardDetail.setDelFlag(0); + maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId()); + maintenanceStandardDetailService.save(maintenanceStandardDetail); + + } + + } + rowNumber++; + } + } + } + if(mainTitle.equals("鐢熶骇璁惧涓夌骇淇濆吇瑙勮寖")){ + + for (XWPFTable table : document.getTables()) { + // 閬嶅巻琛ㄦ牸涓殑鎵�鏈夎 + int rowNumber = 0; + String equipmentNum = ""; + Equipment equipment = null; + MaintenanceStandard maintenanceStandard = null; + MaintenanceCycle maintenanceCycle = null; + XWPFTableRow row0= table.getRow(0); + if(ObjectUtils.isNotNull(row0)){ + XWPFTableCell cellEquipmentNum = row0.getCell(3); + if(ObjectUtils.isNotNull(cellEquipmentNum)){ + equipmentNum =cellEquipmentNum.getText(); + equipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentNum).eq("del_flag",0),false); + if(ObjectUtils.isNotNull(equipment)){ + maintenanceStandard = maintenanceStandardService.getOne(new QueryWrapper<MaintenanceStandard>().eq("maintenance_type","3").eq("version_status",2).eq("del_flag",0).eq("equipment_id",equipment.getId()),false); + String abc = equipment.getEquipmentImportanceId(); + if(StringUtils.isNotBlank(abc)){ + if(abc.equals("A")){ + maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","3骞�").eq("version_status",2).eq("del_flag",0),false); + }else { + maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","4骞�").eq("version_status",2).eq("del_flag",0),false); + } + } + else{ + return Result.error("瀵煎叆澶辫触锛岃璁惧娌℃湁缁存姢ABC鏍囪瘑"); + } + if(ObjectUtils.isNull(maintenanceStandard)){ + maintenanceStandard = new MaintenanceStandard(); + maintenanceStandard.setNum(sysIdentityService.getNumByTypeAndLength("DailyMaintenanceStandard",4)); + maintenanceStandard.setEquipmentId(equipment.getId()); + maintenanceStandard.setAssignMode("1"); + maintenanceStandard.setVersion("1.0"); + maintenanceStandard.setVersionStatus("2"); + maintenanceStandard.setType("daily"); + maintenanceStandard.setMaintenanceType("3"); + maintenanceStandard.setApprovalStatus("5"); + maintenanceStandardService.save(maintenanceStandard); + } + else { + continue; + } + } + else { + continue; + } + } + else { + continue; + } + } + else { + continue; + } + String location0 = ""; + for (XWPFTableRow row : table.getRows()) { + XWPFTableCell cell0 = row.getCell(0); + XWPFTableCell cell1 = row.getCell(1); + XWPFTableCell cell2 = row.getCell(2); + if(rowNumber>2){ + String location = cell0.getText(); + if(StringUtils.isNotBlank(location)){ + location0=location; + } + String projectName = cell1.getText(); + String projectStandard = cell2.getText(); + MaintenanceStandardDetail maintenanceStandardDetail = new MaintenanceStandardDetail(); + MaintenanceProjectCategory maintenanceProjectCategory = maintenanceProjectCategoryService.getOne(new QueryWrapper<MaintenanceProjectCategory>().eq("name","涓夌骇淇濆吇").eq("del_flag",0),false); + if(ObjectUtils.isNotNull(maintenanceProjectCategory)){ + MaintenanceProject maintenanceProject = maintenanceProjectService.getOne(new QueryWrapper<MaintenanceProject>().eq("name",projectName).eq("standard",projectStandard).eq("del_flag",0).eq("maintenance_project_category_id",maintenanceProjectCategory.getId()),false); + if (!ObjectUtils.isNotNull(maintenanceProject)) { + maintenanceProject = new MaintenanceProject(); + maintenanceProject.setNum(sysIdentityService.getNumByTypeAndLength("MainOfTwo", 4)); + maintenanceProject.setName(projectName); + maintenanceProject.setStandard(projectStandard); + maintenanceProject.setLocation(location0); + maintenanceProject.setMaintenanceProjectCategoryId(maintenanceProjectCategory.getId()); + maintenanceProject.setDelFlag(0); + maintenanceProjectService.save(maintenanceProject); + } + maintenanceStandardDetail.setMaintenanceProjectId(maintenanceProject.getId()); + maintenanceStandardDetail.setLocation(location0); + maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.getId()); + maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId()); maintenanceStandardDetailService.save(maintenanceStandardDetail); } @@ -363,6 +503,7 @@ } } } + return Result.OK("瀵煎叆鎴愬姛"); } else { System.out.println("鏃犳硶瑙f瀽璇ユ枃浠�"); } @@ -398,83 +539,7 @@ if (mainTitleParagraph != null) { // 鑾峰彇涓绘爣棰樻枃鏈唴瀹� String mainTitle = mainTitleParagraph.getText(); - if(mainTitle.equals("鐢熶骇璁惧涓夌骇淇濆吇瑙勮寖")){ - for (XWPFTable table : document.getTables()) { - // 閬嶅巻琛ㄦ牸涓殑鎵�鏈夎 - int rowNumber = 0; - String equipmentNum = ""; - Equipment equipment = null; - MaintenanceStandard maintenanceStandard = null; - XWPFTableRow row0= table.getRow(0); - if(ObjectUtils.isNotNull(row0)){ - XWPFTableCell cellEquipmentNum = row0.getCell(3); - if(ObjectUtils.isNotNull(cellEquipmentNum)){ - equipmentNum =cellEquipmentNum.getText(); - equipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentNum).eq("del_flag",0),false); - if(ObjectUtils.isNotNull(equipment)){ - maintenanceStandard = maintenanceStandardService.getOne(new QueryWrapper<MaintenanceStandard>().eq("version_status",2).eq("del_flag",0).eq("equipment_id",equipment.getId()),false); - if(ObjectUtils.isNull(maintenanceStandard)){ - maintenanceStandard = new MaintenanceStandard(); - maintenanceStandard.setNum(sysIdentityService.getNumByTypeAndLength("DailyMaintenanceStandard",4)); - maintenanceStandard.setEquipmentId(equipment.getId()); - maintenanceStandard.setAssignMode("1"); - maintenanceStandard.setVersion("1.0"); - maintenanceStandard.setVersionStatus("2"); - maintenanceStandardService.save(maintenanceStandard); - } - else { - continue; - } - } - else { - continue; - } - } - else { - continue; - } - } - else { - continue; - } - for (XWPFTableRow row : table.getRows()) { - XWPFTableCell cell0 = row.getCell(0); - XWPFTableCell cell1 = row.getCell(1); - XWPFTableCell cell2 = row.getCell(2); - if(rowNumber>2){ - String location = getMergedCellValue(cell0); - String projectName = cell1.getText(); - String projectStandard = cell2.getText(); - MaintenanceStandardDetail maintenanceStandardDetail = new MaintenanceStandardDetail(); - MaintenanceProjectCategory maintenanceProjectCategory = maintenanceProjectCategoryService.getOne(new QueryWrapper<MaintenanceProjectCategory>().eq("name","涓夌骇淇濆吇").eq("del_flag",0),false); - if(ObjectUtils.isNotNull(maintenanceProjectCategory)){ - MaintenanceProject maintenanceProject = maintenanceProjectService.getOne(new QueryWrapper<MaintenanceProject>().eq("name",projectName).eq("standard",projectStandard).eq("del_flag",0).eq("maintenance_project_category_id",maintenanceProjectCategory.getId()),false); - MaintenanceCycle maintenanceCycle = null; - if(equipment.getEquipmentImportanceId().equals("A")){ - maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","3骞�").eq("version_status",2).eq("del_flag",0),false); - }else { - maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","4骞�").eq("version_status",2).eq("del_flag",0),false); - } - if (!ObjectUtils.isNotNull(maintenanceProject)) { - maintenanceProject = new MaintenanceProject(); - maintenanceProject.setNum(sysIdentityService.getNumByTypeAndLength("MainOfTwo", 4)); - maintenanceProject.setName(projectName); - maintenanceProject.setLocation(location); - maintenanceProject.setMaintenanceProjectCategoryId(maintenanceProjectCategory.getId()); - maintenanceProject.setDelFlag(0); - maintenanceProjectService.save(maintenanceProject); - } - maintenanceStandardDetail.setMaintenanceProjectId(maintenanceProject.getId()); - maintenanceStandardDetail.setLocation(location); - maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.getId()); - maintenanceStandardDetailService.save(maintenanceStandardDetail); - } - } - rowNumber++; - } - } - } } else { System.out.println("鏃犳硶瑙f瀽璇ユ枃浠�"); } @@ -519,15 +584,21 @@ //鏄庣粏淇℃伅 List<MaintenanceStandardDetail> maintenanceStandardDetailList = maintenanceStandard.getMaintenanceStandardDetaillist(); MaintenanceStandardDetail isd = null; + Equipment equipment = equipmentService.getById(maintenanceStandard.getEquipmentId()); + List<MaintenanceCycleVo> maintenanceCycle = maintenanceStandardService.getPeriodicMaintenanceCycle(equipment.getEquipmentImportanceId(), maintenanceStandard.getMaintenanceType()); for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetailList) { isd = new MaintenanceStandardDetail(); isd.setMaintenanceStandardId(maintenanceStandard.getId()); isd.setLocation(maintenanceStandardDetail.getLocation()); isd.setPhoto(maintenanceStandardDetail.getPhoto()); isd.setMaintenanceProjectId(maintenanceStandardDetail.getMaintenanceProjectId()); - isd.setMaintenanceCycleId(maintenanceStandardDetail.getMaintenanceCycleId()); +// isd.setMaintenanceCycleId(maintenanceStandardDetail.getMaintenanceCycleId()); isd.setMaintenanceMode(maintenanceStandardDetail.getMaintenanceMode()); isd.setMaintenanceRequire(maintenanceStandardDetail.getMaintenanceRequire()); + isd.setMaintenanceRole(maintenanceStandardDetail.getMaintenanceRole()); + if(maintenanceCycle.size() > 0){ + isd.setMaintenanceCycleId(maintenanceCycle.get(0).getValue()); + } maintenanceStandardDetailService.save(isd); } if(CollectionUtils.isNotEmpty(maintenanceStandardPlanningMaterialList)){ @@ -644,4 +715,5 @@ return cell.getParagraphs().get(0).getText(); } + } -- Gitblit v1.9.3