Lius
2 天以前 eea27b448ec2d289f5c9665bf4b3678d580457ee
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
@@ -371,17 +371,19 @@
            resultMap.put("itemCode", weekInsDetailResultResponse.getItemCode());
            resultMap.put("itemName", weekInsDetailResultResponse.getItemName());
            resultMap.put("itemDemand", weekInsDetailResultResponse.getItemDemand());
            // 使用AtomicInteger作为计数器,从1开始
            AtomicInteger counter = new AtomicInteger(1);
            Map<Integer, EamWeekInsDetailResultResponse> collect = weekInsDetailResultResponseList
                    .stream()
                    .collect(Collectors.toMap(
                            // 分组键:使用自增序号(从1开始)
                            item -> counter.getAndIncrement(),
                            // 分组键:使用planInspectionDate字段落在本月的周数
                            item -> {
                                Calendar calendar = Calendar.getInstance();
                                calendar.setTime(item.getPlanInspectionDate());
                                return calendar.get(Calendar.WEEK_OF_MONTH);
                            },
                            // 值:直接使用当前对象
                            item -> item,
                            // 合并函数:当同一序号有多个对象时(理论上不会发生),如何处理
                            (existing, replacement) -> existing, // 若有重复键,保留已存在的对象
                            // 合并函数:当同一周有多个对象时(根据需求不会发生,但仍需提供)
                            (existing, replacement) -> existing,
                            // 指定Map的具体实现(可选)
                            LinkedHashMap::new // 保持插入顺序
                    ));
@@ -442,12 +444,18 @@
        Map<Integer, EamWeekInsDetailUserResponse> groupMap = eamWeekInsDetailUserResponseList
                .stream()
                .collect(Collectors.toMap(
                        // 分组键:使用自增序号(从1开始)
                        item -> counter.getAndIncrement(),
                        // 值:直接使用当前对象(作为初始值)
                        // 分组键:使用 planInspectionDate 字段落在本月的周数
                        item -> {
                            Calendar calendar = Calendar.getInstance();
                            calendar.setTime(item.getPlanInspectionDate());
                            return calendar.get(Calendar.WEEK_OF_MONTH);
                        },
                        // 值:直接使用当前对象
                        item -> item,
                        // 合并函数:当同一“天”有多个对象时,如何处理(这里示例取第一个)
                        (existing, replacement) -> existing // 若有重复键,保留已存在的对象
                        // 合并函数:当同一周有多个对象时(根据需求不会发生)
                        (existing, replacement) -> existing,
                        // 使用 LinkedHashMap 保持插入顺序
                        LinkedHashMap::new
                ));
        Map<String, Object> resultMap = new LinkedHashMap<>();
        for (int i = 1; i <= 5; i++) {
@@ -683,9 +691,9 @@
            updateEamInspectionOrder(eamInspectionOrder);
            //查询数据,进行设备维修处理
            if (eamInspectionOrder.getInspectionStatus().equals(InspectionStatus.WAIT_CONFIRM.name())) {
                updateEamInspectionOrderDetail(eamInspectionOrder);
            }
//            if (eamInspectionOrder.getInspectionStatus().equals(InspectionStatus.WAIT_CONFIRM.name())) {
//                updateEamInspectionOrderDetail(eamInspectionOrder);
//            }
            return eamInspectionOrder;
        } catch (Exception e) {