From 0e0cf6f88516ca1aad92a0f2df7129a95dc4d1fc Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期一, 10 四月 2023 13:48:45 +0800
Subject: [PATCH] 四向穿梭车界面+错误码

---
 src/main/java/com/zy/asrs/entity/BasShuttleErr.java                  |  127 +++++++++++++++++++++++++
 src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java        |   11 ++
 src/main/java/com/zy/core/model/command/ShuttleAssignCommand.java    |    5 -
 src/main/resources/mapper/BasShuttleErrMapper.xml                    |   22 ++++
 src/main/java/com/zy/asrs/controller/ShuttleController.java          |    4 
 src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java         |   36 ++++++-
 src/main/webapp/views/shuttle.html                                   |   31 +++--
 src/main/java/com/zy/asrs/mapper/BasShuttleErrMapper.java            |   14 ++
 src/main/java/com/zy/asrs/service/BasShuttleErrService.java          |   10 ++
 src/main/java/com/zy/asrs/service/impl/BasShuttleErrServiceImpl.java |   16 +++
 10 files changed, 251 insertions(+), 25 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/ShuttleController.java b/src/main/java/com/zy/asrs/controller/ShuttleController.java
index d8aab42..4288d5e 100644
--- a/src/main/java/com/zy/asrs/controller/ShuttleController.java
+++ b/src/main/java/com/zy/asrs/controller/ShuttleController.java
@@ -91,7 +91,7 @@
             vo.setBatteryPower(shuttleProtocol.getBatteryPower$() == null ? "" : shuttleProtocol.getBatteryPower$() + "%");//鐢垫睜鐢甸噺
             vo.setBatteryTemp(shuttleProtocol.getBatteryTemp$() == null ? "" : shuttleProtocol.getBatteryTemp$() + "掳");//鐢垫睜娓╁害
             if (!Cools.isEmpty(shuttleProtocol.getErrorCode())) {
-                vo.setErrorCode(shuttleProtocol.getErrorCodeType().desc);//閿欒缂栧彿
+                vo.setErrorCode(shuttleProtocol.getErrorCodeType());//閿欒缂栧彿
             }
             vo.setPlcOutputStatusIO(shuttleProtocol.getPlcOutputStatusIO());//Plc杈撳嚭鐘舵�両O
             if (!Cools.isEmpty(shuttleProtocol.getPlcOutputLift())) {
@@ -107,7 +107,7 @@
                 vo.setPlcOutputCharge(shuttleProtocol.getPlcOutputCharge());
             }
             if (!Cools.isEmpty(shuttleProtocol.getStatusErrorCode())) {
-                vo.setStatusErrorCode(shuttleProtocol.getStatusErrorCode());//閿欒淇℃伅鐮�
+                vo.setStatusErrorCode(shuttleProtocol.getStatusErrorCode$());//閿欒淇℃伅鐮�
             }
             vo.setPlcInputStatus(shuttleProtocol.getPlcInputStatus());//PLC杈撳叆鐘舵��
             vo.setCurrentOrBeforeCode(shuttleProtocol.getCurrentOrBeforeCode());//褰撳墠鎴栬�呬箣鍓嶈鍒扮殑浜岀淮鐮佸��
diff --git a/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java b/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java
index eaef679..e667541 100644
--- a/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java
+++ b/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java
@@ -1,5 +1,8 @@
 package com.zy.asrs.domain.vo;
 
+import com.core.common.SpringUtils;
+import com.zy.asrs.entity.BasShuttleErr;
+import com.zy.asrs.service.BasShuttleErrService;
 import com.zy.core.enums.ShuttleErrorCodeType;
 import com.zy.core.enums.ShuttleStatusType;
 import lombok.Data;
@@ -95,7 +98,7 @@
     /**
      * 閿欒淇℃伅鐮�
      */
-    private Short statusErrorCode;
+    private String statusErrorCode;
 
     /**
      * 閿欒淇℃伅鐮佹灇涓�
@@ -167,16 +170,37 @@
         return this.errorCodeType.desc;
     }
 
-    public void setStatusErrorCode(Short statusErrorCode) {
-        this.statusErrorCode = statusErrorCode;
-        this.errorCodeType = ShuttleErrorCodeType.get(statusErrorCode.intValue());
+    public void setErrorCode(Short errorCode) {
+        this.errorCode = ShuttleErrorCodeType.get(errorCode.intValue()).desc;
+        this.errorCodeType = ShuttleErrorCodeType.get(errorCode.intValue());
     }
 
-    public void setStatusErrorCode(ShuttleErrorCodeType type) {
-        this.statusErrorCode = type.id.shortValue();
+    public void setErrorCode(ShuttleErrorCodeType type) {
+        this.errorCode = type.desc;
         this.errorCodeType = type;
     }
 
+    public String getPlcOutputLift$() {
+        if (this.plcOutputLift == null) {
+            return null;
+        }
+        return this.plcOutputLift ? "Y" : "N";
+    }
+
+    public String getPlcOutputTransfer$() {
+        if (this.plcOutputTransfer == null) {
+            return null;
+        }
+        return this.plcOutputTransfer ? "Y" : "N";
+    }
+
+    public String getPlcOutputBrake$() {
+        if (this.plcOutputBrake == null) {
+            return null;
+        }
+        return this.plcOutputBrake ? "Y" : "N";
+    }
+
     public String getPlcOutputCharge$() {
         if (this.plcOutputCharge == null) {
             return null;
diff --git a/src/main/java/com/zy/asrs/entity/BasShuttleErr.java b/src/main/java/com/zy/asrs/entity/BasShuttleErr.java
new file mode 100644
index 0000000..a885129
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/BasShuttleErr.java
@@ -0,0 +1,127 @@
+package com.zy.asrs.entity;
+
+import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import org.springframework.format.annotation.DateTimeFormat;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@Data
+@TableName("asr_bas_shuttle_err")
+public class BasShuttleErr 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 BasShuttleErr() {}
+
+    public BasShuttleErr(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;
+    }
+
+//    BasShuttleErr basShuttleErr = new BasShuttleErr(
+//            null,    // 寮傚父鐮乕闈炵┖]
+//            null,    // 寮傚父
+//            null,    // 淇敼浜哄憳
+//            null,    // 淇敼鏃堕棿
+//            null,    // 娣诲姞浜哄憳
+//            null    // 娣诲姞鏃堕棿
+//    );
+
+    public String getModiUser$(){
+        UserService service = SpringUtils.getBean(UserService.class);
+        User user = service.selectById(this.modiUser);
+        if (!Cools.isEmpty(user)){
+            return String.valueOf(user.getUsername());
+        }
+        return null;
+    }
+
+    public String getModiTime$(){
+        if (Cools.isEmpty(this.modiTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime);
+    }
+
+    public String getAppeUser$(){
+        UserService service = SpringUtils.getBean(UserService.class);
+        User user = service.selectById(this.appeUser);
+        if (!Cools.isEmpty(user)){
+            return String.valueOf(user.getUsername());
+        }
+        return null;
+    }
+
+    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/mapper/BasShuttleErrMapper.java b/src/main/java/com/zy/asrs/mapper/BasShuttleErrMapper.java
new file mode 100644
index 0000000..6e83cfb
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/BasShuttleErrMapper.java
@@ -0,0 +1,14 @@
+package com.zy.asrs.mapper;
+
+import com.zy.asrs.entity.BasShuttleErr;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface BasShuttleErrMapper extends BaseMapper<BasShuttleErr> {
+
+    BasShuttleErr queryByCode(Integer errorCode);
+
+}
diff --git a/src/main/java/com/zy/asrs/service/BasShuttleErrService.java b/src/main/java/com/zy/asrs/service/BasShuttleErrService.java
new file mode 100644
index 0000000..81aa344
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/BasShuttleErrService.java
@@ -0,0 +1,10 @@
+package com.zy.asrs.service;
+
+import com.zy.asrs.entity.BasShuttleErr;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface BasShuttleErrService extends IService<BasShuttleErr> {
+
+    BasShuttleErr queryByCode(Integer errorCode);
+
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasShuttleErrServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasShuttleErrServiceImpl.java
new file mode 100644
index 0000000..7731ca4
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/BasShuttleErrServiceImpl.java
@@ -0,0 +1,16 @@
+package com.zy.asrs.service.impl;
+
+import com.zy.asrs.mapper.BasShuttleErrMapper;
+import com.zy.asrs.entity.BasShuttleErr;
+import com.zy.asrs.service.BasShuttleErrService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("basShuttleErrService")
+public class BasShuttleErrServiceImpl extends ServiceImpl<BasShuttleErrMapper, BasShuttleErr> implements BasShuttleErrService {
+
+    @Override
+    public BasShuttleErr queryByCode(Integer errorCode) {
+        return this.baseMapper.queryByCode(errorCode);
+    }
+}
diff --git a/src/main/java/com/zy/core/model/command/ShuttleAssignCommand.java b/src/main/java/com/zy/core/model/command/ShuttleAssignCommand.java
index 6914294..71ea49d 100644
--- a/src/main/java/com/zy/core/model/command/ShuttleAssignCommand.java
+++ b/src/main/java/com/zy/core/model/command/ShuttleAssignCommand.java
@@ -1,10 +1,5 @@
 package com.zy.core.model.command;
 
-import com.core.common.RadixTools;
-import com.core.common.SpringUtils;
-import com.zy.asrs.entity.LocMast;
-import com.zy.asrs.service.LocMastService;
-import com.zy.common.utils.CommonUtils;
 import lombok.Data;
 
 import java.util.ArrayList;
diff --git a/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java b/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java
index 4092680..ed473bd 100644
--- a/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java
@@ -1,7 +1,9 @@
 package com.zy.core.model.protocol;
 
 import com.core.common.SpringUtils;
+import com.zy.asrs.entity.BasShuttleErr;
 import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.service.BasShuttleErrService;
 import com.zy.asrs.service.BasShuttleService;
 import com.zy.asrs.service.LocMastService;
 import com.zy.core.News;
@@ -312,4 +314,13 @@
         return currentLocMast.getLocNo();
     }
 
+    public String getStatusErrorCode$() {
+        BasShuttleErrService basShuttleErrService = SpringUtils.getBean(BasShuttleErrService.class);
+        BasShuttleErr basShuttleErr = basShuttleErrService.queryByCode(this.statusErrorCode.intValue());
+        if (basShuttleErr == null) {
+            return null;
+        }
+        return basShuttleErr.getErrName();
+    }
+
 }
diff --git a/src/main/resources/mapper/BasShuttleErrMapper.xml b/src/main/resources/mapper/BasShuttleErrMapper.xml
new file mode 100644
index 0000000..192f37b
--- /dev/null
+++ b/src/main/resources/mapper/BasShuttleErrMapper.xml
@@ -0,0 +1,22 @@
+<?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.BasShuttleErrMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.BasShuttleErr">
+        <result 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>
+
+    <select id="queryByCode" resultMap="BaseResultMap">
+        select top 1 *
+        from asr_bas_shuttle_err
+        where error_code = #{errorCode}
+    </select>
+
+</mapper>
diff --git a/src/main/webapp/views/shuttle.html b/src/main/webapp/views/shuttle.html
index fdfe262..ce3a332 100644
--- a/src/main/webapp/views/shuttle.html
+++ b/src/main/webapp/views/shuttle.html
@@ -20,7 +20,7 @@
         <div style="padding: 10px;height: 100%">
             <!-- 鏃ュ織鐩戞帶鏉� -->
             <div class="log-board">
-                <div class="command-log" id="commandLogId">
+                <div class="command-log" id="commandLogId" style="width: 5%;">
 <!--                    <div data-shuttleNo="1" class="shuttle-command-item">-->
 <!--                        <label>1#</label>-->
 <!--                        <button class="demoBtn pos-btn">鏁版嵁缁存姢</button>-->
@@ -28,7 +28,7 @@
 <!--                    </div>-->
                 </div>
                 <!-- 鍫嗗灈鏈虹姸鎬佷綅淇℃伅 -->
-                <div class="shuttle-state">
+                <div class="shuttle-state" style="width: 95%;">
                     <table id="shuttle-state-table">
                         <thead>
                             <tr>
@@ -39,6 +39,9 @@
                                 <th>鐢甸噺</th>
                                 <th>鐢垫睜娓╁害</th>
                                 <th>閿欒缂栧彿</th>
+                                <th>plc杈撳嚭鐘舵�両O-椤跺崌浣�</th>
+                                <th>plc杈撳嚭鐘舵�両O-鎹㈠悜浣�</th>
+                                <th>plc杈撳嚭鐘舵�両O-鎶遍椄浣�</th>
                                 <th>plc杈撳嚭鐘舵�両O-鍏呯數浣�</th>
                                 <th>閿欒淇℃伅鐮�</th>
                                 <th>plc杈撳叆鐘舵��</th>
@@ -561,8 +564,8 @@
                         //娓叉煋鍥涘悜绌挎杞︽暟鎹淮鎶ゅ拰璁惧淇℃伅html
                         let shuttleCommandLogBox = '<div class="shuttle-command-item" data-shuttleNo="' + table[i - 1].shuttleNo + '">\n' +
                             '<label>' + table[i - 1].shuttleNo + '#</label>\n' +
-                            '<button class="demoBtn pos-btn">鏁版嵁缁存姢</button>\n' +
-                            '<button class="demoBtn mode-btn" id="mode-' + table[i - 1].shuttleNo + '">璁惧淇℃伅</button>\n' +
+                            // '<button class="demoBtn pos-btn">鏁版嵁缁存姢</button>\n' +
+                            // '<button class="demoBtn mode-btn" id="mode-' + table[i - 1].shuttleNo + '">璁惧淇℃伅</button>\n' +
                             '</div>'
                         $("#commandLogId").append(shuttleCommandLogBox);
                     }
@@ -599,14 +602,17 @@
                         setVal(tr.children("td").eq(4), table[i-1].batteryPower);
                         setVal(tr.children("td").eq(5), table[i-1].batteryTemp);
                         setVal(tr.children("td").eq(6), table[i-1].errorCode);
-                        setVal(tr.children("td").eq(7), table[i-1].plcOutputCharge$);//plcOutputStatusIO
-                        setVal(tr.children("td").eq(8), table[i-1].statusErrorCode);
-                        setVal(tr.children("td").eq(9), table[i-1].plcInputStatus);
-                        setVal(tr.children("td").eq(10), table[i-1].currentOrBeforeCode);
-                        setVal(tr.children("td").eq(11), table[i-1].codeOffsetX);
-                        setVal(tr.children("td").eq(12), table[i-1].codeOffsetY);
-                        setVal(tr.children("td").eq(13), table[i-1].currentVoltage);
-                        setVal(tr.children("td").eq(14), table[i-1].currentAnalogValue);
+                        setVal(tr.children("td").eq(7), table[i-1].plcOutputLift$);//椤跺崌浣�
+                        setVal(tr.children("td").eq(8), table[i-1].plcOutputTransfer$);//鎹㈠悜浣�
+                        setVal(tr.children("td").eq(9), table[i-1].plcOutputBrake$);//鎶遍椄浣�
+                        setVal(tr.children("td").eq(10), table[i-1].plcOutputCharge$);//鍏呯數浣�
+                        setVal(tr.children("td").eq(11), table[i-1].statusErrorCode);
+                        setVal(tr.children("td").eq(12), table[i-1].plcInputStatus);
+                        setVal(tr.children("td").eq(13), table[i-1].currentOrBeforeCode);
+                        setVal(tr.children("td").eq(14), table[i-1].codeOffsetX);
+                        setVal(tr.children("td").eq(15), table[i-1].codeOffsetY);
+                        setVal(tr.children("td").eq(16), table[i-1].currentVoltage);
+                        setVal(tr.children("td").eq(17), table[i-1].currentAnalogValue);
                     }
                 } else if (res.code === 403){
                     window.location.href = baseUrl+"/login";
@@ -719,6 +725,7 @@
                 "       <td></td>\n" +
                 "       <td></td>\n" +
                 "       <td></td>\n" +
+                "       <td></td>\n" +
                 "     </tr>\n";
         }
         $('#shuttle-state-table tbody').after(html);

--
Gitblit v1.9.1