Browse Source

pms 瑞都日报 查询construction_start_date日期的中航北斗油耗

zhangcl 1 tuần trước cách đây
mục cha
commit
9d21aa2d5c

+ 9 - 5
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotrddailyreport/IotRdDailyReportController.java

@@ -417,21 +417,25 @@ public class IotRdDailyReportController {
                 // 取1个任务的车辆信息 就算是平台井 所有关联井的车辆信息是相同的
                 // 获取中航北斗车辆的油耗信息
                 LocalDateTime createTime = dailyReport.getCreateTime();
+                // 日报开始日期
+                LocalDateTime constructionStartDate = dailyReport.getConstructionStartDate();
                 // 获得昨天的日期
                 String yesterdayDateStr = StrUtil.EMPTY;
                 LocalDateTime yesterday = createTime.minusDays(1);
                 yesterdayDateStr = LocalDateTimeUtil.format(yesterday, DatePattern.NORM_DATE_PATTERN);
+                // 需要根据日报的 construction_start_date 日期查询中航北斗油耗
+                String constructionStartDateStr = LocalDateTimeUtil.format(constructionStartDate, DatePattern.NORM_DATE_PATTERN);
 
                 // 当前日报总油耗
                 BigDecimal totalOilUsage = BigDecimal.ZERO;
                 if (CollUtil.isNotEmpty(zhbdCarIds)) {
-                    if (StrUtil.isNotBlank(yesterdayDateStr)) {
+                    if (StrUtil.isNotBlank(constructionStartDateStr)) {
                         try {
                             Map<Integer, IotDeviceCarFuelVO> carFuels = zhbdUtil.carFuels(StrUtil.join(",", zhbdCarIds),
-                                    StrUtil.join(" ", yesterdayDateStr, "00:00:00"), StrUtil.join(" ", yesterdayDateStr, "23:59:59"));
+                                    StrUtil.join(" ", constructionStartDateStr, "00:00:00"), StrUtil.join(" ", constructionStartDateStr, "23:59:59"));
                             System.out.println("请求参数:" + zhbdCarIds.size() + " -开始时间: "
-                                    + StrUtil.join(" ", yesterdayDateStr, "00:00:00") + " -开始时间: "
-                                    + StrUtil.join(" ", yesterdayDateStr, "23:59:59"));
+                                    + StrUtil.join(" ", constructionStartDateStr, "00:00:00") + " -开始时间: "
+                                    + StrUtil.join(" ", constructionStartDateStr, "23:59:59"));
                             if (CollUtil.isNotEmpty(carFuels)) {
                                 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
                                 Map<String, IotDeviceRespVO> finalCarIdDevicePair = carIdDevicePair;
@@ -453,7 +457,7 @@ public class IotRdDailyReportController {
                                     reportFuel.setZhbdFuel(tempOil);
                                     // 将字符串转换为LocalDateTime
                                     try {
-                                        LocalDateTime queryDate = LocalDate.parse(yesterdayDateStr, formatter).atStartOfDay();;
+                                        LocalDateTime queryDate = LocalDate.parse(constructionStartDateStr, formatter).atStartOfDay();;
                                         reportFuel.setQueryDate(queryDate);
                                     } catch (DateTimeParseException e) {
                                         log.error("瑞都日报-中航北斗油耗-日期格式解析失败: {}", e);