From e22c2893d3df0494b5603f67b61bfc54e83129ea Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期六, 27 一月 2024 19:50:27 +0800
Subject: [PATCH] #
---
src/main/resources/mapper/BasRgvMapMapper.xml | 2
src/main/java/com/zy/asrs/utils/RouteUtils.java | 3
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 40 ++++++---
src/main/webapp/views/console.html | 32 ++++---
src/main/webapp/static/js/console.map.js | 8 +-
src/main/java/com/zy/core/MainProcess.java | 2
src/main/java/com/zy/core/model/protocol/RgvProtocol.java | 12 ++
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 85 +++++++++-----------
8 files changed, 104 insertions(+), 80 deletions(-)
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 b74f1e6..724a297 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -45,10 +45,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -2041,10 +2038,16 @@
public synchronized void autoEmptyOut() {
- DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
List<Integer> list = new ArrayList<>();
- list.add(102);list.add(111);
+ list.add(101);list.add(112);
+ Map<Integer,Integer> map = new HashMap<>();
+ map.put(101,102);map.put(112,111);
for (Integer site:list){
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("sta_no", map.get(site)));
+ if (!Cools.isEmpty(wrkMast)){
+ continue;
+ }
//濡傛灉绔欑偣鍙嚭绂佺敤锛屽垯涓嶇敓鎴愮┖鐩樺嚭搴撲换鍔�
StaProtocol staProtocol = devpThread.getStation().get(site);
if (staProtocol == null) {
@@ -2062,7 +2065,7 @@
return;
}
Short loctype1 = 1;
- if (site == 102){
+ if (site == 101){
loctype1 = 2;
}
LocTypeDto locTypeDto = new LocTypeDto(loctype1, (short) 1, (short) 1);
@@ -2076,8 +2079,8 @@
.doPost();
JSONObject jsonObject = JSON.parseObject(response);
if (jsonObject.getInteger("code").equals(200)) {
- JSONObject data = (JSONObject) jsonObject.get("data");
- News.info((String) data.get("msg"));
+ String data = jsonObject.get("data").toString();
+ News.info((String) jsonObject.get("msg")+","+data);
} else {
News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/auto/emptyOut/v1","", response);
}
@@ -2091,7 +2094,7 @@
}
public synchronized void autoEmptyIn() {
- DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
List<Integer> list = new ArrayList<>();
list.add(153);list.add(157);
for (Integer site:list){
@@ -2174,15 +2177,18 @@
* */
public synchronized void refreshRgvMap() {
try{
- for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+ List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
+ for (BasRgvMap rgvSlave:basRgvMaps) {
+ RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
if (rgvProtocol == null) {
continue;
+ }else {
+ rgvProtocol = rgvProtocol.clone();
}
- BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
+ BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
if (basRgv == null) {
- log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�2", rgvSlave.getId());
+ log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�2", rgvSlave.getRgvNo());
continue;
}
@@ -2217,6 +2223,8 @@
RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
if (rgvProtocol == null) {
continue;
+ }else {
+ rgvProtocol = rgvProtocol.clone();
}
BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
if (basRgv == null) {
@@ -2306,6 +2314,8 @@
RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
if (rgvProtocol == null) {
continue;
+ }else {
+ rgvProtocol = rgvProtocol.clone();
}
BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
if (basRgv == null) {
@@ -2505,6 +2515,8 @@
RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
if (rgvProtocol == null) {
continue;
+ }else {
+ rgvProtocol = rgvProtocol.clone();
}
BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
if (basRgv == null) {
diff --git a/src/main/java/com/zy/asrs/utils/RouteUtils.java b/src/main/java/com/zy/asrs/utils/RouteUtils.java
index 2acad24..ac86170 100644
--- a/src/main/java/com/zy/asrs/utils/RouteUtils.java
+++ b/src/main/java/com/zy/asrs/utils/RouteUtils.java
@@ -239,6 +239,9 @@
return (short)119;
}
return (short)149;
+ case 102:
+ case 111:
+ return 149;
default:
return endSta.shortValue();
}
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 7a40880..f109f36 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -77,7 +77,7 @@
mainService.outOfDevp(11);
//绌烘墭鐩樿嚜鍔ㄥ嚭搴�
- mainService.autoEmptyOut();
+// mainService.autoEmptyOut();
// //绌烘墭鐩樿嚜鍔ㄥ叆搴�
// mainService.autoEmptyIn();
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 f8fd4da..1dffde9 100644
--- a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
@@ -12,7 +12,7 @@
* Created by vincent on 2020/8/7
*/
@Data
-public class RgvProtocol {
+public class RgvProtocol implements Cloneable{
private Integer RgvNo;
@@ -218,4 +218,14 @@
return map.get(RgvPos);
}
+ @Override
+ public RgvProtocol clone() {
+ try {
+ return (RgvProtocol) super.clone();
+ } catch (CloneNotSupportedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
}
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index e563850..1865943 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -10,7 +10,9 @@
import com.core.common.SpringUtils;
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.BasRgvMap;
import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.service.BasRgvMapService;
import com.zy.common.utils.News;
import com.zy.core.DevpThread;
import com.zy.core.cache.MessageQueue;
@@ -63,7 +65,8 @@
add(152);add(153);add(154);add(155);
add(156);add(157);add(158);add(159);
add(160);add(161);
- add(200);add(201);add(202);
+ add(1);
+// add(200);add(201);add(202);
}};
public static final ArrayList<Integer> BarcodeList = new ArrayList<Integer>() {{
@@ -227,51 +230,41 @@
}
}
}
-// OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) (staNoSize*4));
-//// OperateResultExOne<byte[]> result4 = siemensS7Net.Read("DB100.2", (short) (staNoSize*2));
-// if (result.IsSuccess) {
-// for (int i = 0; i < staNoSize; i++) {
-// Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
-// StaProtocol staProtocol = station.get(siteId);
-// if (null == staProtocol) {
-// staProtocol = new StaProtocol();
-// staProtocol.setSiteId(siteId);
-// station.put(siteId, staProtocol);
-// }
-// staProtocol.setWorkNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*4)); // 宸ヤ綔鍙�
-//
-// staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i*4 + 2)); // 鐩爣绔�
-// }
-// }
-//
-// Thread.sleep(200);
-// OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB101.0", (short) (staNoSize * 4));
-// if (result1.IsSuccess) {
-// for (int i = 0; i < staNoSize; i++) {
-// Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
-// boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, i*4, 1);
-// StaProtocol staProtocol = station.get(siteId);
-// staProtocol.setAutoing(status[0]); // 鑷姩
-// staProtocol.setLoading(status[1]); // 鏈夌墿
-// staProtocol.setInEnable(status[2]); // 鍙叆
-// staProtocol.setOutEnable(status[3]);// 鍙嚭
-// staProtocol.setEmptyMk(status[4]); // 绌烘澘淇″彿
-// staProtocol.setFullPlt(status[5]); // 婊℃墭鐩�
-// staProtocol.setHigh(status[6]); // 楂樺簱浣�
-// staProtocol.setLow(status[7]); // 浣庡簱浣�
-//
-// if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
-// staProtocol.setPakMk(true);
-// }
-//
-// if (staProtocol.getStamp()>=2 && !staProtocol.isLoading()){
-// staProtocol.setStamp(0);
-// }else if (staProtocol.getStamp()<2 && staProtocol.isLoading()){
-// //lfd鍏ュ簱鍗拌 褰搒tamp>=2鏃舵墠鍏ュ簱
-// staProtocol.setStamp(staProtocol.getStamp()+1);
-// }
-// }
-// }
+ BasRgvMapService basRgvMapService = SpringUtils.getBean(BasRgvMapService.class);
+ //RGV灏忚溅
+ Thread.sleep(200);
+ OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB50.200",(short)10);
+ if (result3.IsSuccess) {
+ BasRgvMap basRgvMap = basRgvMapService.selectByRgvNo((int) siemensS7Net.getByteTransform().TransInt16(result3.Content, 0));
+ if (!Cools.isEmpty(basRgvMap) && basRgvMap.getStartRoute() == 100){
+ Integer siteId = 1;
+ StaProtocol staProtocol = station.get(siteId);
+ if (null == staProtocol) {
+ staProtocol = new StaProtocol();
+ staProtocol.setSiteId(siteId);
+ station.put(siteId, staProtocol);
+ }
+ staProtocol.setAutoing(true);
+ staProtocol.setNearbySta(String.valueOf(siemensS7Net.getByteTransform().TransInt16(result3.Content, 8)));
+ }
+ }
+ //RGV灏忚溅
+ Thread.sleep(200);
+ OperateResultExOne<byte[]> result4 = siemensS7Net.Read("DB50.212",(short)10);
+ if (result4.IsSuccess) {
+ BasRgvMap basRgvMap = basRgvMapService.selectByRgvNo((int) siemensS7Net.getByteTransform().TransInt16(result4.Content, 0));
+ if (!Cools.isEmpty(basRgvMap) && (basRgvMap.getStartRoute() == 161 || basRgvMap.getStartRoute() == 157)){
+ Integer siteId = 2;
+ StaProtocol staProtocol = station.get(siteId);
+ if (null == staProtocol) {
+ staProtocol = new StaProtocol();
+ staProtocol.setSiteId(siteId);
+ station.put(siteId, staProtocol);
+ }
+ staProtocol.setAutoing(true);
+ staProtocol.setNearbySta(String.valueOf(siemensS7Net.getByteTransform().TransInt16(result4.Content, 8)));
+ }
+ }
//鏉$爜鎵弿鍣�
ArrayList<Integer> barcodeList = BarcodeList;
diff --git a/src/main/resources/mapper/BasRgvMapMapper.xml b/src/main/resources/mapper/BasRgvMapMapper.xml
index a3ec60c..c7374a1 100644
--- a/src/main/resources/mapper/BasRgvMapMapper.xml
+++ b/src/main/resources/mapper/BasRgvMapMapper.xml
@@ -13,7 +13,7 @@
<result column="lock_end_route" property="lockEndRoute" />
</resultMap>
- <select id="selectByRgvNo" resultType="com.zy.asrs.entity.BasRgvMap">
+ <select id="selectByRgvNo" resultMap="BaseResultMap">
select * from asr_bas_rgv_map
where rgv_no = #{rgvNo}
</select>
diff --git a/src/main/webapp/static/js/console.map.js b/src/main/webapp/static/js/console.map.js
index 0460771..ef61ea5 100644
--- a/src/main/webapp/static/js/console.map.js
+++ b/src/main/webapp/static/js/console.map.js
@@ -627,16 +627,16 @@
"height": 742
}, {
"type": "stn",
- "id": "site-200",
- "text": "200",
+ "id": "site-2",
+ "text": "2",
"top": 398,
"left": 220,
"width": 60,
"height": 19
}, {
"type": "stn",
- "id": "site-201",
- "text": "201",
+ "id": "site-1",
+ "text": "1",
"top": 698,
"left": 220,
"width": 60,
diff --git a/src/main/webapp/views/console.html b/src/main/webapp/views/console.html
index dee93e6..4678401 100644
--- a/src/main/webapp/views/console.html
+++ b/src/main/webapp/views/console.html
@@ -568,7 +568,7 @@
siteEl.html(sites[i].siteId);
}
- if (sites[i].siteId === '16' || sites[i].siteId === '016') {
+ if (sites[i].siteId === '1' || sites[i].siteId === '2') {
carAnimate(Number(sites[i].siteId), Number(sites[i].nearbySta));
}
@@ -715,37 +715,43 @@
function carAnimate(id, target) {
// debugger
var targetTop = 0;
- if (id === 16 || id === '16' || id === '016') {
+ if (id === 1 || id === '1' || id === '2' || id === 2) {
switch (target) {
case 1:
- targetTop += 827;
+ targetTop += 792;
break;
case 2:
- targetTop += 765;
+ targetTop += 771;
break;
case 3:
- targetTop += 651;
+ targetTop += 727;
break;
case 4:
- targetTop += 589;
+ targetTop += 706;
break;
case 5:
- targetTop += 505;
+ targetTop += 662;
break;
case 6:
- targetTop += 443;
+ targetTop += 620;
break;
case 7:
- targetTop += 362;
+ targetTop += 578;
break;
case 8:
- targetTop += 297;
+ targetTop += 530;
break;
case 9:
- targetTop += 243;
+ targetTop += 190;
break;
case 10:
- targetTop += 129;
+ targetTop += 147;
+ break;
+ case 11:
+ targetTop += 107;
+ break;
+ case 12:
+ targetTop += 63;
break;
default:
return;
@@ -754,7 +760,7 @@
return;
}
- $("#site-0" + id).animate({top: targetTop + 'px'}, 1000);
+ $("#site-" + id).animate({top: targetTop + 'px'}, 1000);
}
--
Gitblit v1.9.1