chenxiaofei il y a 1 mois
Parent
commit
42e72d8ae4

+ 38 - 0
iot-platform-common/src/main/java/com/platform/enums/WeighbridgeYsEnum.java

@@ -0,0 +1,38 @@
+package com.platform.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author :chenXiaoFei
+ * @version :1.0
+ * @description : 地磅映射枚举
+ * @create :2026-01-22 10:52:00
+ */
+
+@Getter
+@AllArgsConstructor
+public enum WeighbridgeYsEnum {
+    /**
+     * 1号地磅
+     */
+    NO1("10100111", "#1地磅"),
+    NO2("10100112", "#2地磅"),
+    NO3("10100113", "#3地磅"),
+    NO4("10100114", "#4地磅"),
+    NO5("10100115", "#5地磅"),
+    NO6("10100116", "#6地磅"),
+    ;
+
+    private final String code;
+    private final String name;
+
+    public static String getByCode(String code) {
+        for (WeighbridgeYsEnum value : WeighbridgeYsEnum.values()) {
+            if (value.getCode().equals(code)) {
+                return value.name;
+            }
+        }
+        return null;
+    }
+}

+ 21 - 1
iot-platform-manager/src/main/java/com/platform/api/manager/WeighbridgeRecordManage.java

@@ -14,6 +14,7 @@ import com.platform.entity.ValidateLicensePlate;
 import com.platform.entity.WeighbridgeRecord;
 import com.platform.enums.ErrorCodeEnum;
 import com.platform.enums.WeighbridgeEnum;
+import com.platform.enums.WeighbridgeYsEnum;
 import com.platform.exception.IotException;
 import com.platform.api.response.LicensePlateValidateResponse;
 import com.platform.external.service.WeighbridgePushService;
@@ -130,7 +131,7 @@ public class WeighbridgeRecordManage {
         ValidateLicensePlate validateLicensePlate = validateLicensePlateService.queryByLicensePlate(request.getLicensePlate());
         try {
             // 构建实体对象
-            WeighbridgeRecord record = buildWeighbridgeRecord(request);
+            WeighbridgeRecord record = buildYsWeighbridgeRecord(request);
             if(Objects.isNull(validateLicensePlate)){
                 record.setCheckStatus(1);
             }
@@ -263,7 +264,26 @@ public class WeighbridgeRecordManage {
 
         return record;
     }
+    private WeighbridgeRecord buildYsWeighbridgeRecord(WeighbridgePushRequest request) {
+        WeighbridgeRecord record = new WeighbridgeRecord();
+
+        // 基础信息设置
+        record.setLicensePlate(request.getLicensePlate());
+        record.setWeighbridgeCode(request.getWeighbridgeCode());
+        String weighbridgeName = WeighbridgeYsEnum.getByCode(request.getWeighbridgeCode());
+        record.setWeighbridgeName(weighbridgeName);
+        record.setWeight(request.getGrossWeight());
+        record.setTag(request.getTag());
 
+        // 时间戳转换
+        LocalDateTime weighTime = convertTimestamp(request.getTimestamp());
+        log.info("称重时间戳:{};转换 - 时间: {}", request.getTimestamp(), weighTime);
+        record.setWeighTime(weighTime);
+
+
+
+        return record;
+    }
     /**
      * 异步更新图片URL
      */

+ 11 - 12
iot-platform-manager/src/main/java/com/platform/external/service/WeighbridgePushService.java

@@ -40,30 +40,29 @@ public class WeighbridgePushService {
      * @param record 已保存的地磅记录
      */
     public void pushWeighbridgeRecord(WeighbridgeRecord record)  {
-//        if (!Boolean.TRUE.equals(weighbridgePushProperties.getEnabled())) {
-//            log.debug("外部系统地磅数据推送未启用,跳过推送");
-//            return;
-//        }
-//        if (Objects.isNull(record) || Objects.isNull(record.getId())) {
-//            log.warn("外部系统地磅数据推送参数为空,跳过推送");
-//            return;
-//        }
+        if (!Boolean.TRUE.equals(weighbridgePushProperties.getEnabled())) {
+            log.debug("外部系统地磅数据推送未启用,跳过推送");
+            return;
+        }
+        if (Objects.isNull(record) || Objects.isNull(record.getId())) {
+            log.warn("外部系统地磅数据推送参数为空,跳过推送");
+            return;
+        }
         BaseResult response  = null;
         try {
             WaybillOrderProcessParam request = buildPushRequest(record);
             log.info("外部系统地磅数据推送开始,记录ID: {}, 请求参数: {}",
                     record.getId(), JSON.toJSONString( request));
             response = weighbridgePushClient.pushWeighbridgeRecord(request);
-            log.info("外部系统地磅数据推送完成,记录ID: {}, 响应码: {}, 响应消息: {}",
+            log.info("外部系统地磅数据推送完成,记录ID: {}, 响应消息: {}",
                     record.getId(),
-                    Objects.nonNull(response) ? response.getCode() : null,
-                    Objects.nonNull(response) ? response.getMessage() : null);
+                    JSON.toJSONString( response));
         } catch (Exception e) {
             log.error("外部系统地磅数据推送异常,记录ID: {}, 车牌号: {}",
                     record.getId(), record.getLicensePlate(), e);
             throw new IotException("外部系统地磅数据推送异常");
         }
-        if (Objects.nonNull(response) && !response.isSuccess()){
+        if (Objects.isNull(response) || !response.isSuccess()){
             log.error("外部系统地磅数据推送失败,记录ID: {}, 车牌号: {}",
                     record.getId(), record.getLicensePlate());
             throw new IotException("外部系统地磅数据推送失败");