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