Explorar o código

refactor(utils): 将时间戳转换工具方法移至DateUtils类

- 在DateUtils类中新增秒级时间戳转日期字符串的方法secondToDateTimeStr
- 将VaultodyController中的时间处理相关代码移除
- 更新VaultodyController中对时间戳转换方法的调用路径
- 统一时间处理逻辑到工具类中便于维护
kongxiangyang hai 1 mes
pai
achega
93414523fc

+ 2 - 26
crm-manager/src/main/java/com/crm/manager/controller/VaultodyController.java

@@ -2,12 +2,12 @@ package com.crm.manager.controller;
 
 import com.crm.manager.service.VaultodyService;
 import com.crm.manager.util.BlockchainUtils;
+import com.crm.manager.util.DateUtils;
 import com.crm.rely.backend.core.dto.base.BaseResultDto;
 import com.crm.rely.backend.model.dto.export.TransactionItemExport;
 import com.crm.rely.backend.model.entity.vaultody.vaults.VaultTransactionsEntity;
 import com.crm.rely.backend.model.entity.vaultody.vaults.VaultTransactionsSearchEntity;
 import com.crm.rely.backend.model.pojo.table.TransactionItemTable;
-import com.crm.rely.backend.util.DateUtil;
 import com.crm.rely.backend.util.ExportUtil;
 import com.crm.rely.backend.util.FileProcessUtil;
 import com.google.common.collect.Lists;
@@ -21,10 +21,6 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.time.Instant;
-import java.time.LocalDateTime;
-import java.time.ZoneId;
-import java.time.format.DateTimeFormatter;
 import java.util.List;
 
 
@@ -75,31 +71,11 @@ public class VaultodyController {
             if(StringUtils.isNotBlank(item.getBlockchain()) && StringUtils.isNotBlank(item.getTransactionId())){
                 exportDto.setTransactionId(BlockchainUtils.getTransactionUrl(item.getBlockchain(), item.getTransactionId()));
             }
-            exportDto.setCreatedTimestamp(secondToDateTimeStr(item.getCreatedTimestamp()));
+            exportDto.setCreatedTimestamp(DateUtils.secondToDateTimeStr(item.getCreatedTimestamp()));
             exportDtos.add(exportDto);
         }
         ExportUtil.transferToResponse(FileProcessUtil.genExportFileName("VAULTODY_VAULT_TRANSACTIONS"), exportDtos,
                 TransactionItemExport.class, response);
     }
 
-    // 常用格式:yyyy-MM-dd HH:mm:ss
-    public static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
-
-    /**
-     * 秒级时间戳 → 日期字符串
-     * @param secondTimestamp 秒级时间戳 (如 1735458266)
-     * @return yyyy-MM-dd HH:mm:ss
-     */
-    public static String secondToDateTimeStr(long secondTimestamp) {
-        if (secondTimestamp <= 0) {
-            return null;
-        }
-        // 秒级时间戳转 Instant
-        Instant instant = Instant.ofEpochSecond(secondTimestamp);
-        // 转东八区时间(中国时区)
-        LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.of("Asia/Shanghai"));
-        // 格式化字符串
-        return localDateTime.format(FORMATTER);
-    }
-
 }

+ 24 - 0
crm-manager/src/main/java/com/crm/manager/util/DateUtils.java

@@ -1,5 +1,9 @@
 package com.crm.manager.util;
 
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
 import java.util.Date;
 
 public class DateUtils {
@@ -13,4 +17,24 @@ public class DateUtils {
         }
         return date.getTime() / 1000; // 毫秒 → 秒(关键)
     }
+
+    // 常用格式:yyyy-MM-dd HH:mm:ss
+    public static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+    /**
+     * 秒级时间戳 → 日期字符串
+     * @param secondTimestamp 秒级时间戳 (如 1735458266)
+     * @return yyyy-MM-dd HH:mm:ss
+     */
+    public static String secondToDateTimeStr(long secondTimestamp) {
+        if (secondTimestamp <= 0) {
+            return null;
+        }
+        // 秒级时间戳转 Instant
+        Instant instant = Instant.ofEpochSecond(secondTimestamp);
+        // 转东八区时间(中国时区)
+        LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.of("Asia/Shanghai"));
+        // 格式化字符串
+        return localDateTime.format(FORMATTER);
+    }
 }