From 29d3f24dc43df41103bc5f483bfc439494a80971 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 17 十二月 2025 09:30:32 +0800
Subject: [PATCH] 对接mes 对接华晓agv 对接海康agv 初始化开发
---
src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java | 752 +++++++++++++++++++++++++++++++++------------------------
1 files changed, 431 insertions(+), 321 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
index de80492..9e42536 100644
--- a/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
@@ -22,6 +22,7 @@
import com.zy.common.service.CommonService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -90,6 +91,10 @@
@Resource
private MobileService mobileService;
+ @Autowired
+ private DocTypeService docTypeService;
+ @Autowired
+ private OrderService orderService;
// region MES鎺ュ彛
@@ -124,7 +129,8 @@
} else {
throw new CoolException("鍚屾鐗╂枡淇℃伅锛岀敓鎴愬叆搴撳崟澶辫触");
}
-
+ mesReturn.setSuccess("1");
+ mesReturn.setMessage("");
return mesReturn;
}
@@ -189,20 +195,6 @@
if (mat == null) {
if (!matService.insert(newMat))
return -2;
- } else {
- JSONObject dbMemo = JSONObject.parseObject(mat.getMemo());
- dbMemo.remove("OrderNo");
- dbMemo.remove("qty");
- dbMemo.remove("ItemBarcode");
- JSONObject newMemo = JSONObject.parseObject(newMat.getMemo());
- newMemo.remove("OrderNo");
- newMemo.remove("qty");
- dbMemo.remove("ItemBarcode");
- if (!dbMemo.equals(newMemo)) {
- newMat.setId(mat.getId());
- if (!matService.updateById(newMat))
- return -2;
- }
}
} else {
return -1;
@@ -214,13 +206,12 @@
/**
* 鐗╂枡鍚屾鍏ュ簱鍗曪紝鎸塐rderNo鐢熸垚澶氫釜璁㈠崟
*
- *
* @param matRecvForm
* @return
*/
- public int inBoundOrder_List(MesMatRecvForm matRecvForm){
+ public int inBoundOrder_List(MesMatRecvForm matRecvForm) {
- long docType = 4; // docType鏍规嵁搴撶被鍨嬬‘瀹�
+ long docType = 1; // docType鏍规嵁搴撶被鍨嬬‘瀹� 鏉ユ枡鐢宠鍗�
long settle = 1;
Date now = new Date();
@@ -232,8 +223,12 @@
// 鏍¢獙璁㈠崟鏄惁閲嶅
OrderPakin order = orderPakinService.selectByNo(entry.getKey());
- if (order != null && !StringUtils.isEmpty(order.getOrderNo())) {
- return -1;
+ // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
+ if (!Cools.isEmpty(order)) {
+ if (order.getSettle() > 1L) {
+ throw new CoolException(entry.getKey() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ }
+ orderPakinService.remove(order.getId());
}
// 鐢熸垚璁㈠崟
@@ -243,52 +238,56 @@
newMemo.put("operuser", matRecvForm.getOperuser());
newMemo.put("itemdata", list);
+
+
+ // 鐢熸垚璁㈠崟
OrderPakin orderPakin = new OrderPakin();
orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
orderPakin.setOrderNo(entry.getKey());
orderPakin.setOrderTime(com.core.common.DateUtils.convert(now));
orderPakin.setDocType(docType);
- orderPakin.setSettle(settle);
+ orderPakin.setSettle(1L);
orderPakin.setStatus(1);
orderPakin.setCreateBy(defaultUserId);
orderPakin.setCreateTime(now);
orderPakin.setUpdateBy(defaultUserId);
orderPakin.setUpdateTime(now);
- orderPakin.setMemo(newMemo.toJSONString()); //涓洪鏂欏叆搴撳畬鎴愬弽棣堜繚瀛� JSONObject.toJSONString(matRecvForm)
+ orderPakin.setMemo(JSONObject.toJSONString(newMemo)); //涓哄嚭搴撳畬鎴愬弽棣堜繚瀛�
orderPakin.setPakinPakoutStatus(1);
- if (!orderPakinService.insert(orderPakin)) {
- log.error("MES淇濆瓨鍏ュ簱璁㈠崟涓绘。澶辫触");
- throw new CoolException("淇濆瓨鍏ュ簱璁㈠崟涓绘。澶辫触");
- }
+ orderPakinService.insert(orderPakin);
+ if (list != null && !list.isEmpty()) {
+ for (MesMatInfo mesMatInfo : list) {
- // 鐢熸垚鏄庣粏
- for (MesMatInfo mesMat : list) {
- Mat mat = matService.selectByMatnr(mesMat.getItemNo());
- OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
- orderDetlPakin.setOrderId(orderPakin.getId());
- orderDetlPakin.setOrderNo(orderPakin.getOrderNo());
- orderDetlPakin.setAnfme(Double.valueOf(mesMat.getQty()));
- orderDetlPakin.setQty(0.0);
- orderDetlPakin.setMatnr(mat.getMatnr());
- orderDetlPakin.setMaktx(mat.getMaktx());
- orderDetlPakin.setSpecs(mat.getSpecs());
- orderDetlPakin.setModel(mat.getModel());
- orderDetlPakin.setStandby1(JSONObject.toJSONString(mesMat.getItemBarcode())); // 闆朵欢浜岀淮鐮�
- orderDetlPakin.setStandby2("1"); //淇濆瓨榻愬鎬ф鏌ユ爣璇嗭紝1 妫�鏌ワ紱0 涓嶆鏌ワ紱
- orderDetlPakin.setCreateBy(defaultUserId);
- orderDetlPakin.setCreateTime(now);
- orderDetlPakin.setUpdateBy(defaultUserId);
- orderDetlPakin.setUpdateTime(now);
- orderDetlPakin.setStatus(1);
- orderDetlPakin.setPakinPakoutStatus(1);
- if (!orderDetlPakinService.insert(orderDetlPakin)) {
- log.error("MES淇濆瓨鍏ュ簱璁㈠崟鏄庣粏妗eけ璐�1");
- throw new CoolException("淇濆瓨鍏ュ簱璁㈠崟鏄庣粏妗eけ璐�1");
+ // 鐢熸垚鏄庣粏
+ Mat mat = matService.selectByMatnr(mesMatInfo.getItemNo());
+ if(Cools.isEmpty(mat)){
+ log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�="+mesMatInfo.getItemNo());
+ continue;
+ }
+ OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
+ orderDetlPakin.setOrderId(orderPakin.getId());
+ orderDetlPakin.setOrderNo(orderPakin.getOrderNo());
+ orderDetlPakin.setAnfme(Double.valueOf(mesMatInfo.getQty()));
+ orderDetlPakin.setQty(0.0);
+ orderDetlPakin.setMatnr(mat.getMatnr());
+ orderDetlPakin.setMaktx(mat.getMaktx());
+ orderDetlPakin.setSpecs(mat.getSpecs());
+ orderDetlPakin.setModel(mat.getModel());
+// orderDetlPakin.setThreeCode(mesOutApplyItem.getItemBarcode());
+// orderDetlPakin.setStandby1(mesOutApplyItem.getTrayid()); //淇濆瓨閰嶇洏鍙凤紝闈炴墭鐩樺彿
+ orderDetlPakin.setStandby2("0"); //淇濆瓨榻愬鎬ф鏌ユ爣璇嗭紝1 妫�鏌ワ紱0 涓嶆鏌ワ紱
+ orderDetlPakin.setCreateBy(defaultUserId);
+ orderDetlPakin.setCreateTime(now);
+ orderDetlPakin.setUpdateBy(defaultUserId);
+ orderDetlPakin.setUpdateTime(now);
+ orderDetlPakin.setStatus(1);
+ orderDetlPakin.setPakinPakoutStatus(1);
+ orderDetlPakinService.insert(orderDetlPakin);
}
}
}
-
return 1;
+
}
/**
@@ -348,9 +347,9 @@
String url = MES_URL + "MaterialReceiptAndReturn";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(mesRecvFeedback));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
return 1;
}
}
@@ -367,137 +366,137 @@
* @param mesOutApply
* @return 1 鎴愬姛锛�-1 璁㈠崟閲嶅锛�
*/
- public int outBoundOrder(MesOutApply mesOutApply){
+ public int outBoundOrder(MesOutApply mesOutApply) {
- // 绌烘墭鍑哄簱
- if (StringUtils.isEmpty(mesOutApply.getOrderNo()) && "01".equals(mesOutApply.getTransType())) {
- // 鐢熸垚绌烘墭鍑哄簱浠诲姟
- mobileService.callEmptyBinOutBound(WMS_TRANS_START_STATION_1,"1",defaultUserId);
-
- try {
- if (!StringUtils.isEmpty(mesOutApply.getTaskno()) && !StringUtils.isEmpty(mesOutApply.getStationId())) {
- TransTask transTask = new TransTask();
- transTask.setTaskno(mesOutApply.getTaskno());
- transTask.setTaskname(mesOutApply.getTaskname());
- transTask.setOrderNo(mesOutApply.getOrderNo());
- transTask.setTransType(mesOutApply.getTransType());
- transTask.setCurStationId(WMS_TRANS_START_STATION_1);
- transTask.setNextProcess(mesOutApply.getProductLineId());
- transTask.setNextStationId(mesOutApply.getStationId());
- transTask.setItemno(WMS_ZPALLET_ID); // 鍥哄畾涓虹┖鎵樼殑缂栫爜
- transTask.setQty(1); // 绌烘墭鍙嚭1涓�
- transTask.setProductLineId(mesOutApply.getProductLineId());
- transTask.setOperateType(1);
- transTask.setAgvFactory(1);
- JSONObject sendAgvTask = submitTask(transTask);
- if (!"1".equals(sendAgvTask.getString("Success"))) {
- log.error("鍑哄簱涓嬪彂agv杩愯緭浠诲姟澶辫触锛歿}", JSONObject.toJSONString(transTask));
- }
- }
- } catch (Exception e) {
- log.error("涓嬪彂AGV杩愯緭浠诲姟澶辫触", e);
- }
-
- return 1;
- } else { // 姣涘澂锛堢墿鏂欙級鍑哄簱
- // docType鏍规嵁搴撶被鍨嬬‘瀹�
- long docType = 7;
- long settle = 1;
-
- // 鏍¢獙璁㈠崟鏄惁閲嶅
- OrderPakout order = orderPakoutService.selectByNo(mesOutApply.getOrderNo());
- if (order != null && !StringUtils.isEmpty(order.getOrderNo())) {
- log.error("鍑哄簱璁㈠崟鍙烽噸澶嶏細{}",mesOutApply.getOrderNo());
- return -1;
- }
-
- // 鐢熸垚璁㈠崟
- Date now = new Date();
- OrderPakout orderPakout = new OrderPakout();
- orderPakout.setUuid( String.valueOf(snowflakeIdWorker.nextId()));
- orderPakout.setOrderNo(mesOutApply.getOrderNo());
- orderPakout.setOrderTime(com.core.common.DateUtils.convert(now));
- orderPakout.setDocType(docType);
- orderPakout.setSettle(settle);
- orderPakout.setStatus(1);
- orderPakout.setCreateBy(defaultUserId);
- orderPakout.setCreateTime(now);
- orderPakout.setUpdateBy(defaultUserId);
- orderPakout.setUpdateTime(now);
- orderPakout.setMemo(JSONObject.toJSONString(mesOutApply));
- orderPakout.setPakinPakoutStatus(2);
- if (!orderPakoutService.insert(orderPakout)) {
- log.error("MES淇濆瓨鍑哄簱璁㈠崟涓绘。澶辫触");
- throw new CoolException("淇濆瓨鍑哄簱璁㈠崟涓绘。澶辫触");
- }
-
- // 鐢熸垚鏄庣粏
- Mat mat = matService.selectByMatnr(mesOutApply.getItemno());
- OrderDetlPakout orderDetlPakout = new OrderDetlPakout();
- orderDetlPakout.setOrderId(orderPakout.getId());
- orderDetlPakout.setOrderNo(orderPakout.getOrderNo());
- orderDetlPakout.setAnfme(Double.valueOf(mesOutApply.getQty()));
- orderDetlPakout.setQty(0.0);
- orderDetlPakout.setMatnr(mat.getMatnr());
- orderDetlPakout.setMaktx(mat.getMaktx());
- orderDetlPakout.setSpecs(mat.getSpecs());
- orderDetlPakout.setModel(mat.getModel());
- orderDetlPakout.setStandby1(barCodeListToStr(mesOutApply.getItemBarcode()));
- orderDetlPakout.setCreateBy(defaultUserId);
- orderDetlPakout.setCreateTime(now);
- orderDetlPakout.setUpdateBy(defaultUserId);
- orderDetlPakout.setUpdateTime(now);
- orderDetlPakout.setStatus(1);
- orderDetlPakout.setPakinPakoutStatus(2);
- if (!orderDetlPakoutService.insert(orderDetlPakout)) {
- log.error("MES淇濆瓨鍑哄簱璁㈠崟鏄庣粏妗eけ璐�");
- throw new CoolException("淇濆瓨鍑哄簱璁㈠崟鏄庣粏妗eけ璐�");
- }
-
- // TODO锛氳嫢AGV鍜岃緭閫佺嚎娌℃湁瀹夊叏浜や簰锛屽垯瑕佷繚璇佺珛搴撳嚭璐у畬鎴愬悗鍐嶅懠鍙獳GV銆�
- // 绔嬪簱鐢熸垚璁㈠崟鍚庯紝鑷姩璋冨害AGV杩愰�佸埌绔欑偣锛岀洰鍓嶅鎵樼敓鎴愬涓��
- try {
- if (!StringUtils.isEmpty(mesOutApply.getTaskno()) && !StringUtils.isEmpty(mesOutApply.getStationId())) {
- // 鎸夐浂浠朵簩缁寸爜鏌ヨ鏈夊嚑涓墭锛屽鎵樼敓鎴愬涓换鍔★紝姣忔墭瀵瑰簲闆朵欢浜岀淮鐮�
- String barCode = barCodeListToStr(mesOutApply.getItemBarcode());
- EntityWrapper<MatItemBarcode> matItemBarcodeEntityWrapper = new EntityWrapper<>();
- matItemBarcodeEntityWrapper.in("item_barcode", barCode);
- List<MatItemBarcode> barcodes = matItemBarcodeMapper.selectList(matItemBarcodeEntityWrapper);
- if (barcodes != null) {
- Map<String, List<MatItemBarcode>> map = barcodes.stream().collect(Collectors.groupingBy(MatItemBarcode::getZapplet));
- for (Map.Entry<String, List<MatItemBarcode>> entry : map.entrySet()) {
- List<MatItemBarcode> list = entry.getValue();
- List<String> codes = new ArrayList<>();
- for (MatItemBarcode zapllet : list) {
- codes.add(zapllet.getItemBarcode());
- }
-
- TransTask transTask = new TransTask();
- transTask.setTaskno(mesOutApply.getTaskno());
- transTask.setTaskname(mesOutApply.getTaskname());
- transTask.setOrderNo(mesOutApply.getOrderNo());
- transTask.setTransType(mesOutApply.getTransType());
- transTask.setCurStationId(WMS_TRANS_START_STATION_3);
- transTask.setNextProcess(mesOutApply.getProductLineId());
- transTask.setNextStationId(mesOutApply.getStationId());
- transTask.setItemno(mesOutApply.getItemno());
- transTask.setQty(list.size());
- transTask.setProductLineId(mesOutApply.getProductLineId());
- transTask.setItemBarcode(codes);
- transTask.setTuoPanId(entry.getKey());
- transTask.setOperateType(1);
- transTask.setAgvFactory(1);
- JSONObject sendAgvTask = submitTask(transTask);
- if (!"1".equals(sendAgvTask.getString("Success"))) {
- log.error("鍑哄簱涓嬪彂agv杩愯緭浠诲姟澶辫触", JSONObject.toJSONString(transTask));
- }
- }
- }
- }
- } catch (Exception e) {
- log.error("涓嬪彂AGV杩愯緭浠诲姟澶辫触", e);
- }
- }
+// // 绌烘墭鍑哄簱
+// if (StringUtils.isEmpty(mesOutApply.getOrderNo()) && "01".equals(mesOutApply.getTransType())) {
+// // 鐢熸垚绌烘墭鍑哄簱浠诲姟
+// mobileService.callEmptyBinOutBound(WMS_TRANS_START_STATION_1, "1", defaultUserId);
+//
+// try {
+// if (!StringUtils.isEmpty(mesOutApply.getTaskno()) && !StringUtils.isEmpty(mesOutApply.getStationId())) {
+// TransTask transTask = new TransTask();
+// transTask.setTaskno(mesOutApply.getTaskno());
+// transTask.setTaskname(mesOutApply.getTaskname());
+// transTask.setOrderNo(mesOutApply.getOrderNo());
+// transTask.setTransType(mesOutApply.getTransType());
+// transTask.setCurStationId(WMS_TRANS_START_STATION_1);
+// transTask.setNextProcess(mesOutApply.getProductLineId());
+// transTask.setNextStationId(mesOutApply.getStationId());
+// transTask.setItemno(WMS_ZPALLET_ID); // 鍥哄畾涓虹┖鎵樼殑缂栫爜
+// transTask.setQty(1); // 绌烘墭鍙嚭1涓�
+// transTask.setProductLineId(mesOutApply.getProductLineId());
+// transTask.setOperateType(1);
+// transTask.setAgvFactory(1);
+// JSONObject sendAgvTask = submitTask(transTask);
+// if (!"1".equals(sendAgvTask.getString("Success"))) {
+// log.error("鍑哄簱涓嬪彂agv杩愯緭浠诲姟澶辫触锛歿}", JSONObject.toJSONString(transTask));
+// }
+// }
+// } catch (Exception e) {
+// log.error("涓嬪彂AGV杩愯緭浠诲姟澶辫触", e);
+// }
+//
+// return 1;
+// } else { // 姣涘澂锛堢墿鏂欙級鍑哄簱
+// // docType鏍规嵁搴撶被鍨嬬‘瀹�
+// long docType = 7;
+// long settle = 1;
+//
+// // 鏍¢獙璁㈠崟鏄惁閲嶅
+// OrderPakout order = orderPakoutService.selectByNo(mesOutApply.getOrderNo());
+// if (order != null && !StringUtils.isEmpty(order.getOrderNo())) {
+// log.error("鍑哄簱璁㈠崟鍙烽噸澶嶏細{}", mesOutApply.getOrderNo());
+// return -1;
+// }
+//
+// // 鐢熸垚璁㈠崟
+// Date now = new Date();
+// OrderPakout orderPakout = new OrderPakout();
+// orderPakout.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+// orderPakout.setOrderNo(mesOutApply.getOrderNo());
+// orderPakout.setOrderTime(com.core.common.DateUtils.convert(now));
+// orderPakout.setDocType(docType);
+// orderPakout.setSettle(settle);
+// orderPakout.setStatus(1);
+// orderPakout.setCreateBy(defaultUserId);
+// orderPakout.setCreateTime(now);
+// orderPakout.setUpdateBy(defaultUserId);
+// orderPakout.setUpdateTime(now);
+// orderPakout.setMemo(JSONObject.toJSONString(mesOutApply));
+// orderPakout.setPakinPakoutStatus(2);
+// if (!orderPakoutService.insert(orderPakout)) {
+// log.error("MES淇濆瓨鍑哄簱璁㈠崟涓绘。澶辫触");
+// throw new CoolException("淇濆瓨鍑哄簱璁㈠崟涓绘。澶辫触");
+// }
+//
+// // 鐢熸垚鏄庣粏
+// Mat mat = matService.selectByMatnr(mesOutApply.getItemno());
+// OrderDetlPakout orderDetlPakout = new OrderDetlPakout();
+// orderDetlPakout.setOrderId(orderPakout.getId());
+// orderDetlPakout.setOrderNo(orderPakout.getOrderNo());
+// orderDetlPakout.setAnfme(Double.valueOf(mesOutApply.getQty()));
+// orderDetlPakout.setQty(0.0);
+// orderDetlPakout.setMatnr(mat.getMatnr());
+// orderDetlPakout.setMaktx(mat.getMaktx());
+// orderDetlPakout.setSpecs(mat.getSpecs());
+// orderDetlPakout.setModel(mat.getModel());
+// orderDetlPakout.setStandby1(barCodeListToStr(mesOutApply.getItemBarcode()));
+// orderDetlPakout.setCreateBy(defaultUserId);
+// orderDetlPakout.setCreateTime(now);
+// orderDetlPakout.setUpdateBy(defaultUserId);
+// orderDetlPakout.setUpdateTime(now);
+// orderDetlPakout.setStatus(1);
+// orderDetlPakout.setPakinPakoutStatus(2);
+// if (!orderDetlPakoutService.insert(orderDetlPakout)) {
+// log.error("MES淇濆瓨鍑哄簱璁㈠崟鏄庣粏妗eけ璐�");
+// throw new CoolException("淇濆瓨鍑哄簱璁㈠崟鏄庣粏妗eけ璐�");
+// }
+//
+// // TODO锛氳嫢AGV鍜岃緭閫佺嚎娌℃湁瀹夊叏浜や簰锛屽垯瑕佷繚璇佺珛搴撳嚭璐у畬鎴愬悗鍐嶅懠鍙獳GV銆�
+// // 绔嬪簱鐢熸垚璁㈠崟鍚庯紝鑷姩璋冨害AGV杩愰�佸埌绔欑偣锛岀洰鍓嶅鎵樼敓鎴愬涓��
+// try {
+// if (!StringUtils.isEmpty(mesOutApply.getTaskno()) && !StringUtils.isEmpty(mesOutApply.getStationId())) {
+// // 鎸夐浂浠朵簩缁寸爜鏌ヨ鏈夊嚑涓墭锛屽鎵樼敓鎴愬涓换鍔★紝姣忔墭瀵瑰簲闆朵欢浜岀淮鐮�
+// String barCode = barCodeListToStr(mesOutApply.getItemBarcode());
+// EntityWrapper<MatItemBarcode> matItemBarcodeEntityWrapper = new EntityWrapper<>();
+// matItemBarcodeEntityWrapper.in("item_barcode", barCode);
+// List<MatItemBarcode> barcodes = matItemBarcodeMapper.selectList(matItemBarcodeEntityWrapper);
+// if (barcodes != null) {
+// Map<String, List<MatItemBarcode>> map = barcodes.stream().collect(Collectors.groupingBy(MatItemBarcode::getZapplet));
+// for (Map.Entry<String, List<MatItemBarcode>> entry : map.entrySet()) {
+// List<MatItemBarcode> list = entry.getValue();
+// List<String> codes = new ArrayList<>();
+// for (MatItemBarcode zapllet : list) {
+// codes.add(zapllet.getItemBarcode());
+// }
+//
+// TransTask transTask = new TransTask();
+// transTask.setTaskno(mesOutApply.getTaskno());
+// transTask.setTaskname(mesOutApply.getTaskname());
+// transTask.setOrderNo(mesOutApply.getOrderNo());
+// transTask.setTransType(mesOutApply.getTransType());
+// transTask.setCurStationId(WMS_TRANS_START_STATION_3);
+// transTask.setNextProcess(mesOutApply.getProductLineId());
+// transTask.setNextStationId(mesOutApply.getStationId());
+// transTask.setItemno(mesOutApply.getItemno());
+// transTask.setQty(list.size());
+// transTask.setProductLineId(mesOutApply.getProductLineId());
+// transTask.setItemBarcode(codes);
+// transTask.setTuoPanId(entry.getKey());
+// transTask.setOperateType(1);
+// transTask.setAgvFactory(1);
+// JSONObject sendAgvTask = submitTask(transTask);
+// if (!"1".equals(sendAgvTask.getString("Success"))) {
+// log.error("鍑哄簱涓嬪彂agv杩愯緭浠诲姟澶辫触", JSONObject.toJSONString(transTask));
+// }
+// }
+// }
+// }
+// } catch (Exception e) {
+// log.error("涓嬪彂AGV杩愯緭浠诲姟澶辫触", e);
+// }
+// }
return 1;
}
@@ -509,33 +508,33 @@
* @param mesInApply
*/
@Transactional
- public int inBoundOrder(MesInApply mesInApply){
+ public int inBoundOrder(MesInApply mesInApply) {
// 绌烘墭鍥炲簱
if (StringUtils.isEmpty(mesInApply.getOrderNo()) && StringUtils.isEmpty(mesInApply.getItemno())) {
- if (!StringUtils.isEmpty(mesInApply.getTaskno()) && !StringUtils.isEmpty(mesInApply.getStationID())) {
- TransTask transTask = new TransTask();
- transTask.setTaskno(mesInApply.getTaskno());
- transTask.setTaskname(mesInApply.getTaskname());
- transTask.setOrderNo(mesInApply.getOrderNo());
- transTask.setTransType(mesInApply.getTransType());
- transTask.setCurProcess(mesInApply.getProductLineId());
- transTask.setCurStationId(mesInApply.getStationID());
- transTask.setNextStationId(WMS_TRANS_START_STATION_2);
- transTask.setItemno(WMS_ZPALLET_ID); // 鍥哄畾涓虹┖鎵樼殑缂栫爜
- transTask.setQty(1); // 绌烘墭鍙洖1涓�
- transTask.setProductLineId(mesInApply.getProductLineId());
- transTask.setOperateType(1);
- transTask.setAgvFactory(1);
- JSONObject sendAgvTask = submitTask(transTask);
- if (!"1".equals(sendAgvTask.getString("Success"))) {
- log.error("鍑哄簱涓嬪彂agv杩愯緭浠诲姟澶辫触,{}", JSONObject.toJSONString(transTask));
- return 2;
- }
- } else {
- log.error("鏃犱换鍔″彿锛歿}锛屾垨鏃犵墿鏂欑紪鐮�:{}",mesInApply.getTaskno(),mesInApply.getItemno() );
+ if (!StringUtils.isEmpty(mesInApply.getTaskno()) && !StringUtils.isEmpty(mesInApply.getStationID())) {
+ TransTask transTask = new TransTask();
+ transTask.setTaskno(mesInApply.getTaskno());
+ transTask.setTaskname(mesInApply.getTaskname());
+ transTask.setOrderNo(mesInApply.getOrderNo());
+ transTask.setTransType(mesInApply.getTransType());
+ transTask.setCurProcess(mesInApply.getProductLineId());
+ transTask.setCurStationId(mesInApply.getStationID());
+ transTask.setNextStationId(WMS_TRANS_START_STATION_2);
+ transTask.setItemno(WMS_ZPALLET_ID); // 鍥哄畾涓虹┖鎵樼殑缂栫爜
+ transTask.setQty(1); // 绌烘墭鍙洖1涓�
+ transTask.setProductLineId(mesInApply.getProductLineId());
+ transTask.setOperateType(1);
+ transTask.setAgvFactory(1);
+ JSONObject sendAgvTask = submitTask(transTask);
+ if (!"1".equals(sendAgvTask.getString("Success"))) {
+ log.error("鍑哄簱涓嬪彂agv杩愯緭浠诲姟澶辫触,{}", JSONObject.toJSONString(transTask));
return 2;
}
+ } else {
+ log.error("鏃犱换鍔″彿锛歿}锛屾垨鏃犵墿鏂欑紪鐮�:{}", mesInApply.getTaskno(), mesInApply.getItemno());
+ return 2;
+ }
return 1;
} else { // 姣涘澂銆佹垚鍝佸洖搴�
@@ -716,9 +715,9 @@
String url = MES_URL + "issueComplete";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(mesOutFeedback));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
success = 1;
}
}
@@ -759,9 +758,9 @@
String url = MES_URL + "loadComplete";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(result));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
success = 1;
}
}
@@ -819,9 +818,9 @@
String url = MES_URL + "loadComplete";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(result));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
success++;
}
}
@@ -885,9 +884,9 @@
String url = MES_URL + "issueComplete";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(mesOutFeedback));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
success++;
}
}
@@ -934,67 +933,144 @@
* @param mesCallOutApply
* @return
*/
- public int callOutBoundOrder(MesCallOutApply mesCallOutApply){
-
- // docType鏍规嵁搴撶被鍨嬬‘瀹�
- long docType = 7;
- long settle = 1;
-
- // 鏍¢獙璁㈠崟鏄惁閲嶅
- OrderPakout order = orderPakoutService.selectByNo(mesCallOutApply.getOrderNo());
- if (order != null && !StringUtils.isEmpty(order.getOrderNo())) {
- return -1;
+ public int callOutBoundOrder(MesCallOutApply mesCallOutApply) {
+ DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", mesCallOutApply.getTransType()));
+ if (docType == null) {
+ return 0;
}
+ //鐢熸垚鍑哄簱鍗�
+ if (docType.getPakout() == 1) {
+ long settle = 1;
- // 鐢熸垚璁㈠崟
- Date now = new Date();
- OrderPakout orderPakout = new OrderPakout();
- orderPakout.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
- orderPakout.setOrderNo(mesCallOutApply.getOrderNo());
- orderPakout.setOrderTime(com.core.common.DateUtils.convert(now));
- orderPakout.setDocType(docType);
- orderPakout.setSettle(settle);
- orderPakout.setStatus(1);
- orderPakout.setCreateBy(defaultUserId);
- orderPakout.setCreateTime(now);
- orderPakout.setUpdateBy(defaultUserId);
- orderPakout.setUpdateTime(now);
- orderPakout.setMemo(JSONObject.toJSONString(mesCallOutApply));
- orderPakout.setPakinPakoutStatus(2);
- if (!orderPakoutService.insert(orderPakout)) {
- log.error("MES淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
- throw new CoolException("淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
- }
+ // 鏍¢獙璁㈠崟鏄惁閲嶅
+ OrderPakout order = orderPakoutService.selectByNo(mesCallOutApply.getOrderNo());
+ // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
+ if (!Cools.isEmpty(order)) {
+ if (order.getSettle() > 1L) {
+ throw new CoolException(mesCallOutApply.getOrderNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ }
+ orderPakoutService.remove(order.getId());
+ }
- // 鐢熸垚鏄庣粏
- if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
- for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()) {
- Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
- OrderDetlPakout orderDetlPakout = new OrderDetlPakout();
- orderDetlPakout.setOrderId(orderPakout.getId());
- orderDetlPakout.setOrderNo(orderPakout.getOrderNo());
- orderDetlPakout.setAnfme(Double.valueOf(mesOutApplyItem.getQty()));
- orderDetlPakout.setQty(0.0);
- orderDetlPakout.setMatnr(mat.getMatnr());
- orderDetlPakout.setMaktx(mat.getMaktx());
- orderDetlPakout.setSpecs(mat.getSpecs());
- orderDetlPakout.setModel(mat.getModel());
- orderDetlPakout.setThreeCode(mesOutApplyItem.getItemBarcode());
- orderDetlPakout.setStandby1(mesOutApplyItem.getTrayid()); //淇濆瓨閰嶇洏鍙凤紝闈炴墭鐩樺彿
- orderDetlPakout.setCreateBy(defaultUserId);
- orderDetlPakout.setCreateTime(now);
- orderDetlPakout.setUpdateBy(defaultUserId);
- orderDetlPakout.setUpdateTime(now);
- orderDetlPakout.setStatus(1);
- orderDetlPakout.setPakinPakoutStatus(2);
- if (!orderDetlPakoutService.insert(orderDetlPakout)) {
- log.error("MES淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級鏄庣粏妗eけ璐�");
- throw new CoolException("淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級鏄庣粏妗eけ璐�");
+ // 鐢熸垚璁㈠崟
+ Date now = new Date();
+ OrderPakout orderPakout = new OrderPakout();
+ orderPakout.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+ orderPakout.setOrderNo(mesCallOutApply.getOrderNo());
+ orderPakout.setOrderTime(com.core.common.DateUtils.convert(now));
+ orderPakout.setDocType(docType.getDocId());
+ orderPakout.setSettle(settle);
+ orderPakout.setStatus(1);
+ orderPakout.setCreateBy(defaultUserId);
+ orderPakout.setCreateTime(now);
+ orderPakout.setUpdateBy(defaultUserId);
+ orderPakout.setUpdateTime(now);
+ orderPakout.setMemo(JSONObject.toJSONString(mesCallOutApply));
+ orderPakout.setPakinPakoutStatus(2);
+ if (!orderPakoutService.insert(orderPakout)) {
+ log.error("MES淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
+ throw new CoolException("淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
+ }
+ Set<String> set = new HashSet<>();
+ // 鐢熸垚鏄庣粏
+ if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
+ for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()) {
+
+ set.add(mesOutApplyItem.getTrayid());
+ Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
+ OrderDetlPakout orderDetlPakout = new OrderDetlPakout();
+ orderDetlPakout.setOrderId(orderPakout.getId());
+ orderDetlPakout.setOrderNo(orderPakout.getOrderNo());
+ orderDetlPakout.setAnfme(Double.valueOf(mesOutApplyItem.getQty()));
+ orderDetlPakout.setQty(0.0);
+ orderDetlPakout.setMatnr(mat.getMatnr());
+ orderDetlPakout.setMaktx(mat.getMaktx());
+ orderDetlPakout.setSpecs(mat.getSpecs());
+ orderDetlPakout.setModel(mat.getModel());
+ orderDetlPakout.setThreeCode(mesOutApplyItem.getItemBarcode());
+ orderDetlPakout.setStandby1(mesOutApplyItem.getTrayid()); //淇濆瓨閰嶇洏鍙凤紝闈炴墭鐩樺彿
+ orderDetlPakout.setCreateBy(defaultUserId);
+ orderDetlPakout.setCreateTime(now);
+ orderDetlPakout.setUpdateBy(defaultUserId);
+ orderDetlPakout.setUpdateTime(now);
+ orderDetlPakout.setStatus(1);
+ orderDetlPakout.setPakinPakoutStatus(2);
+ if (!orderDetlPakoutService.insert(orderDetlPakout)) {
+ log.error("MES淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級鏄庣粏妗eけ璐�");
+ throw new CoolException("淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級鏄庣粏妗eけ璐�");
+ }
}
}
+
+ //鏈夊灏戠涓嶅悓鐨勯厤鐩樺彿 鍙湁閰嶇洏鍑哄簱鍗曢渶瑕佺煡閬�
+ if (mesCallOutApply.getTransType().equals("閰嶇洏鍑哄簱鍗�")){
+ orderPakout.setPayType(set.size());
+ String shipCode =mesCallOutApply.getItemdata().get(0).getTrayid().split("-")[2];
+ orderPakout.setShipCode(shipCode);//鍖哄煙 鏄惁鏄壒娈婃墭鐩�
+ orderPakoutService.updateById(orderPakout);
+ }
+
+ return 1;
+ } else {
+ // 鏍¢獙璁㈠崟鏄惁閲嶅
+ OrderPakin order = orderPakinService.selectByNo(mesCallOutApply.getOrderNo());
+ // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
+ if (!Cools.isEmpty(order)) {
+ if (order.getSettle() > 1L) {
+ throw new CoolException(mesCallOutApply.getOrderNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ }
+ orderPakinService.remove(order.getId());
+ }
+
+ // 鐢熸垚璁㈠崟
+ Date now = new Date();
+ OrderPakin orderPakin = new OrderPakin();
+ orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+ orderPakin.setOrderNo(mesCallOutApply.getOrderNo());
+ orderPakin.setOrderTime(com.core.common.DateUtils.convert(now));
+ orderPakin.setDocType(docType.getDocId());
+ orderPakin.setSettle(1L);
+ orderPakin.setStatus(1);
+ orderPakin.setCreateBy(defaultUserId);
+ orderPakin.setCreateTime(now);
+ orderPakin.setUpdateBy(defaultUserId);
+ orderPakin.setUpdateTime(now);
+ orderPakin.setMemo(JSONObject.toJSONString(mesCallOutApply)); //涓哄嚭搴撳畬鎴愬弽棣堜繚瀛�
+ orderPakin.setPakinPakoutStatus(1);
+ orderPakinService.insert(orderPakin);
+ if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
+ for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()){
+ // 鐢熸垚鏄庣粏
+ Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
+ if(Cools.isEmpty(mat)){
+ log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�="+mesOutApplyItem.getItemno());
+ continue;
+ }
+ OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
+ orderDetlPakin.setOrderId(orderPakin.getId());
+ orderDetlPakin.setOrderNo(orderPakin.getOrderNo());
+ orderDetlPakin.setAnfme(Double.valueOf(mesOutApplyItem.getQty()));
+ orderDetlPakin.setQty(0.0);
+ orderDetlPakin.setMatnr(mat.getMatnr());
+ orderDetlPakin.setMaktx(mat.getMaktx());
+ orderDetlPakin.setSpecs(mat.getSpecs());
+ orderDetlPakin.setModel(mat.getModel());
+ orderDetlPakin.setThreeCode(mesOutApplyItem.getItemBarcode());
+ orderDetlPakin.setStandby1(mesOutApplyItem.getTrayid()); //淇濆瓨閰嶇洏鍙凤紝闈炴墭鐩樺彿
+ orderDetlPakin.setStandby2("0"); //淇濆瓨榻愬鎬ф鏌ユ爣璇嗭紝1 妫�鏌ワ紱0 涓嶆鏌ワ紱
+ orderDetlPakin.setCreateBy(defaultUserId);
+ orderDetlPakin.setCreateTime(now);
+ orderDetlPakin.setUpdateBy(defaultUserId);
+ orderDetlPakin.setUpdateTime(now);
+ orderDetlPakin.setStatus(1);
+ orderDetlPakin.setPakinPakoutStatus(1);
+ orderDetlPakinService.insert(orderDetlPakin);
+ }
+
+ }
+ return 1;
}
- return 1;
}
// endregion
@@ -1046,18 +1122,18 @@
rcsTaskSubmit.setTargetRoute(targetRouteList);
// 杞彂缁欐捣搴锋垨鍗庢檽RCS
-// int success = rcsService.submitTask(rcsTaskSubmit, transTask.getAgvFactory());
- int success = 1;
+ int success = rcsService.submitTask(rcsTaskSubmit, transTask.getAgvFactory());
if (success == 1) {
int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
Date now = new Date();
Task task = new Task();
task.setWrkNo(workNo);
- task.setTaskType("AGV");
- task.setWrkSts(301L);
- task.setIoType(3);
+ task.setTaskType("ZX-AGV");
+ task.setWrkSts(302L);//302.AGV浠诲姟鎵ц涓�
+ task.setIoType(3);//3.绔欏埌绔�
task.setIoPri(10.00);
task.setWrkDate(now);
+ task.setBarcode(transTask.getBarcode());
task.setSourceStaNo(transTask.getCurStationId());
task.setStaNo(transTask.getNextStationId());
task.setBarcode(transTask.getTuoPanId());
@@ -1067,25 +1143,27 @@
task.setAppeTime(now);
task.setTaskNo(transTask.getTaskno());
task.setMemo(JSONObject.toJSONString(transTask));
+ task.setPltType(transTask.getAgvFactory());//鍗庢檽AGV
+ task.setPacked(transTask.getRackNumber());//鏂欐灦鍙�
taskService.insert(task);
- Mat mat = matService.selectByMatnr(transTask.getItemno());
- TaskDetl taskDetl = new TaskDetl();
- taskDetl.setWrkNo(task.getWrkNo());
- taskDetl.setIoTime(task.getIoTime());
- taskDetl.setMatnr(transTask.getItemno());
- taskDetl.setAnfme(0.0);
- taskDetl.setStandby1(String.valueOf(transTask.getQty()));
- taskDetl.setMaktx(mat.getMaktx());
- taskDetl.setSpecs(mat.getSpecs());
- taskDetl.setOrderNo(transTask.getOrderNo());
- taskDetl.setZpallet(transTask.getTuoPanId());
- taskDetl.setMemo(JSONObject.toJSONString(transTask.getItemBarcode()));
- taskDetl.setModiUser(defaultUserId);
- taskDetl.setModiTime(now);
- taskDetl.setAppeUser(defaultUserId);
- taskDetl.setAppeTime(now);
- taskDetlService.insert(taskDetl);
+// Mat mat = matService.selectByMatnr(transTask.getItemno());
+// TaskDetl taskDetl = new TaskDetl();
+// taskDetl.setWrkNo(task.getWrkNo());
+// taskDetl.setIoTime(task.getIoTime());
+// taskDetl.setMatnr(transTask.getItemno());
+// taskDetl.setAnfme(0.0);
+// taskDetl.setStandby1(String.valueOf(transTask.getQty()));
+// taskDetl.setMaktx(mat.getMaktx());
+// taskDetl.setSpecs(mat.getSpecs());
+// taskDetl.setOrderNo(transTask.getOrderNo());
+// taskDetl.setZpallet(transTask.getTuoPanId());
+// taskDetl.setMemo(JSONObject.toJSONString(transTask.getItemBarcode()));
+// taskDetl.setModiUser(defaultUserId);
+// taskDetl.setModiTime(now);
+// taskDetl.setAppeUser(defaultUserId);
+// taskDetl.setAppeTime(now);
+// taskDetlService.insert(taskDetl);
result.put("Success", "1");
result.put("Message", "浠诲姟鎺ユ敹鎴愬姛");
} else {
@@ -1125,9 +1203,9 @@
String url = MES_URL + "api/task/reporter";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(transTaskFeedback));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
return 1;
}
}
@@ -1146,9 +1224,9 @@
String url = MES_URL + "api/apply/inLine";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(apply));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
JSONObject jsonObject = JSONObject.parseObject(response);
- if("1".equals(jsonObject.getString("Success"))) {
+ if ("1".equals(jsonObject.getString("Success"))) {
return jsonObject.getJSONObject("Data").getString("status");
}
}
@@ -1163,12 +1241,12 @@
* @return
*/
public int applyInStation(TransParent apply) {
- String path = ("LL").equals(apply.getProductLineId()) ? "AGVTransportPalletNotice" : "AprsAGVTransportPalletNotice";
+ String path = "AGVTransportPalletNotice";
String url = MES_URL + path;
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(apply));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
return 1;
}
}
@@ -1185,19 +1263,34 @@
public MesReturn allowInStation(TransInOutStationAllow allow) {
MesReturn mesReturn = new MesReturn();
- mesReturn.setSuccess("1");
+ mesReturn.setSuccess("2");
if ("Y".equals(allow.getStatus())) {
- RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
- rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
- rcsTaskContinue.setTriggerType("TASK");
- rcsTaskContinue.setTriggerCode(allow.getTaskno());
+ Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", allow.getTaskno()));
+ if (Cools.isEmpty(task)) {
+ mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + allow.getTaskno() + "鐨凙GV绉诲姩浠诲姟");
+ } else {
+ //鏌ョ湅鐢宠绔欑偣鐨勬槸娴峰悍杩樻槸鍗庢檽
+ //娴峰悍
+ if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1) {
+ RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
+ rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
+ rcsTaskContinue.setTriggerType("TASK");
+ rcsTaskContinue.setTriggerCode(allow.getTaskno());
// rcsTaskContinue.setTriggerType("ROBOT");
// rcsTaskContinue.setTriggerCode(allow.getAgvCode());
- int success = rcsService.continueTask(rcsTaskContinue, checkRcsFactory(allow.getAgvCode()));
- mesReturn.setSuccess(success == 1 ? "1" : "2");
- mesReturn.setMessage(success == 1 ? "" : "杞彂缁橰CS澶辫触");
+ int success = rcsService.continueTask(rcsTaskContinue, 1);
+ mesReturn.setSuccess(success == 1 ? "1" : "2");
+ mesReturn.setMessage(success == 1 ? "" : "杞彂缁橰CS澶辫触");
+ } else {
+ allow.setMethod("APPLY_IN_STATION");
+ int success = rcsService.continueTask(allow, 2);
+ mesReturn.setSuccess(success == 1 ? "1" : "2");
+ mesReturn.setMessage(success == 1 ? "" : "杞彂缁橰CS澶辫触");
+ }
+
+ }
}
return mesReturn;
@@ -1219,9 +1312,9 @@
String url = MES_URL + "AGVArrivalCompleted";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(arrivalStation));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
return 1;
}
}
@@ -1237,11 +1330,11 @@
*/
public int applyOutStation(TransParent apply) {
- String url = MES_URL + "api/apply/outStation";
+ String url = MES_URL + "AGVDepartureRequest";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(apply));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
return 1;
}
}
@@ -1258,17 +1351,34 @@
public MesReturn allowOutStation(TransInOutStationAllow allow) {
MesReturn mesReturn = new MesReturn();
- mesReturn.setSuccess("1");
+ mesReturn.setSuccess("2");
if ("Y".equals(allow.getStatus())) {
- RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
- rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
- rcsTaskContinue.setTriggerType("TASK");
- rcsTaskContinue.setTriggerCode(allow.getTaskno());
+ Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", allow.getTaskno()));
+ if (Cools.isEmpty(task)) {
+ mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + allow.getTaskno() + "鐨凙GV绉诲姩浠诲姟");
+ } else {
+ //鏌ョ湅鐢宠绔欑偣鐨勬槸娴峰悍杩樻槸鍗庢檽
+ //娴峰悍
+ if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1) {
+ RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
+ rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
+ rcsTaskContinue.setTriggerType("TASK");
+ rcsTaskContinue.setTriggerCode(allow.getTaskno());
+// rcsTaskContinue.setTriggerType("ROBOT");
+// rcsTaskContinue.setTriggerCode(allow.getAgvCode());
- int success = rcsService.continueTask(rcsTaskContinue, checkRcsFactory(allow.getAgvCode()));
- mesReturn.setSuccess(success == 1 ? "1" : "2");
- mesReturn.setMessage(success == 1 ? "" : "杞彂缁橰CS澶辫触");
+ int success = rcsService.continueTask(rcsTaskContinue, 1);
+ mesReturn.setSuccess(success == 1 ? "1" : "2");
+ mesReturn.setMessage(success == 1 ? "" : "杞彂缁橰CS澶辫触");
+ } else {
+ allow.setMethod("APPLY_OFF_STATION");
+ int success = rcsService.continueTask(allow, 2);
+ mesReturn.setSuccess(success == 1 ? "1" : "2");
+ mesReturn.setMessage(success == 1 ? "" : "杞彂缁橰CS澶辫触");
+ }
+
+ }
}
return mesReturn;
@@ -1284,9 +1394,9 @@
String url = MES_URL + "AGVDepartureCompleted";
String response = RcsServiceImpl.sendPost(url, JSONObject.toJSONString(apply));
- if (!StringUtils.isEmpty(response) && response.contains("Success")){
+ if (!StringUtils.isEmpty(response) && response.contains("Success")) {
MesReturn mesReturn = JSONObject.parseObject(response, MesReturn.class);
- if("1".equals(mesReturn.getSuccess())) {
+ if ("1".equals(mesReturn.getSuccess())) {
return 1;
}
}
@@ -1295,13 +1405,13 @@
}
@Override
- public MesReturn queryInventory(String itemno,String orderNo) {
+ public MesReturn queryInventory(String itemno, String orderNo) {
MesReturn mesReturn = new MesReturn();
mesReturn.setSuccess("1");
- List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", itemno).eq("order_no",orderNo));
+ List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", itemno).eq("order_no", orderNo));
int count = 0;
- for(LocDetl locDetl:locDetls) {
+ for (LocDetl locDetl : locDetls) {
count += locDetl.getAnfme();
}
mesReturn.setMessage(String.valueOf(count));
--
Gitblit v1.9.1