车间能级提升-智能设备管理系统
baoshiwei
2025-06-05 b47429d951a5bdea2d81cdc011251f68eefb4964
refactor(eims): 优化设备维护计划导入功能

- 修改成功消息添加换行符,提高可读性
- 增加对年份为空的处理,避免空指针异常
- 优化周期处理逻辑,支持多种格式的周期输入
- 改进导入结果提示,当失败数为0时只显示"成功!"
已修改2个文件
45 ■■■■■ 文件已修改
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintPlanController.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintPlanServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintPlanController.java
@@ -124,7 +124,9 @@
        StringBuilder successMsg = new StringBuilder();
        for (MultipartFile file : files) {
            String res = eimsMaintPlanService.importData(file, updateSupport);
            successMsg.append(res).append(";");
            successMsg.append(res).append("; \r\n");
        }
        return R.ok(successMsg.toString());
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintPlanServiceImpl.java
@@ -233,7 +233,11 @@
            EasyExcelCellListener readYearListener = new EasyExcelCellListener(2, 3);
            EasyExcel.read(is.getInputStream(), readYearListener).headRowNumber(0).sheet().doReadSync();
            String yearStr = readYearListener.getCellValue();
            if (yearStr == null || yearStr.isEmpty()) {
                yearStr = "";
            }
            String year = yearStr.replaceAll("[^\\d]", ""); // 去除非数字字符
            year = (year.length() == 4) ? year : DateUtils.getDate().substring(0,4);
            QueryWrapper<EimsEqu> queryWrapper = new QueryWrapper<>();
@@ -263,10 +267,40 @@
                    failureNum++;
                    continue;
                }
                if (period.length() == 1) {
                    period = "1"+period;
                }
                try {
                    if (period.length() > 1) {
                        String num = period.replaceAll("[^\\d]", "");
                        if ("".equals(num)) {
                            switch (period) {
                                case "一个月":
                                    maintPlanBo.setMaintCycle(1L);
                                    maintPlanBo.setMaintCycleUnit("3");
                                    break;
                                case "两个月":
                                    maintPlanBo.setMaintCycle(2L);
                                    maintPlanBo.setMaintCycleUnit("3");
                                    break;
                                case "二个月":
                                    maintPlanBo.setMaintCycle(2L);
                                    maintPlanBo.setMaintCycleUnit("3");
                                    break;
                                case "三个月":
                                    maintPlanBo.setMaintCycle(3L);
                                    maintPlanBo.setMaintCycleUnit("3");
                                    break;
                                case "六个月":
                                    maintPlanBo.setMaintCycle(6L);
                                    maintPlanBo.setMaintCycleUnit("3");
                                    break;
                                default:
                                    break;
                            }
                        }else {
                        maintPlanBo.setMaintCycle(Long.parseLong(num));
                        String substring = period.replace(num, "");
                        // 转换周期单位,M转换为3,D转换为1,Y转换为5,W转换为2,Q转换为4
@@ -304,6 +338,7 @@
                            default:
                        }
                        maintPlanBo.setMaintCycleUnit(substring);
                        }
                    } else {
                        maintPlanBo.setMaintCycle(Long.parseLong(period));
                        maintPlanBo.setMaintCycleUnit("");
@@ -362,7 +397,13 @@
                }
            }
            // 如果失败条件小于1则不打印信息
            if (failureNum <= 0) {
                return "成功!";
            } else {
            return is.getOriginalFilename() + " 导入成功:" + successNum + "条,导入失败:" + failureNum + "条";
            }
        } catch (Exception e) {
            return is.getOriginalFilename() + " 导入异常:" + e.getMessage();
        }