From 5701eb6693c654d53f1bba460eb3a417d495b344 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 11 六月 2025 17:31:53 +0800
Subject: [PATCH] bug修复;下发任务给rcs携带货架码
---
src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java | 96 +++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 82 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index d8d63ba..bce6969 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -16,6 +16,8 @@
import com.zy.asrs.service.*;
import com.zy.common.service.AgvCommonService;
import com.zy.common.utils.HttpHandler;
+import com.zy.system.entity.Config;
+import com.zy.system.service.ConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -28,6 +30,9 @@
@Service
@Slf4j
public class AgvWrkMastServiceImp extends ServiceImpl<AgvWrkMastMapper, AgvWrkMast> implements AgvWrkMastService {
+
+ @Value("${agv.flag}")
+ private boolean flag;
@Value("${agv.url}")
private String url;
@@ -61,15 +66,17 @@
private AgvCommonService agvCommonService;
@Autowired
private AgvWrkMastService agvWrkMastService;
+ @Autowired
+ private ConfigService configService;
- public void updateWrkStsByWrkNo(int wrkNo, long wrkSts) {
+ public Boolean updateWrkStsByWrkNo(int wrkNo, long wrkSts) {
AgvWrkMast agvWrkMast = this.selectById(wrkNo);
//鍒ゆ柇瑕佷慨鏀圭殑宸ヤ綔妗g姸鎬佹槸鍚﹀悎鐞嗭紝濡傛灉涓嶅悎鐞嗗垯鎶涘嚭寮傚父
checkWrkSts(agvWrkMast, wrkSts);
agvWrkMast.setWrkSts(wrkSts);
agvWrkMast.setModiTime(new Date());
- this.updateById(agvWrkMast);
+ return this.updateById(agvWrkMast);
}
public void updateWrkStsByWrkNo(int wrkNo, long wrkSts, String manuType, long userId) {
@@ -262,17 +269,77 @@
}
break;
default:
- agvTaskCreateParam.setTaskTyp("F01");
+ if (processUseTiShengJi(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo())) {
+ agvTaskCreateParam.setTaskTyp("F06");
+ } else {
+ agvTaskCreateParam.setTaskTyp("F01");
+ }
break;
}
+ try {
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "BARCODE"));
+ boolean flag = false;
+ if (!Cools.isEmpty(config)) {
+ flag = config.getValue().equals("Y");
+ }
+ if (!Cools.isEmpty(agvWrkMast.getBarcode()) && flag) {
+ agvTaskCreateParam.setPodCode(agvWrkMast.getBarcode());
+ }
+ }catch (Exception e){
+ }
agvTaskCreateParam.setPositionCodePath(agvTaskParamList);
}
+ // TODO 鍥涙湡
+ private boolean processUseTiShengJi(String sourceLocNo, String locNo) {
+ // 鍒ゆ柇鏄惁鏄彁鍗囨満
+ if (sourceLocNo.startsWith("YZ")) {
+ if (sourceLocNo.endsWith("01F2") && !locNo.startsWith("YZ") && locNo.endsWith("F4")) {
+ // 浠庣敓浜т簩鍘傜殑搴撲綅鍒板惛濉戜簩鍘傜殑鐐逛綅涓�
+ return true;
+ } else if (sourceLocNo.endsWith("01F2") && locNo.startsWith("YZ") && locNo.endsWith("02F1")) {
+ // 浠庣敓浜т簩鍘傜殑搴撲綅鍒板惛濉戜簩鍘傜殑搴撲綅
+ return true;
+ } else if (sourceLocNo.endsWith("02F1") && locNo.startsWith("YZ") && locNo.endsWith("01F2")) {
+ // 鍚稿浜屾ゼ鐨勫簱浣嶅埌鐢熶骇浜屽巶鐨勫簱浣�
+ return true;
+ } else if (sourceLocNo.endsWith("02F1") && !locNo.startsWith("YZ") && locNo.endsWith("F2")) {
+ // 鍚稿浜屾ゼ鐨勫簱浣嶅埌鐢熶骇浜屽巶鐨勭偣浣�
+ return true;
+ } else if (sourceLocNo.endsWith("01F1") && !locNo.startsWith("YZ") && locNo.endsWith("F4")) {
+ // 浠庡惛濉戜竴妤肩殑搴撲綅鍒板惛濉戜簩妤肩殑鐐逛綅涓�
+ return true;
+ } else if (sourceLocNo.endsWith("02F1") && !locNo.startsWith("YZ") && locNo.endsWith("F1")) {
+ // 浠庡惛濉慹r妤肩殑kuwei鍒板惛濉戜竴妤肩殑dianwei
+ return true;
+ }
+ } else {
+ if (sourceLocNo.endsWith("F4") && locNo.startsWith("YZ") && locNo.endsWith("01F2")) {
+ // 浠庡惛濉戜簩妤肩殑鐐逛綅鍒扮敓浜т簩鍘傜殑搴撲綅
+ return true;
+ } else if (sourceLocNo.endsWith("F2") && locNo.startsWith("YZ") && locNo.endsWith("02F1")) {
+ // 浠庣敓浜т簩鍘傜殑鐐逛綅鍒板惛濉戜簩妤肩殑搴撲綅
+ return true;
+ } else if (sourceLocNo.endsWith("F4") && locNo.startsWith("YZ") && locNo.endsWith("01F1")) {
+ // 浠庡惛濉戜簩妤肩殑鐐逛綅鍒板惛濉戜竴妤肩殑搴撲綅
+ return true;
+ } else if (sourceLocNo.endsWith("F1") && locNo.startsWith("YZ") && locNo.endsWith("02F1")) {
+ // 浠庡惛濉戜簩妤肩殑鐐逛綅鍒板惛濉戜竴妤肩殑搴撲綅
+ return true;
+ }
+ }
+ return false;
+ }
+
private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip) {
+ if (!flag) {
+ return 1;
+ }
String response = "";
boolean success = false;
+ int code = 0;
try {
response = new HttpHandler.Builder()
.setUri(url)
@@ -283,7 +350,7 @@
.doPost();
JSONObject jsonObject = JSON.parseObject(response);
- int code = Integer.parseInt(jsonObject.get("code").toString());
+ code = Integer.parseInt(jsonObject.get("code").toString());
if (code != 0) {
if (code == 6) {
log.info("AGV浠诲姟鍗曞彿宸蹭笂鎶�:{}", response);
@@ -300,19 +367,20 @@
return code;
} catch (Exception e) {
log.error(e.getMessage());
- //TODO 寮犺秴
throw new CoolException("璋冪敤AGV鍝嶅簲閿欒");
//return 1;
} finally {
- apiLogService.save(
- namespace,
- url + path,
- appkey,
- ip,
- JSON.toJSONString(JSONObject.toJSONString(requestParam)),
- response,
- success
- );
+ if (code != 6) {
+ apiLogService.save(
+ namespace,
+ url + path,
+ appkey,
+ ip,
+ JSON.toJSONString(JSONObject.toJSONString(requestParam)),
+ response,
+ success
+ );
+ }
}
}
--
Gitblit v1.9.1