From 746b1998b7b948e56bcda268aadc154371fb4fcd Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 29 十一月 2024 14:26:21 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java |   38 +++++++++++++++++++++++++++++++++++---
 1 files changed, 35 insertions(+), 3 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java
index de96d29..ea4d207 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java
@@ -1,13 +1,22 @@
 package com.zy.acs.manager.core.service;
 
+import com.zy.acs.common.domain.protocol.AGV_04_UP;
+import com.zy.acs.common.utils.GsonUtils;
+import com.zy.acs.framework.common.Cools;
+import com.zy.acs.framework.common.RadixTools;
 import com.zy.acs.framework.common.SnowflakeIdWorker;
 import com.zy.acs.manager.core.domain.VehicleFaultDto;
+import com.zy.acs.manager.manager.entity.Agv;
 import com.zy.acs.manager.manager.entity.VehFaultRec;
+import com.zy.acs.manager.manager.service.AgvDetailService;
+import com.zy.acs.manager.manager.service.AgvService;
 import com.zy.acs.manager.manager.service.VehFaultRecService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
+
+import java.util.Date;
 
 /**
  * Created by vincent on 8/19/2024
@@ -20,15 +29,29 @@
     private VehFaultRecService vehFaultRecService;
     @Autowired
     private SnowflakeIdWorker snowflakeIdWorker;
+    @Autowired
+    private AgvService agvService;
+    @Autowired
+    private AgvDetailService agvDetailService;
 
     @Async
-    public void execute(VehicleFaultDto dto) {
+    public void execute(VehicleFaultDto<AGV_04_UP> dto) {
         try {
+            String vehicle = dto.getVehicle();
+            AGV_04_UP agv_04_up = dto.getT();
+            Date errorTime = new Date(dto.getTimestamp());
+
+            Agv agv = agvService.selectByUuid(vehicle);
 
             VehFaultRec vehFaultRec = new VehFaultRec();
             vehFaultRec.setUuid(String.valueOf(snowflakeIdWorker.nextId()).substring(3));
-//            vehFaultRec.setFaultHex();
-
+            vehFaultRec.setAgvId(agv.getId());
+            vehFaultRec.setFaultNo(String.valueOf(agv_04_up.getFaultId()));
+            vehFaultRec.setFaultHex(agv_04_up.getHexFaultId());
+            vehFaultRec.setFaultLev(agv_04_up.getFaultLevel());
+            vehFaultRec.setFaultData(GsonUtils.toJson(Cools.add("data1", agv_04_up.getData1()).add("data2", agv_04_up.getData2())));
+            vehFaultRec.setHappenTime(errorTime);
+            vehFaultRec.setProtocol(RadixTools.bytesToHexStr(agv_04_up.writeToBytes()));
 
             if (!vehFaultRecService.save(vehFaultRec)) {
                 log.error("{}鍙疯溅杈嗘晠闅滐紒璁板綍鏁呴殰淇℃伅澶辫触......", dto.getVehicle());
@@ -39,4 +62,13 @@
         }
     }
 
+    public static void main(String[] args) {
+        short ss = 8193; // 2001
+        byte[] bytes = RadixTools.shortToByte(ss);
+//        byte[] reverse = Utils.reverse(bytes);
+        System.out.println(RadixTools.bytesToHexStr(bytes));
+
+
+    }
+
 }

--
Gitblit v1.9.1