From a84e04a54fa499bcff8c9806df5c15e09ce3c504 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期五, 31 十月 2025 11:34:22 +0800
Subject: [PATCH] #小车地图bug修复,小车动画
---
src/main/java/com/zy/asrs/controller/SiteController.java | 3
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 89 ++++---
src/main/webapp/views/console.html | 144 +++++++++---
src/main/java/com/zy/asrs/mapper/BasRgvMapper.java | 3
src/main/java/com/zy/asrs/service/BasRgvService.java | 2
src/main/java/com/zy/asrs/service/impl/BasRgvServiceImpl.java | 6
src/main/java/com/zy/common/model/MatDto.java | 20 +
src/main/java/com/zy/core/thread/RgvThread.java | 1
src/main/resources/mapper/WrkDetlMapper.xml | 2
src/main/java/com/zy/asrs/controller/ConsoleController.java | 35 ++
src/main/resources/mapper/BasRgvMapper.xml | 5
src/main/java/com/zy/core/MainProcess.java | 31 --
src/main/java/com/zy/core/model/protocol/RgvProtocol.java | 23 +
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 294 +++++++++++++-----------
src/main/resources/application.yml | 27 -
15 files changed, 413 insertions(+), 272 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/ConsoleController.java b/src/main/java/com/zy/asrs/controller/ConsoleController.java
index b6d8c12..f2d16d8 100644
--- a/src/main/java/com/zy/asrs/controller/ConsoleController.java
+++ b/src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -12,13 +12,11 @@
import com.zy.asrs.domain.enums.SiteStatusType;
import com.zy.asrs.domain.param.SystemSwitchParam;
import com.zy.asrs.domain.vo.*;
-import com.zy.asrs.entity.BasCrnError;
-import com.zy.asrs.entity.BasDevp;
-import com.zy.asrs.entity.BasRgv;
-import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.entity.*;
import com.zy.asrs.mapper.BasCrnErrorMapper;
import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.service.BasRgvMapService;
import com.zy.asrs.service.BasRgvService;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.CodeRes;
@@ -66,6 +64,8 @@
private BasCrnErrorMapper basCrnErrorMapper;
@Autowired
private BasRgvService basRgvService;
+ @Autowired
+ private BasRgvMapService basRgvMapService;
@PostMapping("/system/running/status")
@ManagerAuth(memo = "绯荤粺杩愯鐘舵��")
@@ -113,8 +113,31 @@
StaProtocol staProtocol = entry.getValue();
vo.setSiteId(String.valueOf(entry.getKey())); // 绔欑偣缂栧彿
for (BasRgv basRgv: basRgvs){
- if (basRgv.getRgvNo().equals(entry.getKey()) ){
- staProtocol.setWorkNo(basRgv.getWrkNo1());
+ BasRgvMap basRgvMap = basRgvMapService.selectByRgvNo(basRgv.getRgvNo());
+ if(basRgv.getRgvNo() == 1 ){
+ if(entry.getKey() == 1){
+ staProtocol.setWorkNo(basRgv.getWrkNo1());
+ staProtocol.setNearbySta(String.valueOf(basRgvMap.getNowRoute()));
+ staProtocol.setAutoing(basRgv.getStatus() == 1);
+ staProtocol.setLoading(staProtocol.getWorkNo()>0);
+ }else if(entry.getKey() == 2){
+ staProtocol.setWorkNo(basRgv.getWrkNo2());
+ staProtocol.setNearbySta(String.valueOf(basRgvMap.getNowRoute()));
+ staProtocol.setAutoing(basRgv.getStatus() == 1);
+ staProtocol.setLoading(staProtocol.getWorkNo()>0);
+ }
+ }else if(basRgv.getRgvNo() == 2){
+ if(entry.getKey() == 3){
+ staProtocol.setWorkNo(basRgv.getWrkNo1());
+ staProtocol.setNearbySta(String.valueOf(basRgvMap.getNowRoute()));
+ staProtocol.setAutoing(basRgv.getStatus() == 1);
+ staProtocol.setLoading(staProtocol.getWorkNo()>0);
+ }else if(entry.getKey() == 4){
+ staProtocol.setWorkNo(basRgv.getWrkNo2());
+ staProtocol.setNearbySta(String.valueOf(basRgvMap.getNowRoute()));
+ staProtocol.setAutoing(basRgv.getStatus() == 1);
+ staProtocol.setLoading(staProtocol.getWorkNo()>0);
+ }
}
}
vo.setWorkNo(staProtocol.getWorkNo()); // 宸ヤ綔鍙�
diff --git a/src/main/java/com/zy/asrs/controller/SiteController.java b/src/main/java/com/zy/asrs/controller/SiteController.java
index 06aa577..46d24ad 100644
--- a/src/main/java/com/zy/asrs/controller/SiteController.java
+++ b/src/main/java/com/zy/asrs/controller/SiteController.java
@@ -71,6 +71,9 @@
// 鎸佷箙鏁版嵁
List<BasDevp> basDevps = basDevpService.selectList(new EntityWrapper<BasDevp>().orderBy("dev_no"));
for (BasDevp devp : basDevps) {
+ if(devp.getDevNo() <5){
+ continue;
+ }
SiteTableVo vo = new SiteTableVo();
vo.setDevNo(devp.getDevNo()); // 绔欑偣缂栧彿
vo.setWorkNo(devp.getWrkNo());
diff --git a/src/main/java/com/zy/asrs/mapper/BasRgvMapper.java b/src/main/java/com/zy/asrs/mapper/BasRgvMapper.java
index b426ee2..2ca6013 100644
--- a/src/main/java/com/zy/asrs/mapper/BasRgvMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/BasRgvMapper.java
@@ -2,11 +2,14 @@
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.zy.asrs.entity.BasRgv;
+import com.zy.asrs.entity.BasRgvMap;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@Mapper
@Repository
public interface BasRgvMapper extends BaseMapper<BasRgv> {
+ BasRgv selectByRgvNo(@Param("rgvNo") Integer rgvNo);
}
diff --git a/src/main/java/com/zy/asrs/service/BasRgvService.java b/src/main/java/com/zy/asrs/service/BasRgvService.java
index 69e0167..c7ca113 100644
--- a/src/main/java/com/zy/asrs/service/BasRgvService.java
+++ b/src/main/java/com/zy/asrs/service/BasRgvService.java
@@ -2,8 +2,10 @@
import com.baomidou.mybatisplus.service.IService;
import com.zy.asrs.entity.BasRgv;
+import com.zy.asrs.entity.BasRgvMap;
import com.zy.common.utils.RedisUtil;
public interface BasRgvService extends IService<BasRgv> {
+ BasRgv selectByRgvNo(Integer rgvNo);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasRgvServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasRgvServiceImpl.java
index 0fbdc7c..2202cc8 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasRgvServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasRgvServiceImpl.java
@@ -2,11 +2,15 @@
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.zy.asrs.entity.BasRgv;
+import com.zy.asrs.entity.BasRgvMap;
import com.zy.asrs.mapper.BasRgvMapper;
import com.zy.asrs.service.BasRgvService;
import org.springframework.stereotype.Service;
@Service("basRgvService")
public class BasRgvServiceImpl extends ServiceImpl<BasRgvMapper, BasRgv> implements BasRgvService {
-
+ @Override
+ public BasRgv selectByRgvNo(Integer rgvNo) {
+ return this.baseMapper.selectByRgvNo(rgvNo);
+ }
}
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 5789190..3a4dedc 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1079,7 +1079,7 @@
//mark - 3 - ....
this.locToLoc(crn, crnProtocol,mark);
//棰勮皟搴�
-// this.crnRebackHp(crnProtocol, crnThread);
+ this.crnRebackHp(crnProtocol, crnThread);
}
// News.infoNoLog(""+mark+" - 0"+" - 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂鎵ц瀹屾垚");
@@ -1095,11 +1095,11 @@
}
int x=1;
switch (crnProtocol.getCrnNo()){
- case 1: x =1; break;
- case 2: x =3; break;
- case 3: x =5; break;
- case 4: x =7; break;
- case 5: x =9; break;
+ case 1: x =2; break;
+ case 2: x =6; break;
+ case 3: x =11; break;
+ case 4: x =14; break;
+ case 5: x =18; break;
}
// 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊�3,12
@@ -1124,7 +1124,7 @@
crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣�
crnCommand.setTaskMode(CrnTaskModeType.X_MOVE); // 浠诲姟妯″紡: 鍥炲師鐐�
crnCommand.setSourcePosX((short) x); // 婧愬簱浣嶆帓
- crnCommand.setSourcePosY((short) 1); // 婧愬簱浣嶅垪
+ crnCommand.setSourcePosY((short) 52); // 婧愬簱浣嶅垪
crnCommand.setSourcePosZ((short) 1); // 婧愬簱浣嶅眰
crnCommand.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺�
crnCommand.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒�
@@ -1900,31 +1900,33 @@
News.warnNoLog("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿={}", crnThread.getCrnProtocol().getCrnNo());
crnThread.setResetFlag(true);
}
- } else if (crnProtocol.getTaskNo() == 9996) {//鐩樼偣鍏ュ簱琛旀帴
- // 鐘舵�侊細绛夊緟纭 骞朵笖 浠诲姟瀹屾垚浣� = 1
- if (crnProtocol.statusType == CrnStatusType.WAITING && crnProtocol.getTaskNo() != 0) {
- News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛屽宸ヤ綔妗g殑瀹屾垚鎿嶄綔锛屼换鍔″彿:" + crnProtocol.getTaskNo());
-
- // 鑾峰彇鍏ュ簱寰呯‘璁ゅ伐浣滄。
- WrkMast wrkMast = wrkMastMapper.selectPakInStep3(crnProtocol.getTaskNo().intValue());
- // 鍏ュ簱 + 搴撲綅杞Щ ==> 4.鍏ュ簱瀹屾垚
- if (wrkMast.getWrkSts() == 3 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)) {
- wrkMast.setWrkSts(4L);
- } else {
- continue;
- }
- Date now = new Date();
- wrkMast.setCrnEndTime(now);
- wrkMast.setModiTime(now);
- // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満
- if (wrkMastMapper.updateById(wrkMast) > 0) {
- // 鍫嗗灈鏈哄浣�
- log.error(wrkMast.getWrkNo() + "浠诲姟淇敼鐘舵��4鎴愬姛锛屽浣嶅爢鍨涙満={}", crnThread.getCrnProtocol().getCrnNo());
- News.warnNoLog("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿={}", crnThread.getCrnProtocol().getCrnNo());
- crnThread.setResetFlag(true);
- }
- }
- }else{
+ }
+// else if (crnProtocol.getTaskNo() == 9996) {//鐩樼偣鍏ュ簱琛旀帴
+// // 鐘舵�侊細绛夊緟纭 骞朵笖 浠诲姟瀹屾垚浣� = 1
+// if (crnProtocol.statusType == CrnStatusType.WAITING && crnProtocol.getTaskNo() != 0) {
+// News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛屽宸ヤ綔妗g殑瀹屾垚鎿嶄綔锛屼换鍔″彿:" + crnProtocol.getTaskNo());
+//
+// // 鑾峰彇鍏ュ簱寰呯‘璁ゅ伐浣滄。
+// WrkMast wrkMast = wrkMastMapper.selectPakInStep3(crnProtocol.getTaskNo().intValue());
+// // 鍏ュ簱 + 搴撲綅杞Щ ==> 4.鍏ュ簱瀹屾垚
+// if (wrkMast.getWrkSts() == 3 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)) {
+// wrkMast.setWrkSts(4L);
+// } else {
+// continue;
+// }
+// Date now = new Date();
+// wrkMast.setCrnEndTime(now);
+// wrkMast.setModiTime(now);
+// // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満
+// if (wrkMastMapper.updateById(wrkMast) > 0) {
+// // 鍫嗗灈鏈哄浣�
+// log.error(wrkMast.getWrkNo() + "浠诲姟淇敼鐘舵��4鎴愬姛锛屽浣嶅爢鍨涙満={}", crnThread.getCrnProtocol().getCrnNo());
+// News.warnNoLog("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿={}", crnThread.getCrnProtocol().getCrnNo());
+// crnThread.setResetFlag(true);
+// }
+// }
+// }
+ else{
// 鐘舵�侊細绛夊緟纭 骞朵笖 浠诲姟瀹屾垚浣� = 1
if (crnProtocol.statusType == CrnStatusType.WAITING && crnProtocol.getTaskNo() != 0) {
News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛屽宸ヤ綔妗g殑瀹屾垚鎿嶄綔锛屼换鍔″彿:" + crnProtocol.getTaskNo());
@@ -2218,7 +2220,12 @@
}
// 鑾峰彇宸ヤ綔妗f暟鎹�
WrkMast wrkMast = wrkMastMapper.selectById(staProtocol.getWorkNo());
- if (null == wrkMast) { continue; }
+ if (null == wrkMast) {
+ if(staProtocol.getWorkNo() > 9999){ //寮傚父閫�鍑�
+ MessageQueue.offer(SlaveType.Led, 2, new Task(3, "寮傚父閫�鍑�"));
+ }
+ continue;
+ }
wrkMasts.add(wrkMast);
// 缁勮鍛戒护
LedCommand ledCommand = new LedCommand();
@@ -2268,13 +2275,13 @@
total = locDetl.getAnfme();
}
if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 1) {
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
}
if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) {
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
}
if (wrkMast.getIoType() == 107) {
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
}
});
}
@@ -3322,7 +3329,7 @@
continue;
}
BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
- basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
+ basRgvMap.setNowRoute(rgvProtocol.getRgvNo() == 1?rgvProtocol.getRgvPosI1():rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
Integer workNo = 0;
if(rgvProtocol.getTaskNo2() > 9999|| rgvProtocol.getTaskNo1() > 9999){
workNo = rgvProtocol.getTaskNo1() !=0 ? rgvProtocol.getTaskNo1() : rgvProtocol.getTaskNo2();
@@ -3388,7 +3395,7 @@
continue;
}
BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
- basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
+ basRgvMap.setNowRoute(rgvProtocol.getRgvNo() == 1?rgvProtocol.getRgvPosI1():rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
Integer workNo = 0;
if(basRgv.getPakToCrn().equals("1")){
workNo = rgvProtocol.getTaskNo1() !=0 ? rgvProtocol.getTaskNo1():rgvProtocol.getTaskNo2(); //姝e父鎯呭喌鍑哄簱鏀捐揣浼樺厛宸ヤ綅1鏀�
@@ -3639,7 +3646,7 @@
case 1: route = RouteUtils.getRouteOne();break;
case 2: route = RouteUtils.getRouteTwo();break;
}
- basRgvMap.setNowRoute(rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
+ basRgvMap.setNowRoute(rgvProtocol.getRgvNo() == 1?rgvProtocol.getRgvPosI1():rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
basRgvMapService.updateById(basRgvMap);
WrkMastSta wrkMastSta = wrkMastStaMapper.selectNoInterfere(route, route, Long.valueOf(staProtocol.getWorkNo()));//鏍规嵁绔欑偣宸ヤ綔鍙峰拰灏忚溅宸ヤ綔鑼冨洿妫�绱换鍔℃。
if( null == wrkMastSta ) {
@@ -3765,7 +3772,7 @@
case 1: route = RouteUtils.getRouteOne();break;
case 2: route = RouteUtils.getRouteTwo();break;
}
- basRgvMap.setNowRoute(rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
+ basRgvMap.setNowRoute(rgvProtocol.getRgvNo() == 1?rgvProtocol.getRgvPosI1():rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
basRgvMapService.updateById(basRgvMap);
WrkMastSta wrkMastSta = wrkMastStaMapper.selectNoInterfere(route, route, Long.valueOf(staProtocol.getWorkNo()));//鏍规嵁绔欑偣宸ヤ綔鍙峰拰灏忚溅宸ヤ綔鑼冨洿妫�绱换鍔℃。
if( null == wrkMastSta ) {
@@ -3900,7 +3907,7 @@
case 1: route = RouteUtils.getRouteOne();break;
case 2: route = RouteUtils.getRouteTwo();break;
}
- basRgvMap.setNowRoute(rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
+ basRgvMap.setNowRoute(rgvProtocol.getRgvNo() == 1?rgvProtocol.getRgvPosI1():rgvProtocol.getRgvPosI2()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
basRgvMapService.updateById(basRgvMap);
WrkMastSta wrkMastSta = wrkMastStaMapper.selectNoInterfere(route, route, Long.valueOf(staProtocol.getWorkNo()));//鏍规嵁绔欑偣宸ヤ綔鍙峰拰灏忚溅宸ヤ綔鑼冨洿妫�绱换鍔℃。
if( null == wrkMastSta ) {
diff --git a/src/main/java/com/zy/common/model/MatDto.java b/src/main/java/com/zy/common/model/MatDto.java
index 99a2f28..5318db3 100644
--- a/src/main/java/com/zy/common/model/MatDto.java
+++ b/src/main/java/com/zy/common/model/MatDto.java
@@ -18,6 +18,16 @@
private String specs;
+ //鍗曟嵁缂栧彿
+ private String orderNo;
+
+ //瀹㈡埛PO
+ private String supp;
+
+ //鏉$爜UPC
+ private String sku;
+
+
// 瀹㈡埛淇℃伅
private String manu;
@@ -42,6 +52,16 @@
this.total = total;
}
+ public MatDto(String matnr, String maknx, String orderNo, String supp, String sku,Double count, Double total) {
+ this.matnr = matnr;
+ this.maknx = maknx;
+ this.orderNo = orderNo;
+ this.supp = supp;
+ this.sku = sku;
+ this.count = count;
+ this.total = total;
+ }
+
public MatDto(String matNo, String maknx, Double count) {
this.matnr = matNo;
this.maknx = maknx;
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 96fb0f9..ae31c63 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -86,7 +86,7 @@
// 鍏ュ簱 ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐�
mainService.storeEmptyPlt(8);
// 鍑哄簱 ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣�
-// mainService.ledExecute(9);
+ mainService.ledExecute(9);
// 鍏朵粬 ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅
mainService.ledReset();
//鍫嗗灈鏈鸿鎺ヤ换鍔$敓鎴�
@@ -103,32 +103,6 @@
}
i++;
- // 鍏朵粬 ===>> 鍏ュ嚭搴撴ā寮忓垏鎹�
-// i++;
-// if (i > 1) {
-// mainService.ioConvert();
-// i = 0;
-// }
-
- /////////////////////////////////////RGV璋冨害/////////////////////////////////////
-//
- //瀹屾垚灏忚溅浠诲姟
-// mainService.rgvCompleteWrkMastSta();
-
-// //鎵ц灏忚溅绌烘澘鎼繍浠诲姟
-// mainService.rgvRunWrkMastEmptyStaPut();//鏀�
-// mainService.rgvRunWrkMastEmptyStaTake();//鍙�
-// if (rgcWrk){
-// //鎵ц灏忚溅璐х墿鎼繍浠诲姟
-// mainService.rgvRunWrkMastFullSta();
-// rgcWrk = false;
-// }else {
-// mainService.rgvRunWrkMastEmptyStaAvoidance();//閬胯
-// rgcWrk = true;
-// }
-
-
- /////////////////////////////////////RGV璋冨害/////////////////////////////////////
/////////////////////////////////////RGV璋冨害/////////////////////////////////////
k++;
@@ -146,9 +120,6 @@
// //瀹屾垚灏忚溅浠诲姟
mainService.rgvTaskComplete();
- //宸ヤ綅绉诲姩
-// mainService.rgvStaMove();
- /////////////////////////////////////RGV璋冨害/////////////////////////////////////
} catch (Exception e) {
e.printStackTrace();
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 d6d78f9..be7cb68 100644
--- a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
@@ -430,7 +430,7 @@
return map.get(RgvPos);
}
- public Integer getRgvPosI2() {
+ public Integer getRgvPosI1() {
// key: 绔欑偣鍙� value: 鍩哄噯鐗╃悊浣嶇疆
Map<Integer, Integer> posMap = new HashMap<>();
posMap.put(1004, 6534);
@@ -442,6 +442,25 @@
posMap.put(1024, 219684);
posMap.put(1028, 246724);
posMap.put(1031, 288194);
+ posMap.put(1035, 314954);
+
+
+
+ int tolerance = 200; // 鍏佽璇樊鑼冨洿
+
+ for (Map.Entry<Integer, Integer> entry : posMap.entrySet()) {
+ int site = entry.getKey();
+ int basePos = entry.getValue();
+ if (Math.abs(RgvPos - basePos) <= tolerance) {
+ return site;
+ }
+ }
+
+ return 0; // 娌″尮閰嶅埌绔欑偣
+ }
+ public Integer getRgvPosI2() {
+ // key: 绔欑偣鍙� value: 鍩哄噯鐗╃悊浣嶇疆
+ Map<Integer, Integer> posMap = new HashMap<>();
posMap.put(2003, 314954);
posMap.put(2006, 288094);
posMap.put(2009, 246574);
@@ -452,8 +471,6 @@
posMap.put(2024, 75174);
posMap.put(2027, 33748);
posMap.put(2030, 6449);
-
-
int tolerance = 200; // 鍏佽璇樊鑼冨洿
for (Map.Entry<Integer, Integer> entry : posMap.entrySet()) {
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index b1f419d..58dbf95 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -279,7 +279,6 @@
if (null == rgvProtocol) {
rgvProtocol = new RgvProtocol();
rgvProtocol.setRgvNo(siemensNet.getByteTransform().TransInt16(result.Content, 0));
-
}
rgvProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 2));
rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransInt32(result.Content, 4));
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index cff7ba2..22f833c 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -10,6 +10,8 @@
import com.core.common.SpringUtils;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
+import com.zy.asrs.mapper.BasRgvMapMapper;
+import com.zy.asrs.mapper.BasRgvMapper;
import com.zy.asrs.service.*;
import com.zy.common.utils.News;
import com.zy.core.DevpThread;
@@ -24,6 +26,7 @@
import com.zy.core.model.protocol.StaProtocol;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.nio.charset.StandardCharsets;
import java.text.MessageFormat;
@@ -37,7 +40,8 @@
@Data
@Slf4j
public class SiemensDevpThread implements Runnable, DevpThread {
-
+ private BasRgvMapMapper basRgvMapMapper;
+ private BasRgvMapper basRgvMapper;
private DevpSlave slave;
private SiemensS7Net siemensS7Net;
private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
@@ -47,6 +51,7 @@
//
// }};
public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
+ add(1);add(2);//灏忚溅绔欑偣
add(1001);add(1002);add(1004);
add(1005);add(1007);
add(1008);add(1010);
@@ -67,6 +72,7 @@
}};
public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{
+ add(3);add(4);
add(2001);add(2003);
add(2004);add(2006);
add(2007);add(2009);
@@ -442,7 +448,7 @@
OperateResultExOne<byte[]> result4 = null;//1054-1079
OperateResultExOne<byte[]> result5 = null;//1080-1110
OperateResultExOne<byte[]> resultErr = null;
- if(staNoSize == 100){
+ if(staNoSize == 102){
result1 = siemensS7Net.Read("DB100.0", (short) (2768));//1001-1028
result2 = siemensS7Net.Read("DB101.0", (short) (1268));//1029-1037
result3 = siemensS7Net.Read("DB104.0", (short) (1268));//1042-1053
@@ -470,7 +476,7 @@
station.put(siteId, staProtocol);
}
staProtocol.setSiteId(siteId);
- if (staNoSize == 100) {
+ if (staNoSize == 102) {
if (siteId < 1029) {
result = result1;
} else if (siteId < 1042) {
@@ -491,152 +497,168 @@
result = result3;
}
}
- // 鑾峰彇璇ョ珯鐐瑰搴旂殑鍋忕Щ閲�
- Integer offset = siteOffsetMap.get(siteId);
- if (offset == null) {
- continue; // 濡傛灉娌″畾涔夊亸绉婚噺锛岃烦杩�
- }
- Integer offset2 = getOffsetBySiteId(siteId);//鐗规畩鍋忕Щ閲忚绠�
- Integer offset3 = getOffsetBySiteId2(siteId);
- Integer offsetSign = siteOffsetMapSign.get(siteId);
- if(siteId == 1040){
- boolean[] full = siemensS7Net.getByteTransform().TransBool(result.Content, offset, 2);
- staProtocol.setFull(full[0]);
- }
- staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2)); // 宸ヤ綔鍙�
- staProtocol.setStaNo((short)siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 12)); // 鐩爣绔�
- staProtocol.setBarcode(String.valueOf(siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 16))); //鏉$爜
+// if(siteId < 5){
+// int rgvNo = 2;
+// if(siteId<3){
+// rgvNo = 1;
+// }
+//// BasRgv basRgv = basRgvMapper.selectByRgvNo(rgvNo);
+// BasRgvMap basRgvMap = basRgvMapMapper.selectByRgvNo(rgvNo);
+// if(siteId%2 != 0){
+//// staProtocol.setWorkNo(basRgv.getWrkNo1());
+// }else{
+//// staProtocol.setWorkNo(basRgv.getWrkNo2());
+// }
+//
+// }else{
+ // 鑾峰彇璇ョ珯鐐瑰搴旂殑鍋忕Щ閲�
+ Integer offset = siteOffsetMap.get(siteId);
+ if (offset == null) {
+ continue; // 濡傛灉娌″畾涔夊亸绉婚噺锛岃烦杩�
+ }
+ Integer offset2 = getOffsetBySiteId(siteId);//鐗规畩鍋忕Щ閲忚绠�
+ Integer offset3 = getOffsetBySiteId2(siteId);
+ Integer offsetSign = siteOffsetMapSign.get(siteId);
+ if(siteId == 1040){
+ boolean[] full = siemensS7Net.getByteTransform().TransBool(result.Content, offset, 2);
+ staProtocol.setFull(full[0]);
+ }
+ staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2)); // 宸ヤ綔鍙�
+ staProtocol.setStaNo((short)siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 12)); // 鐩爣绔�
+ staProtocol.setBarcode(String.valueOf(siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 16))); //鏉$爜
- if(specialSites2.contains(siteId)){
- staProtocol.setStaNo((short)siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 48)); // 鐩爣绔�
- staProtocol.setBarcode(String.valueOf(siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 52))); //鏉$爜
- }
- if(staNosErrList.contains(siteId)){
- Integer offsetErr = siteErrOffsetMap.get(siteId);
- boolean[] statusErr = siemensS7Net.getByteTransform().TransBool(resultErr.Content, offsetErr, 2);
- staProtocol.setFrontErr(statusErr[2]);
- staProtocol.setBackErr(statusErr[3]);
- staProtocol.setHighErr(statusErr[5]);
- staProtocol.setLeftErr(statusErr[11]);
- staProtocol.setRightErr(statusErr[12]);
+ if(specialSites2.contains(siteId)){
+ staProtocol.setStaNo((short)siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 48)); // 鐩爣绔�
+ staProtocol.setBarcode(String.valueOf(siemensS7Net.getByteTransform().TransInt32(result.Content, offset + offset2 + 52))); //鏉$爜
+ }
+ if(staNosErrList.contains(siteId)){
+ Integer offsetErr = siteErrOffsetMap.get(siteId);
+ boolean[] statusErr = siemensS7Net.getByteTransform().TransBool(resultErr.Content, offsetErr, 2);
+ staProtocol.setFrontErr(statusErr[2]);
+ staProtocol.setBackErr(statusErr[3]);
+ staProtocol.setHighErr(statusErr[5]);
+ staProtocol.setLeftErr(statusErr[11]);
+ staProtocol.setRightErr(statusErr[12]);
// 鍙栧嚭454~458浣嶇疆鐨�5涓瓧鑺�
- byte[] bytes = Arrays.copyOfRange(resultErr.Content, (offsetErr + 14), (offsetErr + 19));
+ byte[] bytes = Arrays.copyOfRange(resultErr.Content, (offsetErr + 14), (offsetErr + 19));
// 杞崲鎴愬瓧绗︿覆锛圫7閲孋HAR鏄崟瀛楄妭缂栫爜锛岀洿鎺SCII鍗冲彲锛�
- String plcStr = new String(bytes, StandardCharsets.US_ASCII).trim();
+ String plcStr = new String(bytes, StandardCharsets.US_ASCII).trim();
// 鍒ゆ柇鏄惁绛変簬 "error"
- staProtocol.setBarcodeErr("error".equalsIgnoreCase(plcStr));
- }
+ staProtocol.setBarcodeErr("error".equalsIgnoreCase(plcStr));
+ }
- boolean[] status = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3, 1);
- staProtocol.setAutoing(!status[0]); // 鑷姩
- boolean[] status1 = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3 - 4, 3);
- boolean[] statusErr = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3 - 8, 3);
- boolean[] statusSign = siemensS7Net.getByteTransform().TransBool(resultErr.Content, offsetSign, 3);
- boolean loading = false;
- if(!status1[0])
- {
- loading = true;
- }
- staProtocol.setLoading(loading); // 鏈夌墿
+ boolean[] status = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3, 1);
+ staProtocol.setAutoing(!status[0]); // 鑷姩
+ boolean[] status1 = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3 - 4, 3);
+ boolean[] statusErr = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3 - 8, 3);
+ boolean[] statusSign = siemensS7Net.getByteTransform().TransBool(resultErr.Content, offsetSign, 3);
+ boolean loading = false;
+ if(!status1[0])
+ {
+ loading = true;
+ }
+ staProtocol.setLoading(loading); // 鏈夌墿
- staProtocol.setInEnable(status1[2]); // 鍙叆
- staProtocol.setOutEnable(status1[2]);// 鍙嚭
- staProtocol.setErr(status1[6]);
+ staProtocol.setInEnable(status1[2]); // 鍙叆
+ staProtocol.setOutEnable(status1[2]);// 鍙嚭
+ staProtocol.setErr(status1[6]);
- //鎶ヨ
- staProtocol.setPassTimeOut(statusErr[0]);
- staProtocol.setObjectNoIdError(statusErr[1]);
- staProtocol.setIdNoObjectError(statusErr[2]);
- staProtocol.setLmfrError(statusErr[3]);
- staProtocol.setLiftError(statusErr[4]);
- staProtocol.setDlfrError(statusErr[5]);
- staProtocol.setDmfrError(statusErr[6]);
- staProtocol.setVfdError(statusErr[7]);
- staProtocol.setSrvError(statusErr[8]);
- staProtocol.setRes1(statusErr[9]);
- staProtocol.setRes2(statusErr[10]);
- staProtocol.setRes3(statusErr[11]);
- staProtocol.setCommunicationTimeOut(statusErr[12]);
- staProtocol.setParameterIncompleteError(statusErr[13]);
- staProtocol.setDataNotClear(statusErr[14]);
- staProtocol.setSetParameterError(statusErr[15]);
- staProtocol.setRes4(statusErr[16]);
- staProtocol.setRes5(statusErr[17]);
- staProtocol.setDataError(statusErr[18]);
+ //鎶ヨ
+ staProtocol.setPassTimeOut(statusErr[0]);
+ staProtocol.setObjectNoIdError(statusErr[1]);
+ staProtocol.setIdNoObjectError(statusErr[2]);
+ staProtocol.setLmfrError(statusErr[3]);
+ staProtocol.setLiftError(statusErr[4]);
+ staProtocol.setDlfrError(statusErr[5]);
+ staProtocol.setDmfrError(statusErr[6]);
+ staProtocol.setVfdError(statusErr[7]);
+ staProtocol.setSrvError(statusErr[8]);
+ staProtocol.setRes1(statusErr[9]);
+ staProtocol.setRes2(statusErr[10]);
+ staProtocol.setRes3(statusErr[11]);
+ staProtocol.setCommunicationTimeOut(statusErr[12]);
+ staProtocol.setParameterIncompleteError(statusErr[13]);
+ staProtocol.setDataNotClear(statusErr[14]);
+ staProtocol.setSetParameterError(statusErr[15]);
+ staProtocol.setRes4(statusErr[16]);
+ staProtocol.setRes5(statusErr[17]);
+ staProtocol.setDataError(statusErr[18]);
- //淇″彿
- staProtocol.setSensorGArrive(statusSign[0]);
- staProtocol.setSensorGDec(statusSign[1]);
- staProtocol.setSensorGArrive2(statusSign[2]);
- staProtocol.setSensorLimit(statusSign[3]);
- staProtocol.setEmergency(statusSign[4]);
- staProtocol.setSensorGLeave(statusSign[5]);
- staProtocol.setSensorGLeave2(statusSign[6]);
- staProtocol.setSensorCUp(statusSign[7]);
- staProtocol.setSensorCDown(statusSign[8]);
- staProtocol.setLiftMotorFr(statusSign[9]);
- staProtocol.setLineMotorFr(statusSign[10]);
- staProtocol.setTranMotorFr(statusSign[11]);
- staProtocol.setRst1(statusSign[12]);
- staProtocol.setRst2(statusSign[13]);
- staProtocol.setRst3(statusSign[14]);
- staProtocol.setRst4(statusSign[15]);
- staProtocol.setSensorArriveD(statusSign[16]);
- staProtocol.setSensorDecD(statusSign[17]);
- staProtocol.setSensorArriveL(statusSign[18]);
- staProtocol.setSensorDecL(statusSign[19]);
- staProtocol.setSensorArriveR(statusSign[20]);
- staProtocol.setSensorDecR(statusSign[21]);
+ //淇″彿
+ staProtocol.setSensorGArrive(statusSign[0]);
+ staProtocol.setSensorGDec(statusSign[1]);
+ staProtocol.setSensorGArrive2(statusSign[2]);
+ staProtocol.setSensorLimit(statusSign[3]);
+ staProtocol.setEmergency(statusSign[4]);
+ staProtocol.setSensorGLeave(statusSign[5]);
+ staProtocol.setSensorGLeave2(statusSign[6]);
+ staProtocol.setSensorCUp(statusSign[7]);
+ staProtocol.setSensorCDown(statusSign[8]);
+ staProtocol.setLiftMotorFr(statusSign[9]);
+ staProtocol.setLineMotorFr(statusSign[10]);
+ staProtocol.setTranMotorFr(statusSign[11]);
+ staProtocol.setRst1(statusSign[12]);
+ staProtocol.setRst2(statusSign[13]);
+ staProtocol.setRst3(statusSign[14]);
+ staProtocol.setRst4(statusSign[15]);
+ staProtocol.setSensorArriveD(statusSign[16]);
+ staProtocol.setSensorDecD(statusSign[17]);
+ staProtocol.setSensorArriveL(statusSign[18]);
+ staProtocol.setSensorDecL(statusSign[19]);
+ staProtocol.setSensorArriveR(statusSign[20]);
+ staProtocol.setSensorDecR(statusSign[21]);
- if( (staProtocol.getPassTimeOut() ||
- staProtocol.getObjectNoIdError() ||
- staProtocol.getIdNoObjectError() ||
- staProtocol.getLmfrError() ||
- staProtocol.getLiftError() ||
- staProtocol.getDlfrError() ||
- staProtocol.getDmfrError() ||
- staProtocol.getVfdError() ||
- staProtocol.getSrvError() ||
- staProtocol.getRes1() ||
- staProtocol.getRes2() ||
- staProtocol.getRes3() ||
- staProtocol.getCommunicationTimeOut() ||
- staProtocol.getParameterIncompleteError() ||
- staProtocol.getDataNotClear() ||
- staProtocol.getSetParameterError() ||
- staProtocol.getDataError()) && staProtocol.isWriteMk()
- ){
- staProtocol.setErrorMk(true);//鑻ュ瓨鍦ㄥ紓甯歌Е鍙戝啓鍏�
- }
+ if( (staProtocol.getPassTimeOut() ||
+ staProtocol.getObjectNoIdError() ||
+ staProtocol.getIdNoObjectError() ||
+ staProtocol.getLmfrError() ||
+ staProtocol.getLiftError() ||
+ staProtocol.getDlfrError() ||
+ staProtocol.getDmfrError() ||
+ staProtocol.getVfdError() ||
+ staProtocol.getSrvError() ||
+ staProtocol.getRes1() ||
+ staProtocol.getRes2() ||
+ staProtocol.getRes3() ||
+ staProtocol.getCommunicationTimeOut() ||
+ staProtocol.getParameterIncompleteError() ||
+ staProtocol.getDataNotClear() ||
+ staProtocol.getSetParameterError() ||
+ staProtocol.getDataError()) && staProtocol.isWriteMk()
+ ){
+ staProtocol.setErrorMk(true);//鑻ュ瓨鍦ㄥ紓甯歌Е鍙戝啓鍏�
+ }
- if( !staProtocol.getPassTimeOut() &&
- !staProtocol.getObjectNoIdError() &&
- !staProtocol.getIdNoObjectError() &&
- !staProtocol.getLmfrError() &&
- !staProtocol.getLiftError() &&
- !staProtocol.getDlfrError() &&
- !staProtocol.getDmfrError() &&
- !staProtocol.getVfdError() &&
- !staProtocol.getSrvError() &&
- !staProtocol.getRes1() &&
- !staProtocol.getRes2() &&
- !staProtocol.getRes3() &&
- !staProtocol.getCommunicationTimeOut() &&
- !staProtocol.getParameterIncompleteError() &&
- !staProtocol.getDataNotClear() &&
- !staProtocol.getSetParameterError() &&
- !staProtocol.getDataError()
- ){
- staProtocol.setWriteMk(true);//鏃犲紓甯稿悗鎵嶈兘缁х画鍐欏叆
- staProtocol.setErrorMk(false);//鑻ュ瓨鍦ㄥ紓甯歌Е鍙戝啓鍏�
+ if( !staProtocol.getPassTimeOut() &&
+ !staProtocol.getObjectNoIdError() &&
+ !staProtocol.getIdNoObjectError() &&
+ !staProtocol.getLmfrError() &&
+ !staProtocol.getLiftError() &&
+ !staProtocol.getDlfrError() &&
+ !staProtocol.getDmfrError() &&
+ !staProtocol.getVfdError() &&
+ !staProtocol.getSrvError() &&
+ !staProtocol.getRes1() &&
+ !staProtocol.getRes2() &&
+ !staProtocol.getRes3() &&
+ !staProtocol.getCommunicationTimeOut() &&
+ !staProtocol.getParameterIncompleteError() &&
+ !staProtocol.getDataNotClear() &&
+ !staProtocol.getSetParameterError() &&
+ !staProtocol.getDataError()
+ ){
+ staProtocol.setWriteMk(true);//鏃犲紓甯稿悗鎵嶈兘缁х画鍐欏叆
+ staProtocol.setErrorMk(false);//鑻ュ瓨鍦ㄥ紓甯歌Е鍙戝啓鍏�
- }
+ }
- if (!staProtocol.isPakMk() && (!staProtocol.isLoading() || staProtocol.getWorkNo()==0)) {
- staProtocol.setPakMk(true);
- }
+ if (!staProtocol.isPakMk() && (!staProtocol.isLoading() || staProtocol.getWorkNo()==0)) {
+ staProtocol.setPakMk(true);
+ }
+// }
+
}
}
//鏉$爜鎵弿鍣�
@@ -705,6 +727,8 @@
}
+
+
if (result1.IsSuccess && result2.IsSuccess) {
OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 6f40ab4..7f5307a 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -590,35 +590,28 @@
# LED4
led[3]:
id: 4
+ ip: 10.10.10.216
+ port: 5005
+ devpPlcId: ${wcs-slave.devp[0].id}
+ staArr: 1047
+ # LED4
+ led[4]:
+ id: 5
ip: 10.10.10.215
port: 5005
devpPlcId: ${wcs-slave.devp[1].id}
staArr: 2037
# LED5
- led[4]:
- id: 5
- ip: 10.10.10.216
- port: 5005
- devpPlcId: ${wcs-slave.devp[1].id}
- staArr: 4001
- # LED6
led[5]:
id: 6
ip: 10.10.10.217
port: 5005
devpPlcId: ${wcs-slave.devp[1].id}
- staArr: 4006
+ staArr: 4001
# LED6
led[6]:
id: 7
ip: 10.10.10.218
port: 5005
- devpPlcId: ${wcs-slave.devp[0].id}
- staArr: 160,159
- # LED6
- led[7]:
- id: 8
- ip: 10.10.10.219
- port: 5005
- devpPlcId: ${wcs-slave.devp[0].id}
- staArr: 160,159
\ No newline at end of file
+ devpPlcId: ${wcs-slave.devp[1].id}
+ staArr: 4006
\ No newline at end of file
diff --git a/src/main/resources/mapper/BasRgvMapper.xml b/src/main/resources/mapper/BasRgvMapper.xml
index a826fab..428ada2 100644
--- a/src/main/resources/mapper/BasRgvMapper.xml
+++ b/src/main/resources/mapper/BasRgvMapper.xml
@@ -20,5 +20,8 @@
<result column="memo" property="memo" />
</resultMap>
-
+ <select id="selectByRgvNo" resultMap="BaseResultMap">
+ select * from asr_bas_rgv
+ where rgv_no = #{rgvNo}
+ </select>
</mapper>
diff --git a/src/main/resources/mapper/WrkDetlMapper.xml b/src/main/resources/mapper/WrkDetlMapper.xml
index da1c6d3..6bd7ea2 100644
--- a/src/main/resources/mapper/WrkDetlMapper.xml
+++ b/src/main/resources/mapper/WrkDetlMapper.xml
@@ -27,7 +27,7 @@
</resultMap>
<select id="findByWorkNo" resultMap="BaseResultMap">
- select wrk_no, matnr, maktx, anfme ,specs from asr_wrk_detl where 1=1 and wrk_no = #{workNo}
+ select * from asr_wrk_detl where 1=1 and wrk_no = #{workNo}
</select>
<update id="updateIoTime">
diff --git a/src/main/webapp/views/console.html b/src/main/webapp/views/console.html
index 521b521..c125dd0 100644
--- a/src/main/webapp/views/console.html
+++ b/src/main/webapp/views/console.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en">
<head>
- <meta charset="UTF-8">
+ <meta charset="UTF-8" >
<title>鑷姩浠撳簱wcs绯荤粺</title>
<link rel="stylesheet" href="../static/css/render.css">
<script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
@@ -10,8 +10,6 @@
<script src="../static/js/console.map.js"></script>
<script src="../static/js/console.js"></script>
<script src="../static/js/common.js"></script>
-
-
</head>
<body>
<div id="main">
@@ -19,6 +17,7 @@
<div class="head-left">
<h1>鑷姩浠撳簱WCS鐩戞帶鍥�</h1>
<h6>AUTOMATIC WAREHOUSE WCS MONITORING DIAGRAM</h6>
+ <button class="zoom-btn" id="zoomBtn">缂╁皬缃戦〉姣斾緥</button>
</div>
<div class="head-right">
<img src="../static/images/zy-logo.png" alt="涓壃" height="44" width="80">
@@ -327,6 +326,7 @@
</div>
</div>
+
</body>
</html>
@@ -544,7 +544,7 @@
});
}
- // 杈撻�佽澶囧疄鏃舵暟鎹幏鍙�
+ // 杈撻�佽澶囧疄鏃舵暟鎹幏鍙朿sxit
function getSitesInfo() {
$.ajax({
url: baseUrl + "/console/latest/data/site",
@@ -562,7 +562,7 @@
siteEl.html(sites[i].siteId);
}
- if (sites[i].siteId === '1' || sites[i].siteId === '2' || sites[i].siteId === '3') {
+ if (sites[i].siteId === '1' || sites[i].siteId === '2' || sites[i].siteId === '3'|| sites[i].siteId === '4') {
carAnimate(Number(sites[i].siteId), Number(sites[i].nearbySta));
}
@@ -693,43 +693,67 @@
function carAnimate(id, target) {
// debugger
var targetTop = 0;
- if (id === 1 || id === '1' || id === '2' || id === 2 || id === '3' || id === 3) {
+ if (id === 1 || id === '1' || id === '2' || id === 2 || id === '3' || id === 3 ||id === '4' || id === 4) {
switch (target) {
- case 1:
- targetTop += 792;
+ case 1004:
+ targetTop += 84;
break;
- case 2:
- targetTop += 771;
+ case 1007:
+ targetTop += 128;
break;
- case 3:
- targetTop += 727;
- break;
- case 4:
- targetTop += 706;
- break;
- case 5:
- targetTop += 662;
- break;
- case 6:
- targetTop += 620;
- break;
- case 7:
- targetTop += 578;
- break;
- case 8:
- targetTop += 530;
- break;
- case 9:
+ case 1010:
targetTop += 190;
break;
- case 10:
- targetTop += 147;
+ case 1014:
+ targetTop += 240;
break;
- case 11:
- targetTop += 107;
+ case 1018:
+ targetTop += 300;
break;
- case 12:
- targetTop += 63;
+ case 1021:
+ targetTop += 350;
+ break;
+ case 1024:
+ targetTop += 415;
+ break;
+ case 1028:
+ targetTop += 465;
+ break;
+ case 1031:
+ targetTop += 530;
+ break;
+ case 1035:
+ targetTop += 580;
+ break;
+ case 2003:
+ targetTop += 84;
+ break;
+ case 2006:
+ targetTop += 128;
+ break;
+ case 2009:
+ targetTop += 19.;
+ break;
+ case 2012:
+ targetTop += 240;
+ break;
+ case 2015:
+ targetTop += 300;
+ break;
+ case 2018:
+ targetTop += 350;
+ break;
+ case 2021:
+ targetTop += 415;
+ break;
+ case 2024:
+ targetTop += 465;
+ break;
+ case 2027:
+ targetTop += 530;
+ break;
+ case 2030:
+ targetTop += 580;
break;
default:
return;
@@ -738,8 +762,56 @@
return;
}
- $("#site-" + id).animate({top: targetTop + 'px'}, 1000);
+ $("#site-" + id).animate({top: targetTop + 'px'}, 0);
}
+ // 妫�鏌� URL 涓槸鍚﹀寘鍚� fullscreen=true 鍙傛暟
+ function checkFullscreen() {
+ const urlParams = new URLSearchParams(window.location.search);
+ const fullscreen = urlParams.get('fullscreen');
+ if (fullscreen === 'true') {
+ enterFullscreen();
+ }
+ }
+
+ // 杩涘叆鍏ㄥ睆妯″紡
+ function enterFullscreen() {
+ if (!document.fullscreenElement) {
+ if (document.documentElement.requestFullscreen) {
+ document.documentElement.requestFullscreen();
+ } else if (document.documentElement.mozRequestFullScreen) { // Firefox
+ document.documentElement.mozRequestFullScreen();
+ } else if (document.documentElement.webkitRequestFullscreen) { // Chrome, Safari, Opera
+ document.documentElement.webkitRequestFullscreen();
+ } else if (document.documentElement.msRequestFullscreen) { // IE/Edge
+ document.documentElement.msRequestFullscreen();
+ }
+ }
+ }
+
+ // 鎸夐挳鐐瑰嚮浜嬩欢锛岃Е鍙戠缉鏀�
+ document.getElementById('zoomBtn').addEventListener('click', function() {
+ simulateCtrlWheelZoomOut();
+ });
+
+ // 妯℃嫙 Ctrl + 婊氳疆涓嬫粦鏉ョ缉灏忕綉椤�
+ function simulateCtrlWheelZoomOut() {
+ let scale = 1; // 榛樿缂╂斁姣斾緥
+
+ // 鑾峰彇褰撳墠椤甸潰鐨勭缉鏀炬瘮渚�
+ let currentScale = window.getComputedStyle(document.body).transform;
+ if (currentScale !== 'none') {
+ scale = parseFloat(currentScale.match(/matrix\((.*)\)/)[1].split(',')[0]);
+ }
+
+ // 璁$畻鏂扮殑缂╂斁姣斾緥锛屾ā鎷熺缉灏�
+ let newScale = scale * 0.9; // 姣忔鐐瑰嚮缂╁皬10%
+
+ // 搴旂敤鏂扮殑缂╂斁姣斾緥
+ document.body.style.transform = 'scale(' + newScale + ')';
+ document.body.style.transformOrigin = 'top left'; // 璁剧疆缂╂斁鍘熺偣
+ }
+
+
</script>
\ No newline at end of file
--
Gitblit v1.9.1