From a403410276a4e7744d5808004eae6dc3494aea4f Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 24 十月 2025 14:30:13 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 128 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 125 insertions(+), 3 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 aaf30a6..2fa2bdb 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -4614,13 +4614,86 @@
}
/*
- * agv浠诲姟涓嬪彂
+ * agv浠诲姟涓嬪彂:AGV搴撲綅==銆嬭緭閫佺嚎绔欑偣
* */
- public synchronized void agvTaskAssignment() {
+ public synchronized void agvTaskAssignment0() {
try{
List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0));
for (BasAgvMast basAgvMast : basAgvMastList) {
- if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=3){//3==銆嬪嚭搴�==>杈撻�佺嚎绔欑偣==銆婣GV搴撲綅
+ if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=0){//0==銆婣GV搴撲綅==銆嬭緭閫佺嚎绔欑偣
+ continue;
+ }
+ try{
+ // 鑾峰彇绔欑偣淇℃伅
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId());
+ StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getStaNo());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+
+ if (staProtocol.isAutoing()){
+
+ AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(basAgvMast);
+
+ //浠诲姟涓嬪彂
+ ReturnT<String> result = new PostMesDataUtils().postMesData("AGV浠诲姟涓嬪彂", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam);
+ if (result.getCode()==200){
+ basAgvMast.setStatus(1);
+ basAgvMastService.updateById(basAgvMast);
+ } else {
+ agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV浠诲姟涓嬪彂澶辫触", "浠诲姟鍙凤細"+basAgvMast.getTaskNo()+"浠诲姟淇℃伅涓嬪彂澶辫触锛侊紒锛�", false);
+ }
+ }
+ } catch (Exception e){
+ log.error("浠诲姟鍙凤細"+basAgvMast.getTaskNo()+"====銆婣GV浠诲姟涓嬪彂澶辫触"+e.getMessage());
+ }
+ }
+ }catch (Exception e){
+ log.error("AGV浠诲姟涓嬪彂澶辫触"+e.getMessage());
+ }
+ }
+
+ /*
+ * agv浠诲姟涓嬪彂:AGV搴撲綅==銆婣GV搴撲綅
+ * */
+ public synchronized void agvTaskAssignment1() {
+ try{
+ List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0));
+ for (BasAgvMast basAgvMast : basAgvMastList) {
+ if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=1){//1==銆婣GV搴撲綅==銆婣GV搴撲綅
+ continue;
+ }
+ try{
+ AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam();
+
+ //浠诲姟涓嬪彂
+ ReturnT<String> result = new PostMesDataUtils().postMesData("AGV浠诲姟涓嬪彂", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam);
+ if (result.getCode()==200){
+ basAgvMast.setStatus(1);
+ basAgvMastService.updateById(basAgvMast);
+ } else {
+ agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV浠诲姟涓嬪彂澶辫触", "浠诲姟鍙凤細"+basAgvMast.getTaskNo()+"浠诲姟淇℃伅涓嬪彂澶辫触锛侊紒锛�", false);
+ }
+
+ } catch (Exception e){
+ log.error("浠诲姟鍙凤細"+basAgvMast.getTaskNo()+"====銆婣GV浠诲姟涓嬪彂澶辫触"+e.getMessage());
+ }
+ }
+ }catch (Exception e){
+ log.error("AGV浠诲姟涓嬪彂澶辫触"+e.getMessage());
+ }
+ }
+
+ /*
+ * agv浠诲姟涓嬪彂:杈撻�佺嚎绔欑偣==銆婣GV搴撲綅
+ * */
+ public synchronized void agvTaskAssignment2() {
+ try{
+ List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0));
+ for (BasAgvMast basAgvMast : basAgvMastList) {
+ if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=2){//2==銆嬭緭閫佺嚎绔欑偣==銆婣GV搴撲綅
continue;
}
try{
@@ -4655,6 +4728,55 @@
}
}
+ /*
+ * agv浠诲姟涓嬪彂:杈撻�佺嚎绔欑偣==銆嬭緭閫佺嚎绔欑偣
+ * */
+ public synchronized void agvTaskAssignment3() {
+ try{
+ List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0));
+ for (BasAgvMast basAgvMast : basAgvMastList) {
+ if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=3){//3==銆嬭緭閫佺嚎绔欑偣==銆嬭緭閫佺嚎绔欑偣
+ continue;
+ }
+ try{
+ // 鑾峰彇绔欑偣淇℃伅
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId());
+ StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getSourceStaNo());
+ if (staProtocol == null || !staProtocol.isLoading()) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ // 鑾峰彇绔欑偣淇℃伅
+ StaProtocol staProtocolEnd = devpThread.getStation().get(basAgvMast.getStaNo());
+ if (staProtocolEnd == null || !staProtocolEnd.isAutoing()) {
+ continue;
+ } else {
+ staProtocolEnd = staProtocolEnd.clone();
+ }
+
+ if (!Cools.isEmpty(staProtocol.getWorkNo()) && staProtocol.getWorkNo().equals(basAgvMast.getTaskNo())){
+
+ AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam();
+
+ //浠诲姟涓嬪彂
+ ReturnT<String> result = new PostMesDataUtils().postMesData("AGV浠诲姟涓嬪彂", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam);
+ if (result.getCode()==200){
+ basAgvMast.setStatus(1);
+ basAgvMastService.updateById(basAgvMast);
+ } else {
+ agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV浠诲姟涓嬪彂澶辫触", "浠诲姟鍙凤細"+basAgvMast.getTaskNo()+"浠诲姟淇℃伅涓嬪彂澶辫触锛侊紒锛�", false);
+ }
+ }
+ } catch (Exception e){
+ log.error("浠诲姟鍙凤細"+basAgvMast.getTaskNo()+"====銆婣GV浠诲姟涓嬪彂澶辫触"+e.getMessage());
+ }
+ }
+ }catch (Exception e){
+ log.error("AGV浠诲姟涓嬪彂澶辫触"+e.getMessage());
+ }
+ }
+
public void agvTaskAssignmentCallApiLogSave(BasAgvMast basAgvMast ,String tableName, String response, Boolean bool) {
ApiLog apiLog = apiLogService.selectOne(new EntityWrapper<ApiLog>()
.eq("namespace", "Agv浠诲姟涓嬪彂")
--
Gitblit v1.9.1