From 385f2536c06dcf8fec4997fdc3857113afc3df9a Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 28 四月 2025 11:04:11 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/core/thread/RgvThread.java                  |    2 
 src/main/resources/mapper/BasRgvErrMapper.xml                    |   16 +++
 src/main/java/com/zy/asrs/service/BasRgvErrService.java          |    8 +
 src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java |   12 ++
 src/main/java/com/zy/asrs/controller/OpenController.java         |   44 +++++++-
 src/main/java/com/zy/asrs/entity/BasDevp.java                    |    2 
 src/main/java/com/zy/asrs/entity/param/BasRgvWmsParam.java       |    3 
 src/main/java/com/zy/asrs/entity/param/BasDevpWmsParam.java      |   44 ++++++++
 src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java            |   12 ++
 src/main/java/com/zy/core/model/protocol/RgvProtocol.java        |    2 
 src/main/java/com/zy/asrs/entity/BasRgvErr.java                  |  102 ++++++++++++++++++++
 11 files changed, 238 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 408172d..6548830 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -14,11 +14,13 @@
 import com.zy.asrs.utils.Utils;
 import com.zy.common.web.BaseController;
 import com.zy.core.CrnThread;
+import com.zy.core.cache.RgvStatusCache;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
 import com.zy.core.model.CrnSlave;
 import com.zy.core.model.RgvSlave;
 import com.zy.core.model.protocol.CrnProtocol;
+import com.zy.core.model.protocol.RgvProtocol;
 import com.zy.core.properties.SlaveProperties;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -55,6 +57,10 @@
     private StaDescService staDescService;
     @Autowired
     private LocMastService locMastService;
+    @Autowired
+    private BasRgvErrService basRgvErrService;
+    @Autowired
+    private BasCrnErrorServiceImpl basCrnErrorService;
 
     @Value("${wms.url}")
     private String wmsUrl;
@@ -64,8 +70,6 @@
     public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{
         add("ea1f0459efc02a79f046f982767939ae");
     }};
-    @Autowired
-    private BasCrnErrorServiceImpl basCrnErrorService;
 
     //agv浠诲姟瀹屾垚
     @PostMapping("/toAgvTaskOver")
@@ -476,7 +480,16 @@
         List<BasDevp> basDevps = basDevpService.selectList(new EntityWrapper<>());
         List<Object> list = new ArrayList<>();
         for (BasDevp basDevp:basDevps){
-            list.add(basDevp);
+            BasDevpWmsParam basDevpWmsParam = new BasDevpWmsParam();
+            basDevpWmsParam.setDevNo(basDevp.getDevNo());
+            basDevpWmsParam.setWrkNo(basDevp.getWrkNo().longValue());
+            basDevpWmsParam.setAutoing(basDevp.getAutoing());
+            basDevpWmsParam.setLoading(basDevp.getLoading());
+            basDevpWmsParam.setInEnable(basDevp.getInEnable());
+            basDevpWmsParam.setOutEnable(basDevp.getOutEnable());
+            basDevpWmsParam.setDevErr(basDevp.getStaErr().longValue());
+            basDevpWmsParam.setDevErrM(basDevpWmsParam.getDevErr$());
+            list.add(basDevpWmsParam);
         }
         List<BasCrnpWmsParam> basCrnpWmsParamList = new ArrayList<>();
         for (CrnSlave crn : slaveProperties.getCrn()) {
@@ -495,13 +508,34 @@
             basCrnpWmsParam.setCrnNoH(crnProtocol.getLaneNo());
             basCrnpWmsParamList.add(basCrnpWmsParam);
 
-            BasCrnError basCrnError = basCrnErrorService.selectById(basCrnp.getCrnErr());
-            basCrnpWmsParam.setCrnErrM(basCrnError.getErrName());
+            try{
+                BasCrnError basCrnError = basCrnErrorService.selectById(basCrnp.getCrnErr());
+                basCrnpWmsParam.setCrnErrM(basCrnError.getErrName());
+            } catch (Exception e){
+                basCrnpWmsParam.setCrnErrM("鏈煡寮傚父");
+            }
 
             list.add(basCrnpWmsParam);
         }
         for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
+            RgvProtocol rgvStatus = RgvStatusCache.getRgvStatus(rgvSlave.getId());
+            if (Cools.isEmpty(rgvStatus)){
+                continue;
+            }
+            BasRgvWmsParam basRgvWmsParam = new BasRgvWmsParam();
+            basRgvWmsParam.setWrkNo(rgvStatus.getTaskNo());
+            basRgvWmsParam.setCrnSts(rgvStatus.getStatus().intValue());
+            basRgvWmsParam.setStatusType(rgvStatus.getStatusType().desc);
+            basRgvWmsParam.setSteNo(rgvSlave.getId());
+            basRgvWmsParam.setSteErr(rgvStatus.getAlarm().longValue());
+            try{
+                BasRgvErr basRgvErr = basRgvErrService.selectById(rgvStatus.getAlarm().longValue());
 
+                basRgvWmsParam.setSteErrM(basRgvErr.getErrName());
+            } catch (Exception e){
+                basRgvWmsParam.setSteErrM("鏈煡寮傚父");
+            }
+            list.add(basRgvWmsParam);
         }
 //        List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<>());
 //        for (BasCrnp basCrnp:basCrnps){
diff --git a/src/main/java/com/zy/asrs/entity/BasDevp.java b/src/main/java/com/zy/asrs/entity/BasDevp.java
index 10e3fce..c306b22 100644
--- a/src/main/java/com/zy/asrs/entity/BasDevp.java
+++ b/src/main/java/com/zy/asrs/entity/BasDevp.java
@@ -228,7 +228,7 @@
 
     @ApiModelProperty(value= "寮傚父鐮�")
     @TableField("STA_ERR")
-    private Integer staErr;
+    private Integer staErr = -1;
 
 
     public String getIoTime$(){
diff --git a/src/main/java/com/zy/asrs/entity/BasRgvErr.java b/src/main/java/com/zy/asrs/entity/BasRgvErr.java
new file mode 100644
index 0000000..ed0d2c6
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/BasRgvErr.java
@@ -0,0 +1,102 @@
+package com.zy.asrs.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+@TableName("\"SOURCE\".\"asr_bas_rgv_err\"")
+public class BasRgvErr implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 寮傚父鐮�
+     */
+    @ApiModelProperty(value= "寮傚父鐮�")
+    @TableId(value = "ERROR_CODE", type = IdType.INPUT)
+    @TableField("ERROR_CODE")
+    private Long errorCode;
+
+    /**
+     * 寮傚父
+     */
+    @ApiModelProperty(value= "寮傚父")
+    @TableField("ERR_NAME")
+    private String errName;
+
+    /**
+     * 淇敼浜哄憳
+     */
+    @ApiModelProperty(value= "淇敼浜哄憳")
+    @TableField("MODI_USER")
+    private Long modiUser;
+
+    /**
+     * 淇敼鏃堕棿
+     */
+    @ApiModelProperty(value= "淇敼鏃堕棿")
+    @TableField("MODI_TIME")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    private Date modiTime;
+
+    /**
+     * 娣诲姞浜哄憳
+     */
+    @ApiModelProperty(value= "娣诲姞浜哄憳")
+    @TableField("APPE_USER")
+    private Long appeUser;
+
+    /**
+     * 娣诲姞鏃堕棿
+     */
+    @ApiModelProperty(value= "娣诲姞鏃堕棿")
+    @TableField("APPE_TIME")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    private Date appeTime;
+
+    public BasRgvErr() {}
+
+    public BasRgvErr(Long errorCode, String errName, Long modiUser, Date modiTime, Long appeUser, Date appeTime) {
+        this.errorCode = errorCode;
+        this.errName = errName;
+        this.modiUser = modiUser;
+        this.modiTime = modiTime;
+        this.appeUser = appeUser;
+        this.appeTime = appeTime;
+    }
+
+//    BasRgvErr basRgvErr = new BasRgvErr(
+//            null,    // 寮傚父鐮乕闈炵┖]
+//            null,    // 寮傚父
+//            null,    // 淇敼浜哄憳
+//            null,    // 淇敼鏃堕棿
+//            null,    // 娣诲姞浜哄憳
+//            null    // 娣诲姞鏃堕棿
+//    );
+
+    public String getModiTime$(){
+        if (Cools.isEmpty(this.modiTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime);
+    }
+
+    public String getAppeTime$(){
+        if (Cools.isEmpty(this.appeTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
+    }
+
+
+}
diff --git a/src/main/java/com/zy/asrs/entity/param/BasDevpWmsParam.java b/src/main/java/com/zy/asrs/entity/param/BasDevpWmsParam.java
new file mode 100644
index 0000000..c8d3108
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/BasDevpWmsParam.java
@@ -0,0 +1,44 @@
+package com.zy.asrs.entity.param;
+import lombok.Data;
+
+@Data
+public class BasDevpWmsParam {
+
+    /**
+     * 缂栧彿
+     */
+    private Integer devNo;//杈撻�佺粰绔欑偣鍙�
+
+    /**
+     * 宸ヤ綔鍙�
+     */
+    private Long wrkNo;
+
+    /**
+     * 寮傚父鐮�
+     */
+    private Long devErr;//寮傚父鐮�   0锛氭甯�
+    private String devErrM;//寮傚父   姝e父
+    private String devMk;//澶囨敞
+    private String inEnable;//鍙叆
+    private String outEnable;//鍙嚭
+    private String autoing;//鑷姩
+    private String loading;//鏈夌墿
+    private String barcode = "";//鏉$爜
+    private Double grossWt;//閲嶉噺
+
+
+    public BasDevpWmsParam() {}
+
+    public String getDevErr$() {
+        if (devErr == null) return "鏈煡寮傚父";
+        switch (devErr.intValue()){
+            case 0:
+                return "姝e父";
+            case 1:
+                return "瓒呴噸";
+            default:
+                return "鏈煡寮傚父";
+        }
+    }
+}
diff --git a/src/main/java/com/zy/asrs/entity/param/BasRgvWmsParam.java b/src/main/java/com/zy/asrs/entity/param/BasRgvWmsParam.java
index 2f1ef6d..680bf77 100644
--- a/src/main/java/com/zy/asrs/entity/param/BasRgvWmsParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/BasRgvWmsParam.java
@@ -13,11 +13,12 @@
      * 鐘舵��
      */
     private Integer crnSts;
+    private String statusType;
 
     /**
      * 宸ヤ綔鍙�
      */
-    private Integer wrkNo;
+    private Long wrkNo;
 
     /**
      * 寮傚父鐮�
diff --git a/src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java b/src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java
new file mode 100644
index 0000000..b21d5af
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.zy.asrs.entity.BasRgvErr;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface BasRgvErrMapper extends BaseMapper<BasRgvErr> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/BasRgvErrService.java b/src/main/java/com/zy/asrs/service/BasRgvErrService.java
new file mode 100644
index 0000000..a434c73
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/BasRgvErrService.java
@@ -0,0 +1,8 @@
+package com.zy.asrs.service;
+
+import com.baomidou.mybatisplus.service.IService;
+import com.zy.asrs.entity.BasRgvErr;
+
+public interface BasRgvErrService extends IService<BasRgvErr> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java
new file mode 100644
index 0000000..bd4b40d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.service.impl;
+
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.entity.BasRgvErr;
+import com.zy.asrs.mapper.BasRgvErrMapper;
+import com.zy.asrs.service.BasRgvErrService;
+import org.springframework.stereotype.Service;
+
+@Service("basRgvErrService")
+public class BasRgvErrServiceImpl extends ServiceImpl<BasRgvErrMapper, BasRgvErr> implements BasRgvErrService {
+
+}
diff --git a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
index 10b4588..45045ee 100644
--- a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
@@ -38,7 +38,7 @@
     /**
      * 浠诲姟鍙�
      */
-    public Short taskNo = 0;
+    public Long taskNo = 0L;
 
     /**
      * 鏈夌墿
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index 6c86c58..db77cf4 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -492,7 +492,7 @@
 //        taskProtocol.setRgvNo(slave.getId());
         Long[] array = new Long[11];
 //        array[0] = taskProtocol.getAckFinish1();
-        array[1] = taskProtocol.getTaskNo();
+//        array[1] = taskProtocol.getTaskNo();
 //        array[2] = taskProtocol.getTaskMode();
 //        array[4] = command.getDestinationStaNo();
 //        array[10] = taskProtocol.getCommand();
diff --git a/src/main/resources/mapper/BasRgvErrMapper.xml b/src/main/resources/mapper/BasRgvErrMapper.xml
new file mode 100644
index 0000000..bd1ddcb
--- /dev/null
+++ b/src/main/resources/mapper/BasRgvErrMapper.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zy.asrs.mapper.BasRgvErrMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.BasRgvErr">
+        <id column="ERROR_CODE" property="errorCode" />
+        <result column="ERR_NAME" property="errName" />
+        <result column="MODI_USER" property="modiUser" />
+        <result column="MODI_TIME" property="modiTime" />
+        <result column="APPE_USER" property="appeUser" />
+        <result column="APPE_TIME" property="appeTime" />
+
+    </resultMap>
+
+</mapper>

--
Gitblit v1.9.1