From b3814333d786324bb81cca7d1bcf5ac8f2f1a7cf Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期三, 23 七月 2025 08:35:33 +0800 Subject: [PATCH] 保存一个版本 --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java | 40 ++++++++++++++++++++++++++-------------- 1 files changed, 26 insertions(+), 14 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 00eed5b..8f4bd5e 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 @@ -44,25 +44,37 @@ AgvErrorType errorType = AgvErrorType.query(agv_04_up.getHexFaultId()); Long agvId = agvService.getAgvId(vehicle); + VehFaultRec vehFaultRec = vehFaultRecService.getTopVehFaultRec(agvId, String.valueOf(agv_04_up.getFaultId())); + if (null == vehFaultRec) { + vehFaultRec = new VehFaultRec(); + vehFaultRec.setUuid(String.valueOf(snowflakeIdWorker.nextId()).substring(3)); + vehFaultRec.setAgvId(agvId); + vehFaultRec.setFaultNo(String.valueOf(agv_04_up.getFaultId())); + vehFaultRec.setFaultHex(agv_04_up.getHexFaultId()); + vehFaultRec.setFaultName(null != errorType ? errorType.desc : "undefined"); + 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(new Date()); + vehFaultRec.setProtocol(RadixTools.bytesToHexStr(agv_04_up.writeToBytes())); - VehFaultRec vehFaultRec = new VehFaultRec(); - vehFaultRec.setUuid(String.valueOf(snowflakeIdWorker.nextId()).substring(3)); - vehFaultRec.setAgvId(agvId); - vehFaultRec.setFaultNo(String.valueOf(agv_04_up.getFaultId())); - vehFaultRec.setFaultHex(agv_04_up.getHexFaultId()); - vehFaultRec.setFaultName(null != errorType ? errorType.desc : "undefined"); - 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(new Date()); - vehFaultRec.setProtocol(RadixTools.bytesToHexStr(agv_04_up.writeToBytes())); - - if (!vehFaultRecService.save(vehFaultRec)) { - log.error("{}鍙疯溅杈嗘晠闅滐紒璁板綍鏁呴殰淇℃伅澶辫触......", dto.getVehicle()); + if (!vehFaultRecService.save(vehFaultRec)) { + log.error("{}鍙疯溅杈嗘晠闅滐紒璁板綍鏁呴殰淇℃伅澶辫触......", dto.getVehicle()); + } + } else { + vehFaultRec.setUpdateTime(new Date()); + if (!vehFaultRecService.updateById(vehFaultRec)) { + log.error("{}鍙疯溅杈嗘晠闅滐紒鏇存柊鏁呴殰淇℃伅澶辫触......", dto.getVehicle()); + } } - } catch (Exception e) { log.error("FaultProcessor", e); } } + @Async + public void reset(Long agvId) { + vehFaultRecService.resetError(agvId); + } + + } -- Gitblit v1.9.1