From faecccbe46a1f85b5d9b18fce12e02764faba78e Mon Sep 17 00:00:00 2001
From: 王佳豪 <g675230687@126.com>
Date: 星期三, 09 六月 2021 12:58:15 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 51 +++++++-----
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 153 +++++++++++++++++++++-----------------
src/main/java/com/zy/asrs/service/BasAgvService.java | 2
src/main/java/com/zy/asrs/service/impl/BasAgvServiceImpl.java | 14 +++
4 files changed, 128 insertions(+), 92 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/BasAgvService.java b/src/main/java/com/zy/asrs/service/BasAgvService.java
index 3f74e8c..33bb5cf 100644
--- a/src/main/java/com/zy/asrs/service/BasAgvService.java
+++ b/src/main/java/com/zy/asrs/service/BasAgvService.java
@@ -7,6 +7,8 @@
BasAgv selectIdleAgv();
+ Boolean haveIdleAgv();
+
String getAgvWorkNo();
String getEmptyAgvWorkNo();
diff --git a/src/main/java/com/zy/asrs/service/impl/BasAgvServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasAgvServiceImpl.java
index ce84de8..a30ed14 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasAgvServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasAgvServiceImpl.java
@@ -32,6 +32,20 @@
}
@Override
+ public Boolean haveIdleAgv() {
+ List<BasAgv> idleAgvs = this.selectList(new EntityWrapper<BasAgv>()
+ .eq("in_enable", "Y")
+ .eq("is_user", 1)
+ .in("status", 6, 8 ,12)
+ );
+ if (Cools.isEmpty(idleAgvs)) {
+ log.warn("娌℃湁绌洪棽鐨凙gv灏忚溅");
+ return false;
+ }
+ return true;
+ }
+
+ @Override
public String getAgvWorkNo() {
String workNo = null;
for (int i = 0; i < 10; i++) {
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 2eba2f0..f6364ae 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -86,30 +86,35 @@
}
// 灏忚溅鍏ュ簱鎼繍鍛戒护 ----------------------------------------------------
if (!Cools.isEmpty(param.getAgvSite())) {
- BasAgv idleAgv = basAgvService.selectIdleAgv();
- AgvCommand command = new AgvCommand();
- command.setAgvId(idleAgv.getAgvId());
- command.setInterCode(basAgvService.getAgvWorkNo());
- command.setBeginLoc(String.valueOf(param.getAgvSite()));
- command.setEndLoc("1088");
- log.info(JSON.toJSONString(command));
- String result;
- try {
- result = new HttpHandler.Builder()
- .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
- .setJson(JSON.toJSONString(command))
- .build()
- .doPost();
- } catch (IOException e) {
- e.printStackTrace();
- throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ // 鍒ゆ柇鏄惁鏈夌┖闂插皬杞�
+ if (basAgvService.haveIdleAgv()) {
+ AgvCommand command = new AgvCommand();
+ command.setAgvId(0);
+ command.setInterCode(basAgvService.getAgvWorkNo());
+ command.setBeginLoc(String.valueOf(param.getAgvSite()));
+ command.setEndLoc("1088");
+ log.info(JSON.toJSONString(command));
+ String result;
+ try {
+ result = new HttpHandler.Builder()
+ .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
+ .setJson(JSON.toJSONString(command))
+ .build()
+ .doPost();
+ } catch (IOException e) {
+ e.printStackTrace();
+ throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ }
+ AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
+ log.info(JSON.toJSONString(agvResult));
+ if (!agvResult.getResult()) {
+ log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
+ throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
+ }
+ } else {
+ throw new CoolException("娌℃湁绌洪棽灏忚溅");
}
- AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
- log.info(JSON.toJSONString(agvResult));
- if (!agvResult.getResult()) {
- log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
- throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
- }
+
}
} else {
@@ -196,30 +201,35 @@
// 灏忚溅鍏ュ簱鎼繍鍛戒护 ----------------------------------------------------
if (!Cools.isEmpty(param.getCombMats()) && !Cools.isEmpty(param.getAgvSite())) {
- BasAgv idleAgv = basAgvService.selectIdleAgv();
- AgvCommand command = new AgvCommand();
- command.setAgvId(idleAgv.getAgvId());
- command.setInterCode(basAgvService.getAgvWorkNo());
- command.setBeginLoc(String.valueOf(param.getAgvSite()));
- command.setEndLoc("1088");
- log.info(JSON.toJSONString(command));
- String result;
- try {
- result = new HttpHandler.Builder()
- .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
- .setJson(JSON.toJSONString(command))
- .build()
- .doPost();
- } catch (IOException e) {
- e.printStackTrace();
- throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ // 鍒ゆ柇鏄惁鏈夌┖闂插皬杞�
+ if (basAgvService.haveIdleAgv()) {
+ AgvCommand command = new AgvCommand();
+ command.setAgvId(0);
+ command.setInterCode(basAgvService.getAgvWorkNo());
+ command.setBeginLoc(String.valueOf(param.getAgvSite()));
+ command.setEndLoc("1088");
+ log.info(JSON.toJSONString(command));
+ String result;
+ try {
+ result = new HttpHandler.Builder()
+ .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
+ .setJson(JSON.toJSONString(command))
+ .build()
+ .doPost();
+ } catch (IOException e) {
+ e.printStackTrace();
+ throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ }
+ AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
+ log.info(JSON.toJSONString(agvResult));
+ if (!agvResult.getResult()) {
+ log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
+ throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
+ }
+ } else {
+ throw new CoolException("娌℃湁绌洪棽灏忚溅");
}
- AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
- log.info(JSON.toJSONString(agvResult));
- if (!agvResult.getResult()) {
- log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
- throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
- }
+
}
}
@@ -301,30 +311,35 @@
}
// 灏忚溅鍏ュ簱鎼繍鍛戒护 ----------------------------------------------------
if (!Cools.isEmpty(param.getCombMats()) && !Cools.isEmpty(param.getAgvSite())) {
- BasAgv idleAgv = basAgvService.selectIdleAgv();
- AgvCommand command = new AgvCommand();
- command.setAgvId(idleAgv.getAgvId());
- command.setInterCode(basAgvService.getAgvWorkNo());
- command.setBeginLoc(String.valueOf(param.getAgvSite()));
- command.setEndLoc("1088");
- log.info(JSON.toJSONString(command));
- String result;
- try {
- result = new HttpHandler.Builder()
- .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
- .setJson(JSON.toJSONString(command))
- .build()
- .doPost();
- } catch (IOException e) {
- e.printStackTrace();
- throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ // 鍒ゆ柇鏄惁鏈夌┖闂插皬杞�
+ if (basAgvService.haveIdleAgv()) {
+ AgvCommand command = new AgvCommand();
+ command.setAgvId(0);
+ command.setInterCode(basAgvService.getAgvWorkNo());
+ command.setBeginLoc(String.valueOf(param.getAgvSite()));
+ command.setEndLoc("1088");
+ log.info(JSON.toJSONString(command));
+ String result;
+ try {
+ result = new HttpHandler.Builder()
+ .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
+ .setJson(JSON.toJSONString(command))
+ .build()
+ .doPost();
+ } catch (IOException e) {
+ e.printStackTrace();
+ throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ }
+ AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
+ log.info(JSON.toJSONString(agvResult));
+ if (!agvResult.getResult()) {
+ log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
+ throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
+ }
+ } else {
+ throw new CoolException("娌℃湁绌洪棽灏忚溅");
}
- AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
- log.info(JSON.toJSONString(agvResult));
- if (!agvResult.getResult()) {
- log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
- throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
- }
+
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index ae9d3fc..b664639 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -327,30 +327,35 @@
BasDevp staNo = basDevpService.checkSiteStatus(devpNo);
if (!Cools.isEmpty(staNo.getFronting()) && staNo.getFronting().equals("Y")) {
// 灏忚溅鍏ュ簱鎼繍鍛戒护 ----------------------------------------------------
- BasAgv idleAgv = basAgvService.selectIdleAgv();
- AgvCommand command = new AgvCommand();
- command.setAgvId(idleAgv.getAgvId());
- command.setInterCode(basAgvService.getEmptyAgvWorkNo());
- command.setBeginLoc(String.valueOf(devpNo));
- command.setEndLoc("1088");
- log.info(JSON.toJSONString(command));
- String result;
- try {
- result = new HttpHandler.Builder()
- .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
- .setJson(JSON.toJSONString(command))
- .build()
- .doPost();
- } catch (IOException e) {
- e.printStackTrace();
- throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ // 鍒ゆ柇鏄惁鏈夌┖闂插皬杞�
+ if (basAgvService.haveIdleAgv()) {
+ AgvCommand command = new AgvCommand();
+ command.setAgvId(0);
+ command.setInterCode(basAgvService.getEmptyAgvWorkNo());
+ command.setBeginLoc(String.valueOf(devpNo));
+ command.setEndLoc("1088");
+ log.info(JSON.toJSONString(command));
+ String result;
+ try {
+ result = new HttpHandler.Builder()
+ .setUri(agvUrl + "/api/interfaceTask/SendTaskByThirdParty")
+ .setJson(JSON.toJSONString(command))
+ .build()
+ .doPost();
+ } catch (IOException e) {
+ e.printStackTrace();
+ throw new CoolException("璁块棶AGV鎺ュ彛澶辫触");
+ }
+ AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
+ log.info(JSON.toJSONString(agvResult));
+ if (!agvResult.getResult()) {
+ log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
+ throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
+ }
+ } else {
+ throw new CoolException("娌℃湁绌洪棽灏忚溅");
}
- AgvResult agvResult = JSON.parseObject(result, AgvResult.class);
- log.info(JSON.toJSONString(agvResult));
- if (!agvResult.getResult()) {
- log.error("agv鍛戒护鍙戦�佸け璐agvId={}]锛岄敊璇俊鎭�={}", command.getAgvId(), agvResult.getExplain());
- throw new CoolException("agv鍛戒护鍙戦�佸け璐agvId=" + command.getAgvId() + "]锛岄敊璇俊鎭�=" + agvResult.getExplain());
- }
+
return "寰呭畾";
} else {
// 婧愮珯鐐圭姸鎬佹娴�
--
Gitblit v1.9.1