qushaowei
2023-12-13 b77e8c2ce35ca1b7b5737a3d0b91fd584908f454
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,17 @@
                                    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("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.setVersionStatus("2");
                                            maintenanceStandard.setDelFlag(0);
                                            maintenanceStandard.setApprovalStatus("5");
                                            maintenanceStandardService.save(maintenanceStandard);
                                        }
                                        else {
@@ -327,11 +364,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,15 +390,18 @@
                                            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);
                                    }
                                }
@@ -363,6 +409,7 @@
                            }
                        }
                    }
                    return Result.OK("导入成功");
                } else {
                    System.out.println("无法解析该文件");
                }
@@ -420,6 +467,8 @@
                                            maintenanceStandard.setAssignMode("1");
                                            maintenanceStandard.setVersion("1.0");
                                            maintenanceStandard.setVersionStatus("2");
                                            maintenanceStandard.setType("daily");
                                            maintenanceStandard.setApprovalStatus("5");
                                            maintenanceStandardService.save(maintenanceStandard);
                                        }
                                        else {
@@ -467,6 +516,7 @@
                                        maintenanceStandardDetail.setMaintenanceProjectId(maintenanceProject.getId());
                                        maintenanceStandardDetail.setLocation(location);
                                        maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.getId());
                                        maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId());
                                        maintenanceStandardDetailService.save(maintenanceStandardDetail);
                                    }
@@ -519,15 +569,20 @@
        //明细信息
        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());
            if(maintenanceCycle.size() > 0){
                isd.setMaintenanceCycleId(maintenanceCycle.get(0).getValue());
            }
            maintenanceStandardDetailService.save(isd);
        }
        if(CollectionUtils.isNotEmpty(maintenanceStandardPlanningMaterialList)){
@@ -644,4 +699,5 @@
        return cell.getParagraphs().get(0).getText();
    }
}