From 54e371c10fdb3640b5ac5e4d5ea9ace537f27174 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期一, 28 三月 2022 15:18:39 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 95 +++++++++++++++++++++++++++++++----------------
1 files changed, 62 insertions(+), 33 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 b9ee6f4..d2e614e 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -87,8 +87,11 @@
private BasErrLogService basErrLogService;
@Autowired
private BasCrnErrorMapper basCrnErrorMapper;
+
@Value("${wms.url}")
private String wmsUrl;
+ @Value("${crnBackHp.enable}")
+ private boolean crnBackHp;
/**
* 缁勬墭
@@ -549,48 +552,56 @@
}
// 搴撲綅绉昏浆
this.locToLoc(crn, crnProtocol);
+
+ if (crnBackHp) {
+
+ //鍫嗗灈鏈烘病鏈夋墽琛屼腑浠诲姟锛岃澶囧瓨鍦ㄥ叆搴撲换鍔℃椂鍙洖鍘熺偣
+ this.crnRebackHp(crnProtocol);
+
+ }
}
}
/**
* 鍥炲師鐐癸紝鍫嗗灈鏈烘病鏈夋墽琛屼腑浠诲姟锛岃澶囧瓨鍦ㄥ叆搴撲换鍔℃椂鍙洖鍘熺偣
*/
- public void crnRebackHp(){
- for (CrnSlave crn : slaveProperties.getCrn()) {
- // 鑾峰彇鍫嗗灈鏈轰俊鎭�
- CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
- CrnProtocol crnProtocol = crnThread.getCrnProtocol();
- if (crnProtocol == null) {
- continue;
- }
- BasCrnp basCrnp = basCrnpService.selectById(crn.getId());
- if (basCrnp == null) {
- log.error("{}鍙峰爢鍨涙満灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�", crn.getId());
- continue;
- }
+ public synchronized void crnRebackHp(CrnProtocol crnProtocol){
+// for (CrnSlave crn : slaveProperties.getCrn()) {
+// // 鑾峰彇鍫嗗灈鏈轰俊鎭�
+// CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
+// CrnProtocol crnProtocol = crnThread.getCrnProtocol();
+// if (crnProtocol == null) {
+// continue;
+// }
+// BasCrnp basCrnp = basCrnpService.selectById(crn.getId());
+// if (basCrnp == null) {
+// log.error("{}鍙峰爢鍨涙満灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�", crn.getId());
+// continue;
+// }
if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getTaskNo() == 0 && crnProtocol.getModeType() == CrnModeType.AUTO) {
if(crnProtocol.getBay() ==1 && crnProtocol.getLevel()==1){
- continue;
+ return;
}
- // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊�
- if (wrkMastMapper.selectWorking(crn.getId()) != null) {
- continue;
+ // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊�3,12
+ if (wrkMastMapper.selectWorking(crnProtocol.getCrnNo()) != null) {
+ return;
}
- //鍫嗗灈鏈烘湁鎵ц涓换鍔★紝杩囨护
- if (wrkMastMapper.selectCrnWorking(crn.getId()) != null) {
- continue;
+ //鍫嗗灈鏈烘湁鎵ц涓换鍔★紝杩囨护3,4,11,12
+ if (wrkMastMapper.selectCrnWorking(crnProtocol.getCrnNo()) != null) {
+ return;
}
- //杈撻�佺嚎娌℃湁鍏ュ簱浠诲姟锛岃繃婊�
- if (wrkMastMapper.selectDevWorking(crn.getId()) == null) {
- continue;
- }
+ //杈撻�佺嚎娌℃湁鍏ュ簱浠诲姟锛岃繃婊�2
+ if (wrkMastMapper.selectDevWorking(crnProtocol.getCrnNo()) == null) {
+ return;
+ }
+// log.info("鍫嗗灈鏈哄彫鍥炲師鐐�==>>" + crn.getId() + "鍙峰爢鍨涙満鏈夊叆搴撲换鍔�,鍙洖鍘熺偣");
// 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
CrnCommand crnCommand = new CrnCommand();
- crnCommand.setCrnNo(crn.getId()); // 鍫嗗灈鏈虹紪鍙�
+ crnCommand.setCrnNo(crnProtocol.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
crnCommand.setTaskNo((short) 9999); // 宸ヤ綔鍙�
crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣�
crnCommand.setTaskMode(CrnTaskModeType.GO_ORIGIN); // 浠诲姟妯″紡: 鍥炲師鐐�
@@ -600,11 +611,11 @@
crnCommand.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺�
crnCommand.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒�
crnCommand.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞�
- if (!MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, crnCommand))) {
- log.error("鍫嗗灈鏈哄洖鍘熺偣鍛戒护涓嬪彂澶辫触锛屽爢鍨涙満鍙�={}锛屼换鍔℃暟鎹�={}", crn.getId(), JSON.toJSON(crnCommand));
+ if (!MessageQueue.offer(SlaveType.Crn, crnProtocol.getCrnNo(), new Task(2, crnCommand))) {
+ log.error("鍫嗗灈鏈哄洖鍘熺偣鍛戒护涓嬪彂澶辫触锛屽爢鍨涙満鍙�={}锛屼换鍔℃暟鎹�={}", crnProtocol.getCrnNo(), JSON.toJSON(crnCommand));
}
}
- }
+// }
}
/**
@@ -1448,13 +1459,16 @@
if (Utils.isDeepLoc(slaveProperties, row)) {
loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType1());
- if (Utils.isDeepLoc(slaveProperties, loc.getLocNo())){
- String shallowLocNo = Utils.getShallowLoc(slaveProperties, loc.getLocNo());
- LocMast shallowLoc1 = locMastService.selectById(shallowLocNo);
- if(!shallowLoc1.getLocSts().equals("O")){
- loc = null;
+ if (loc !=null) {
+ if (Utils.isDeepLoc(slaveProperties, loc.getLocNo())){
+ String shallowLocNo = Utils.getShallowLoc(slaveProperties, loc.getLocNo());
+ LocMast shallowLoc1 = locMastService.selectById(shallowLocNo);
+ if(!shallowLoc1.getLocSts().equals("O")){
+ loc = null;
+ }
}
}
+
if (null != loc) { break; }
}
@@ -1705,4 +1719,19 @@
}
+
+ public void outOfDevp() {
+ List<WrkMast> wrkMasts = wrkMastMapper.selectPick();
+ for (WrkMast wrkMast : wrkMasts) {
+ if (basDevpService.selectCount(new EntityWrapper<BasDevp>().eq("wrk_no", wrkMast.getWrkNo())) == 0) {
+ wrkMast.setCtnNo("Y");
+ if (wrkMastMapper.updateById(wrkMast) == 0) {
+ log.error("淇敼{}宸ヤ綔妗eけ璐ワ紝ctn_no", wrkMast.getWrkNo());
+ }
+ }
+
+ }
+ }
+
+
}
--
Gitblit v1.9.1