16639036659
2023-12-11 56c84cd7fb04407536eb0135162313029828a81f
src/main/java/com/ruoyi/project/tr/riskEvaluationPlan/controller/RiskEvaluationController.java
@@ -72,6 +72,183 @@
    private ICriterionDetailService criterionDetailService;
//    /**
//     * 用于设备设施计划的导入
//     * @param file
//     * @return
//     * @throws Exception
//     */
//    @Log(title = "设备设施计划导入", businessType = BusinessType.IMPORT)
//    @PostMapping("/deviceImportData")
//    @ResponseBody
//    @Transactional
//    public AjaxResult deviceImportData(MultipartFile file) throws Exception {
//        User user = ShiroUtils.getSysUser();
//
//        //查询各个评分所用的准则明细
//        List<CriterionDetail> LS_L = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LS_L.getCriterionId());
//        List<CriterionDetail> LS_S = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LS_S.getCriterionId());
//
//        List<CriterionDetail> LEC_L = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LEC_L.getCriterionId());
//        List<CriterionDetail> LEC_E = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LEC_E.getCriterionId());
//        List<CriterionDetail> LEC_C = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LEC_C.getCriterionId());
//
//        List<CriterionDetail> MES_M = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.MES_M.getCriterionId());
//        List<CriterionDetail> MES_E = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.MES_E.getCriterionId());
//        List<CriterionDetail> MES_S = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.MES_S.getCriterionId());
//
//        List<CriterionDetail> RS_R = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.RS_R.getCriterionId());
//        List<CriterionDetail> RS_S = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.RS_S.getCriterionId());
//
//
//
//        ExcelUtil<RiskEvaluationDTO> util = new ExcelUtil<RiskEvaluationDTO>(RiskEvaluationDTO.class);
//        List<RiskEvaluationDTO> deviceList = util.importExcel(file.getInputStream());
//
//        RiskList risk = new RiskList();
//
//        RiskEvaluationPlan plan = new RiskEvaluationPlan();
//        //首先添加设备
//        for (RiskEvaluationDTO riskEvaluationDTO :deviceList){
//
//            //如果不为空,就新增设备
//            if (StringUtils.isNotEmpty(riskEvaluationDTO.getRiskListName())) {
//                BeanUtils.copyProperties(riskEvaluationDTO, risk);
//                risk.setCompanyId(user.getCompanyId());
//                risk.setUserId(user.getUserId());
//                risk.setCreateBy(user.getUserName());
//                risk.setRiskType(TrRiskTypeEnum.DEVICE.getCode());
//                //根据名称,替换成对应ID
//
//                //设备设施类型
//                String riskType = riskEvaluationDTO.getRiskListDeviceType();
//                if (StringUtils.isNotEmpty(riskType)) {
//                    List<RiskType> riskTypeList = typeService.selectRiskTypeListByCompanyId(user.getCompanyId(), 1);
//                    for (RiskType r : riskTypeList) {
//                        if (riskType.equals(r.getRiskTypeName())) {
//                            risk.setRiskListDeviceType(r.getRiskTypeId());
//                            break;
//                        }
//                    }
//                    if (risk.getRiskListDeviceType()==null){
//                        return AjaxResult.error("{"+riskType+"},该[设备设施类型]未找到");
//                    }
//                } else {
//                    return AjaxResult.error("[设备设施类型]不能为空");
//                }
//
//                //区域/位置
//                String region = riskEvaluationDTO.getRegionName();
//                if (StringUtils.isNotEmpty(region)) {
//                    List<Region> regionList = regionService.selectRegionListByCompanyId(user.getCompanyId());
//                    for (Region r : regionList) {
//                        if (region.equals(r.getRegionName())) {
//                            risk.setRegionId(r.getRegionId());
//                            break;
//                        }
//                    }
//                    if (risk.getRegionId()==null){
//                        return AjaxResult.error("{"+region+"},该[区域/位置]未找到");
//                    }
//                } else {
//                    return AjaxResult.error("[区域/位置]不能为空");
//                }
//
//                //管辖部门/单位
//                String dept = riskEvaluationDTO.getDeptName();
//                if (StringUtils.isNotEmpty(dept)) {
//                    List<Dept> deptList = deptService.selectDeptListByCompanyId(user.getCompanyId());
//                    for (Dept d : deptList) {
//                        if (dept.equals(d.getDeptName())) {
//                            risk.setDeptId(d.getDeptId());
//                            break;
//                        }
//                    }
//                    if (risk.getDeptId()==null){
//                        return AjaxResult.error("{"+dept+"},该[管辖部门/单位]未找到");
//                    }
//                } else {
//                    return AjaxResult.error("[管辖部门/单位]不能为空");
//                }
//
//                //保存复制过的对象
//                int addNum = riskListService.insertRiskList(risk);
//                if (addNum<= 0){
//                    throw new Exception("设备导入失败!");
//                }
//            }
//
//            //新增设备后继续新增计划,评价计划是否存在
//            if (StringUtils.isNotEmpty(riskEvaluationDTO.getEvaluationPlanName())){
//                BeanUtils.copyProperties(riskEvaluationDTO,plan);
//                //保存复制过的对象
//                plan.setEvaluationRiskId(risk.getRiskListId());
//                plan.setCompanyId(user.getCompanyId());
//                plan.setPlanUserId(user.getUserId());
//                plan.setIdentifyUserId(user.getUserId());
//                plan.setPlanStatus(2);
//                plan.setStageStatus(4);
//                plan.setIdentifyStatus(2);
//                plan.setEvaluationType(1);
//                plan.setRiskIdentifyMethod(1);
//
//                int addNum = riskEvaluationPlanService.insertRiskEvaluationPlan(plan);
//                if (addNum<=0){
//                    throw new Exception("计划导入失败!");
//                }
//            }
//            System.out.println(plan);
//
//            //新增过计划后,增加检查点,
//            RiskCheckPoint checkPoint = new RiskCheckPoint();
//            BeanUtils.copyProperties(riskEvaluationDTO,checkPoint);
//            checkPoint.setPlanId(plan.getPlanId());
//            checkPoint.setEvaluationUserId(user.getUserId());
//            checkPoint.setReviewUserId(user.getUserId());
//            checkPoint.setEvaluationStatus(2);
//            checkPoint.setReviewStatus(2);
//            checkPoint.setCompanyId(user.getCompanyId());
//
//            //根据分数信息,和选择评分类型,查找用户选择的分级
//            if (TrEvaluationMethodTypeEnum.LS.getMethodId().equals(checkPoint.getEvaluationMethodType())){
//                checkPoint.setEvaluationNowLsL(getScoreId(LS_L,riskEvaluationDTO.getEvaluationNowLsL()));
//                checkPoint.setEvaluationNowLsS(getScoreId(LS_S,riskEvaluationDTO.getEvaluationNowLsS()));
//
//                checkPoint.setEvaluationAfterLsL(getScoreId(LS_L,riskEvaluationDTO.getEvaluationAfterLsL()));
//                checkPoint.setEvaluationAfterLsS(getScoreId(LS_S,riskEvaluationDTO.getEvaluationAfterLsS()));
//            }else if(TrEvaluationMethodTypeEnum.LEC.getMethodId().equals(checkPoint.getEvaluationMethodType())){
//                checkPoint.setEvaluationNowLecL(getScoreId(LEC_L,riskEvaluationDTO.getEvaluationNowLecL()));
//                checkPoint.setEvaluationNowLecE(getScoreId(LEC_E,riskEvaluationDTO.getEvaluationNowLecE()));
//                checkPoint.setEvaluationNowLecC(getScoreId(LEC_C,riskEvaluationDTO.getEvaluationNowLecC()));
//
//                checkPoint.setEvaluationAfterLecL(getScoreId(LEC_L,riskEvaluationDTO.getEvaluationAfterLecL()));
//                checkPoint.setEvaluationAfterLecE(getScoreId(LEC_E,riskEvaluationDTO.getEvaluationAfterLecE()));
//                checkPoint.setEvaluationAfterLecC(getScoreId(LEC_C,riskEvaluationDTO.getEvaluationAfterLecC()));
//            }else if(TrEvaluationMethodTypeEnum.MES.getMethodId().equals(checkPoint.getEvaluationMethodType())){
//                checkPoint.setEvaluationNowMesM(getScoreId(MES_M,riskEvaluationDTO.getEvaluationNowMesM()));
//                checkPoint.setEvaluationNowMesE(getScoreId(MES_E,riskEvaluationDTO.getEvaluationNowMesE()));
//                checkPoint.setEvaluationNowMesS(getScoreId(MES_S,riskEvaluationDTO.getEvaluationNowMesS()));
//
//                checkPoint.setEvaluationAfterMesM(getScoreId(MES_M,riskEvaluationDTO.getEvaluationAfterMesM()));
//                checkPoint.setEvaluationAfterMesE(getScoreId(MES_E,riskEvaluationDTO.getEvaluationAfterMesE()));
//                checkPoint.setEvaluationAfterMesS(getScoreId(MES_S,riskEvaluationDTO.getEvaluationAfterMesS()));
//            }else if(TrEvaluationMethodTypeEnum.RS.getMethodId().equals(checkPoint.getEvaluationMethodType())){
//                checkPoint.setEvaluationNowRsR(getScoreIdByRsR(RS_R,riskEvaluationDTO.getEvaluationNowRsR()));
//                checkPoint.setEvaluationNowRsS(getScoreIdByRsS(RS_S,riskEvaluationDTO.getEvaluationNowRsS()));
//
//                checkPoint.setEvaluationAfterRsR(getScoreIdByRsR(RS_R,riskEvaluationDTO.getEvaluationAfterRsR()));
//                checkPoint.setEvaluationAfterRsS(getScoreIdByRsS(RS_S,riskEvaluationDTO.getEvaluationAfterRsS()));
//            }
//
//            //计算分值
//            pingFen(checkPoint);
//
//            riskCheckPointService.insertRiskCheckPoint(checkPoint);
//        }
//
//        return AjaxResult.success("导入成功!");
//    }
    /**
     * 用于设备设施计划的导入
     * @param file
@@ -85,27 +262,11 @@
    public AjaxResult deviceImportData(MultipartFile file) throws Exception {
        User user = ShiroUtils.getSysUser();
        //查询各个评分所用的准则明细
        List<CriterionDetail> LS_L = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LS_L.getCriterionId());
        List<CriterionDetail> LS_S = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LS_S.getCriterionId());
        List<CriterionDetail> LEC_L = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LEC_L.getCriterionId());
        List<CriterionDetail> LEC_E = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LEC_E.getCriterionId());
        List<CriterionDetail> LEC_C = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.LEC_C.getCriterionId());
        List<CriterionDetail> MES_M = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.MES_M.getCriterionId());
        List<CriterionDetail> MES_E = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.MES_E.getCriterionId());
        List<CriterionDetail> MES_S = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.MES_S.getCriterionId());
        List<CriterionDetail> RS_R = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.RS_R.getCriterionId());
        List<CriterionDetail> RS_S = criterionDetailService.selectCriterionDetailListByCriterionId(TrEvaluationMethodDetailsEnum.RS_S.getCriterionId());
        ExcelUtil<RiskEvaluationDTO> util = new ExcelUtil<RiskEvaluationDTO>(RiskEvaluationDTO.class);
        List<RiskEvaluationDTO> deviceList = util.importExcel(file.getInputStream());
        RiskList risk = new RiskList();
        int tag = 0;
        RiskEvaluationPlan plan = new RiskEvaluationPlan();
        //首先添加设备
@@ -173,79 +334,14 @@
                //保存复制过的对象
                int addNum = riskListService.insertRiskList(risk);
                if (addNum<= 0){
                    throw new Exception("设备导入失败!");
                if (addNum > 0){
                    tag = 1;
                }
            }
            //新增设备后继续新增计划,评价计划是否存在
            if (StringUtils.isNotEmpty(riskEvaluationDTO.getEvaluationPlanName())){
                BeanUtils.copyProperties(riskEvaluationDTO,plan);
                //保存复制过的对象
                plan.setEvaluationRiskId(risk.getRiskListId());
                plan.setCompanyId(user.getCompanyId());
                plan.setPlanUserId(user.getUserId());
                plan.setIdentifyUserId(user.getUserId());
                plan.setPlanStatus(2);
                plan.setStageStatus(4);
                plan.setIdentifyStatus(2);
                plan.setEvaluationType(1);
                plan.setRiskIdentifyMethod(1);
                int addNum = riskEvaluationPlanService.insertRiskEvaluationPlan(plan);
                if (addNum<=0){
                    throw new Exception("计划导入失败!");
                }
            }
            System.out.println(plan);
            //新增过计划后,增加检查点,
            RiskCheckPoint checkPoint = new RiskCheckPoint();
            BeanUtils.copyProperties(riskEvaluationDTO,checkPoint);
            checkPoint.setPlanId(plan.getPlanId());
            checkPoint.setEvaluationUserId(user.getUserId());
            checkPoint.setReviewUserId(user.getUserId());
            checkPoint.setEvaluationStatus(2);
            checkPoint.setReviewStatus(2);
            checkPoint.setCompanyId(user.getCompanyId());
            //根据分数信息,和选择评分类型,查找用户选择的分级
            if (TrEvaluationMethodTypeEnum.LS.getMethodId().equals(checkPoint.getEvaluationMethodType())){
                checkPoint.setEvaluationNowLsL(getScoreId(LS_L,riskEvaluationDTO.getEvaluationNowLsL()));
                checkPoint.setEvaluationNowLsS(getScoreId(LS_S,riskEvaluationDTO.getEvaluationNowLsS()));
                checkPoint.setEvaluationAfterLsL(getScoreId(LS_L,riskEvaluationDTO.getEvaluationAfterLsL()));
                checkPoint.setEvaluationAfterLsS(getScoreId(LS_S,riskEvaluationDTO.getEvaluationAfterLsS()));
            }else if(TrEvaluationMethodTypeEnum.LEC.getMethodId().equals(checkPoint.getEvaluationMethodType())){
                checkPoint.setEvaluationNowLecL(getScoreId(LEC_L,riskEvaluationDTO.getEvaluationNowLecL()));
                checkPoint.setEvaluationNowLecE(getScoreId(LEC_E,riskEvaluationDTO.getEvaluationNowLecE()));
                checkPoint.setEvaluationNowLecC(getScoreId(LEC_C,riskEvaluationDTO.getEvaluationNowLecC()));
                checkPoint.setEvaluationAfterLecL(getScoreId(LEC_L,riskEvaluationDTO.getEvaluationAfterLecL()));
                checkPoint.setEvaluationAfterLecE(getScoreId(LEC_E,riskEvaluationDTO.getEvaluationAfterLecE()));
                checkPoint.setEvaluationAfterLecC(getScoreId(LEC_C,riskEvaluationDTO.getEvaluationAfterLecC()));
            }else if(TrEvaluationMethodTypeEnum.MES.getMethodId().equals(checkPoint.getEvaluationMethodType())){
                checkPoint.setEvaluationNowMesM(getScoreId(MES_M,riskEvaluationDTO.getEvaluationNowMesM()));
                checkPoint.setEvaluationNowMesE(getScoreId(MES_E,riskEvaluationDTO.getEvaluationNowMesE()));
                checkPoint.setEvaluationNowMesS(getScoreId(MES_S,riskEvaluationDTO.getEvaluationNowMesS()));
                checkPoint.setEvaluationAfterMesM(getScoreId(MES_M,riskEvaluationDTO.getEvaluationAfterMesM()));
                checkPoint.setEvaluationAfterMesE(getScoreId(MES_E,riskEvaluationDTO.getEvaluationAfterMesE()));
                checkPoint.setEvaluationAfterMesS(getScoreId(MES_S,riskEvaluationDTO.getEvaluationAfterMesS()));
            }else if(TrEvaluationMethodTypeEnum.RS.getMethodId().equals(checkPoint.getEvaluationMethodType())){
                checkPoint.setEvaluationNowRsR(getScoreIdByRsR(RS_R,riskEvaluationDTO.getEvaluationNowRsR()));
                checkPoint.setEvaluationNowRsS(getScoreIdByRsS(RS_S,riskEvaluationDTO.getEvaluationNowRsS()));
                checkPoint.setEvaluationAfterRsR(getScoreIdByRsR(RS_R,riskEvaluationDTO.getEvaluationAfterRsR()));
                checkPoint.setEvaluationAfterRsS(getScoreIdByRsS(RS_S,riskEvaluationDTO.getEvaluationAfterRsS()));
            }
            //计算分值
            pingFen(checkPoint);
            riskCheckPointService.insertRiskCheckPoint(checkPoint);
        }
        if (tag == 0){
            return AjaxResult.success("导入失败!");
        }
        return AjaxResult.success("导入成功!");
    }