Răsfoiți Sursa

fix: 结算记录列表 createTime 类型转换,LocalDateTime → String

BeanUtils.copyProperties 无法将 LocalDateTime 转为 String,
导致 VO 中 createTime/updateTime 始终为 null,前端 formatTime(null)
显示 NaN-NaN。现显式使用 DateTimeFormatter 格式化。

Co-Authored-By: Claude <noreply@anthropic.com>
skyline 1 lună în urmă
părinte
comite
0d6a58ee8e

+ 7 - 0
car-wash-service/src/main/java/com/kym/service/impl/SettlementServiceImpl.java

@@ -46,6 +46,7 @@ public class SettlementServiceImpl extends MyBaseServiceImpl<SettlementRecordMap
     private static final BigDecimal PLATFORM_FEE_RATE = new BigDecimal("0.1");
     private static final BigDecimal WITHDRAWAL_FEE_RATE = new BigDecimal("0.006");
     private static final DateTimeFormatter PERIOD_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM");
+    private static final DateTimeFormatter DTF = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
     private final SplitRecordService splitRecordService;
     private final StationAccountService stationAccountService;
@@ -190,6 +191,12 @@ public class SettlementServiceImpl extends MyBaseServiceImpl<SettlementRecordMap
             var vo = new SettlementRecordVo();
             BeanUtils.copyProperties(item, vo);
             vo.setStationName(KymCache.INSTANCE.getStationNameById(item.getStationId()));
+            if (item.getCreateTime() != null) {
+                vo.setCreateTime(item.getCreateTime().format(DTF));
+            }
+            if (item.getUpdateTime() != null) {
+                vo.setUpdateTime(item.getUpdateTime().format(DTF));
+            }
             return vo;
         }).toList();
         return new PageBean<>(voList);