From ca1971f52b62c18efa1af540431175b8e8ec7cd3 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 06 六月 2025 17:06:50 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/core/thread/RgvThread.java         |   16 +++++
 src/main/java/com/zy/asrs/controller/RgvController.java |   20 +++++-
 src/main/webapp/views/index.html                        |   93 +++++++++++++++++++++++++++++++
 src/main/java/com/zy/asrs/entity/BasRgvErrLog.java      |   31 ++++++++++
 src/main/java/com/zy/core/MainProcess.java              |    4 
 5 files changed, 158 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java
index a1fad69..2e64a3d 100644
--- a/src/main/java/com/zy/asrs/controller/RgvController.java
+++ b/src/main/java/com/zy/asrs/controller/RgvController.java
@@ -10,10 +10,7 @@
 import com.zy.asrs.domain.vo.*;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.mapper.BasRgvErrMapper;
-import com.zy.asrs.service.BasCircularShuttleService;
-import com.zy.asrs.service.BasDevpPositionService;
-import com.zy.asrs.service.BasRgvService;
-import com.zy.asrs.service.WrkMastService;
+import com.zy.asrs.service.*;
 import com.zy.asrs.service.impl.MainServiceImpl;
 import com.zy.asrs.utils.NumUtils;
 import com.zy.asrs.utils.Utils;
@@ -57,6 +54,8 @@
     private WrkMastService wrkMastService;
     @Autowired
     private BasRgvErrMapper basRgvErrMapper;
+    @Autowired
+    private BasRgvErrLogService basRgvErrLogService;
     @Autowired
     private BasRgvService basRgvService;
     @Autowired
@@ -491,6 +490,19 @@
         return R.ok().add(result);
     }
 
+    @PostMapping("/task/rgv/circular/shuttle/mast/position/data/v1")
+//    @ManagerAuth(memo = "浣滀笟淇℃伅")
+    public R rgvCircularShuttleV1(){
+        List<BasRgvErrLog> result = new ArrayList<>();
+        for (int i = 1 ; i<11; i ++){
+            BasRgvErrLog basRgvErrLog = basRgvErrLogService.selectOne(new EntityWrapper<BasRgvErrLog>().eq("rgv_no", i).orderBy("id", false));
+            if (basRgvErrLog!=null){
+                result.add(basRgvErrLog);
+            }
+        }
+        return R.ok().add(result);
+    }
+
 
     @PostMapping("/disable/rgv/status")
 //    @ManagerAuth(memo = "淇敼RGV鐘舵��")
diff --git a/src/main/java/com/zy/asrs/entity/BasRgvErrLog.java b/src/main/java/com/zy/asrs/entity/BasRgvErrLog.java
index 1d57f34..9cdeab9 100644
--- a/src/main/java/com/zy/asrs/entity/BasRgvErrLog.java
+++ b/src/main/java/com/zy/asrs/entity/BasRgvErrLog.java
@@ -5,11 +5,15 @@
 import com.baomidou.mybatisplus.annotations.TableField;
 import java.text.SimpleDateFormat;
 import java.util.Date;
+
+import com.core.common.SpringUtils;
+import com.zy.asrs.mapper.BasRgvErrMapper;
 import org.springframework.format.annotation.DateTimeFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import com.baomidou.mybatisplus.annotations.TableName;
 import java.io.Serializable;
+import java.util.List;
 
 @Data
 @TableName("asr_bas_rgv_err_log")
@@ -169,6 +173,33 @@
 
     public BasRgvErrLog() {}
 
+    public BasRgvErrLog(List<Integer> alarmLists , Short taskNo,Integer rgvNo) {
+        BasRgvErrMapper basRgvErrMapper = SpringUtils.getBean(BasRgvErrMapper.class);
+        StringBuilder alarmList = new StringBuilder();
+        for (Integer alarm : alarmLists){
+            BasRgvErr rgvErr = basRgvErrMapper.selectById(alarm);
+            alarmList.append((rgvErr==null || rgvErr.getErrName()==null)? "鏈煡寮傚父:"+alarm:rgvErr.getErrName());
+            if (alarm.equals(alarmLists.get(alarmLists.size() - 1))){
+                this.errCode = alarm;
+                break;
+            }
+            alarmList.append("---");
+        }
+        this.error = alarmList.toString();
+        Date now = new Date();
+        this.uuid = String.valueOf(now.getTime());
+        this.wrkNo = taskNo.intValue();
+        this.startTime = now;
+        this.endTime = now;
+        this.rgvNo = rgvNo;
+        this.status = 1;
+        this.createTime = now;
+        this.createBy = 9999L;
+        this.updateTime = now;
+        this.updateBy = 9999L;
+        this.memo = "寮傚父鑷姩璁板綍";
+    }
+
     public BasRgvErrLog(String uuid,Integer wrkNo,Date startTime,Date endTime,Long wrkSts,Integer ioType,Integer rgvNo,Integer plcNo,String locNo,Integer staNo,Integer sourceStaNo,String sourceLocNo,String barcode,Integer errCode,String error,Integer status,Date createTime,Long createBy,Date updateTime,Long updateBy,String memo) {
         this.uuid = uuid;
         this.wrkNo = wrkNo;
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 674ed7a..4c003d9 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -52,7 +52,7 @@
                 try {
                     // 闂撮殧
                     Thread.sleep(200);
-                    System.out.println("寮�濮嬶細"+new Date().getTime());
+//                    System.out.println("寮�濮嬶細"+new Date().getTime());
 
                     // 绯荤粺杩愯鐘舵�佸垽鏂�
                     if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
@@ -69,7 +69,7 @@
                     mainService.rgvCompleteWrkMastSta(autoZ);
                     //鏇存柊浣嶇疆淇℃伅
                     mainService.updateStePosition();
-                    System.out.println("缁撴潫锛�"+new Date().getTime());
+//                    System.out.println("缁撴潫锛�"+new Date().getTime());
 
 
                 } catch (Exception e) {
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index 4ebfcfd..be09198 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -8,7 +8,9 @@
 import com.core.common.DateUtils;
 import com.core.common.SpringUtils;
 import com.zy.asrs.entity.BasRgv;
+import com.zy.asrs.entity.BasRgvErrLog;
 import com.zy.asrs.entity.BasRgvOpt;
+import com.zy.asrs.service.BasRgvErrLogService;
 import com.zy.asrs.service.BasRgvOptService;
 import com.zy.asrs.service.BasRgvService;
 import com.zy.asrs.utils.NumUtils;
@@ -29,6 +31,7 @@
 import java.text.MessageFormat;
 import java.util.ArrayList;
 import java.util.Date;
+import java.util.HashSet;
 import java.util.List;
 
 /**
@@ -51,6 +54,7 @@
      */
     private boolean resetFlag2 = false;
     private boolean connectRgv = false;
+    private boolean alarmChangeSign = false;
 
     public RgvThread(RgvSlave slave) {
         this.slave = slave;
@@ -279,6 +283,7 @@
                         alarmList.add(alarmCount);
                     }
                 }
+                alarmChangeSign = new HashSet<>(alarmList).equals(new HashSet<>(rgvProtocol.getAlarmList()));
                 rgvProtocol.setAlarmList(alarmList);
 
 //                rgvProtocol.setRgvPos((long)NumUtils.GetRandomIntInRange(1737000));
@@ -295,6 +300,17 @@
                     if (!basRgvService.updateById(rgvProtocol.toSqlModel(basRgv))){
                         log.error("RGV plc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
                     }
+                    try{
+                        if (!alarmChangeSign && !alarmList.isEmpty()){
+                            BasRgvErrLogService basRgvErrLogService = SpringUtils.getBean(BasRgvErrLogService.class);
+                            BasRgvErrLog basRgvErrLog = new BasRgvErrLog(rgvProtocol.getAlarmList(), rgvProtocol.getTaskNo1(), rgvProtocol.getRgvNo());
+                            basRgvErrLogService.insert(basRgvErrLog);
+                        }
+                    } catch (Exception e){
+                        BasRgvOptService basRgvOptService = SpringUtils.getBean(BasRgvOptService.class);
+
+                    }
+
                 } catch (Exception ignore) {
 
                 }
diff --git a/src/main/webapp/views/index.html b/src/main/webapp/views/index.html
index 0c65f15..72ad13c 100644
--- a/src/main/webapp/views/index.html
+++ b/src/main/webapp/views/index.html
@@ -113,6 +113,19 @@
             z-index: 1000; /* 纭繚鍦ㄥ叾浠栧厓绱犱箣涓� */
         }
 
+        .task-bar-right1 {
+            position: fixed;
+            top: 5%;
+            /*transform: translateY(-50%);*/
+            width: 25%; /* 璁剧疆瀹藉害 */
+            background-color: rgba(255, 255, 255, 0); /* 鍗婇�忔槑鑳屾櫙 */
+
+            border-radius: 5px;
+            padding: 10px;
+            box-shadow: 0 0 10px rgba(0, 0, 0, 0);
+            z-index: 1000; /* 纭繚鍦ㄥ叾浠栧厓绱犱箣涓� */
+        }
+
         .task-bar-div1 {
             /*width: 100%; !* 璁剧疆瀹藉害 *!*/
             background-color: rgba(255, 255, 255, 0.8); /* 鍗婇�忔槑鑳屾櫙 */
@@ -372,6 +385,38 @@
                 </el-table>
             </div>
         </div>
+        <div class="task-bar-right1 right-task-bar">
+            <div>
+                <el-tooltip :content="'Switch value: ' + valueRight1" placement="top">
+                    <el-switch
+                            v-model="valueRight1"
+                            active-color="#13ce66"
+                            inactive-color="#ff4949"
+                            active-value="100"
+                            inactive-value="0">
+                    </el-switch>
+                </el-tooltip>
+            </div>
+            <div v-if="valueRight1 === '100' " class="task-bar-div1">
+                <el-table
+                        :data="tableDataRight1"
+                        style="width: 100%"
+                        :row-class-name="tableRowClassName">
+                    <el-table-column
+                            prop="rgvNo"
+                            label="灏忚溅鍙�">
+                    </el-table-column>
+                    <el-table-column
+                            prop="error"
+                            label="寮傚父">
+                    </el-table-column>
+                    <el-table-column
+                            prop="createTime$"
+                            label="璁板綍鏃ユ湡">
+                    </el-table-column>
+                </el-table>
+            </div>
+        </div>
     </div>
 
     <script>
@@ -381,6 +426,7 @@
                 activeNames: ['1'],
                 valueLeft: '0',
                 valueRight: '0',
+                valueRight1: '0',
                 licenseDay: '宸茶繃鏈�',
                 licenseDayI: 100,
                 valueSystem: false,
@@ -389,6 +435,7 @@
                 energyGatheringRing: [],
                 tableDataLeft: [],
                 tableDataRight: [],
+                tableDataRight1: [],
                 devpPos1:[
                     {dev_no: 116,pos:633980},
                     {dev_no: 117,pos:604043},
@@ -444,6 +491,7 @@
                     this.getTableDataTrack()
                     this.getTableDataLeft()
                     this.getTableDataRight()
+                    this.getTableDataRight1()
                     this.getValueSystem()
                     this.getLicenseDays()
 
@@ -453,6 +501,7 @@
                         this.getTableDataTrack()
                         this.getTableDataLeft()
                         this.getTableDataRight()
+                        this.getTableDataRight1()
                         this.getValueSystem()
                         this.getLicenseDays()
 
@@ -483,6 +532,18 @@
 
                         if (val.length >= 1){
                             this.handleChangeValueRight(1)
+                        }
+                    }
+                },
+                handleChange1(val) {
+                    console.log(val);
+                    if (val.length === 0){
+                        valueRight1 = '0';
+                    } else {
+                        console.log("2222"+val);
+
+                        if (val.length >= 1){
+                            this.handleChangeValueRight1(1)
                         }
                     }
                 },
@@ -555,6 +616,22 @@
                             valueRight = '100';
                         default:
                             valueRight = '0';
+                    }
+                },
+                handleChangeValueRight1(val) {
+                    console.log("33333"+val);
+
+                    switch (val){
+                        case 1:
+                            valueRight1 = '100';
+                        case 2:
+                            valueRight1 = '100';
+                        case 3:
+                            valueRight1 = '100';
+                        case 4:
+                            valueRight1 = '100';
+                        default:
+                            valueRight1 = '0';
                     }
                 },
                 tableRowClassName({row, rowIndex}) {
@@ -656,6 +733,22 @@
                         }
                     });
                 },
+                getTableDataRight1() {
+                    let that = this;
+                    $.ajax({
+                        url: baseUrl + "/rgv/task/rgv/circular/shuttle/mast/position/data/v1",
+                        headers: {
+                            'token': localStorage.getItem('token')
+                        },
+                        data: {},
+                        dataType: 'json',
+                        contentType: 'application/json;charset=UTF-8',
+                        method: 'post',
+                        success: function (res) {
+                            that.tableDataRight1 = res.data
+                        }
+                    });
+                },
                 getTableDataRgv() {
                     let that = this;
                     // that.tableDataRgv = busPsto

--
Gitblit v1.9.1