From 3bf6f972604761c9ac59a2cb9ea01eeacaec2189 Mon Sep 17 00:00:00 2001
From: zyh <zyh@123>
Date: 星期六, 28 三月 2026 15:43:51 +0800
Subject: [PATCH] 更新为正式部署许可证
---
src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java | 369 +++++++++++++++++++++++++++++++++++++---------------
1 files changed, 263 insertions(+), 106 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 9e42536..d4e7a67 100644
--- a/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
@@ -1,45 +1,52 @@
package com.zy.asrs.service.impl;
-import com.alibaba.excel.util.DateUtils;
import com.alibaba.excel.util.StringUtils;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
+import com.core.common.DateUtils;
import com.core.common.SnowflakeIdWorker;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.mes.*;
-import com.zy.asrs.entity.param.CombParam;
-import com.zy.asrs.entity.param.EmptyPlateOutParam;
import com.zy.asrs.entity.rcs.*;
import com.zy.asrs.mapper.AgvInfoMapper;
+import com.zy.asrs.mapper.CanFinMapper;
import com.zy.asrs.mapper.MatItemBarcodeMapper;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.model.DetlDto;
import com.zy.common.model.enums.WorkNoType;
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.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.sql.Time;
import java.text.ParseException;
import java.util.*;
-import java.util.concurrent.ExecutionException;
import java.util.stream.Collectors;
-import java.util.stream.Stream;
@Slf4j
@Service
public class MesServiceImpl implements MesService {
-
@Value("${mes.url}")
public String MES_URL;
+
+ // 娴峰悍RCS鍦板潃
+ @Value("${hik.url}")
+ private String HIK_URL;
+
+ // 鍗庢檽RCS鍦板潃
+ @Value("${hx.url}")
+ private String HX_URL;
+
@Value("${wms.currentName}")
public String WMS_CURRENT_NAME;
@Value("${wms.wmsTransStartStation1}")
@@ -95,6 +102,8 @@
private DocTypeService docTypeService;
@Autowired
private OrderService orderService;
+ @Autowired
+ private CanFinMapper canFinMapper;
// region MES鎺ュ彛
@@ -167,8 +176,10 @@
newTag.setUpdateBy(defaultUserId);
newTag.setUpdateTime(now);
- if (!tagService.insert(newTag))
+ if (!tagService.insert(newTag)){
+ log.error("鎻掑叆tag澶辫触");
return -1;
+ }
tagId = newTag.getId();
} else {
tagId = tag.getId();
@@ -193,10 +204,13 @@
newMat.setUpdateTime(now);
newMat.setStatus(1);
if (mat == null) {
- if (!matService.insert(newMat))
+ if (!matService.insert(newMat)){
+ log.error("鎻掑叆澶辫触");
return -2;
+ }
}
} else {
+ log.error("tagId灏忎簬0");
return -1;
}
@@ -223,15 +237,25 @@
// 鏍¢獙璁㈠崟鏄惁閲嶅
OrderPakin order = orderPakinService.selectByNo(entry.getKey());
- // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
+ OrderPakin orderPakin;
+
+ // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦ㄤ笖settle涓�1鍒欒拷鍔犳槑缁嗭紱濡傛灉settle涓�6鍒欏垹闄ゅ悗閲嶆柊鐢熸垚锛涗綔涓氫腑鏃犳硶淇敼
if (!Cools.isEmpty(order)) {
- if (order.getSettle() > 1L) {
+ if (order.getSettle() > 1L && order.getSettle() < 6L) {
throw new CoolException(entry.getKey() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ } else if (order.getSettle() == 6L) {
+ orderPakinService.remove(order.getId());
+ orderPakin = null;
+ } else if (order.getSettle() == 1L) {
+ orderPakin = order;
+ } else {
+ orderPakin = null;
}
- orderPakinService.remove(order.getId());
+ } else {
+ orderPakin = null;
}
- // 鐢熸垚璁㈠崟
+ // 鐢熸垚璁㈠崟鎴栨洿鏂拌鍗�
JSONObject newMemo = new JSONObject();
newMemo.put("sourceNo", matRecvForm.getSourceNo());
newMemo.put("sourceName", matRecvForm.getSourceName());
@@ -239,35 +263,40 @@
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(1L);
- orderPakin.setStatus(1);
- orderPakin.setCreateBy(defaultUserId);
- orderPakin.setCreateTime(now);
- orderPakin.setUpdateBy(defaultUserId);
- orderPakin.setUpdateTime(now);
- orderPakin.setMemo(JSONObject.toJSONString(newMemo)); //涓哄嚭搴撳畬鎴愬弽棣堜繚瀛�
- orderPakin.setPakinPakoutStatus(1);
- orderPakinService.insert(orderPakin);
+ // 濡傛灉璁㈠崟涓嶅瓨鍦ㄦ垨宸插垹闄わ紝鍒欑敓鎴愭柊璁㈠崟
+ if (orderPakin == null) {
+ orderPakin = new OrderPakin();
+ orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+ orderPakin.setOrderNo(entry.getKey());
+ orderPakin.setOrderTime(DateUtils.convert(now));
+ orderPakin.setDocType(docType);
+ orderPakin.setSettle(1L);
+ orderPakin.setStatus(1);
+ orderPakin.setCreateBy(defaultUserId);
+ orderPakin.setCreateTime(now);
+ orderPakin.setMemo(JSONObject.toJSONString(newMemo));
+ orderPakin.setPakinPakoutStatus(1);
+ orderPakinService.insert(orderPakin);
+ } else {
+ // 鏇存柊璁㈠崟鐨刴emo鍜屾洿鏂版椂闂�
+ orderPakin.setMemo(JSONObject.toJSONString(newMemo));
+ orderPakin.setUpdateBy(defaultUserId);
+ orderPakin.setUpdateTime(now);
+ orderPakinService.updateById(orderPakin);
+ }
if (list != null && !list.isEmpty()) {
for (MesMatInfo mesMatInfo : list) {
// 鐢熸垚鏄庣粏
Mat mat = matService.selectByMatnr(mesMatInfo.getItemNo());
- if(Cools.isEmpty(mat)){
- log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�="+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.setAnfme(mesMatInfo.getQty());
orderDetlPakin.setQty(0.0);
orderDetlPakin.setMatnr(mat.getMatnr());
orderDetlPakin.setMaktx(mat.getMaktx());
@@ -554,7 +583,7 @@
OrderPakin orderPakin = new OrderPakin();
orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
orderPakin.setOrderNo(mesInApply.getOrderNo());
- orderPakin.setOrderTime(com.core.common.DateUtils.convert(now));
+ orderPakin.setOrderTime(DateUtils.convert(now));
orderPakin.setDocType(docType);
orderPakin.setSettle(settle);
orderPakin.setStatus(1);
@@ -938,6 +967,7 @@
if (docType == null) {
return 0;
}
+
//鐢熸垚鍑哄簱鍗�
if (docType.getPakout() == 1) {
long settle = 1;
@@ -957,7 +987,7 @@
OrderPakout orderPakout = new OrderPakout();
orderPakout.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
orderPakout.setOrderNo(mesCallOutApply.getOrderNo());
- orderPakout.setOrderTime(com.core.common.DateUtils.convert(now));
+ orderPakout.setOrderTime(DateUtils.convert(now));
orderPakout.setDocType(docType.getDocId());
orderPakout.setSettle(settle);
orderPakout.setStatus(1);
@@ -967,10 +997,48 @@
orderPakout.setUpdateTime(now);
orderPakout.setMemo(JSONObject.toJSONString(mesCallOutApply));
orderPakout.setPakinPakoutStatus(2);
+ orderPakout.setCstmrName(mesCallOutApply.getStationId());//agv鐩爣绔欑偣
+/*
+ // 鏌ヨcan_fin琛ㄤ腑apply_time鏈�鏂扮殑璁板綍
+ List<CanFin> canFinList = canFinMapper.selectList(new EntityWrapper<CanFin>()
+ .orderBy("apply_time", false)
+ );
+ if (!canFinList.isEmpty()) {
+ CanFin firstCanFin = canFinList.get(0);
+ if (firstCanFin.getAgvType().equals("agv-in-out")) {
+ // 鍙慨鏀归渶瑕佹洿鏂扮殑瀛楁
+ if (firstCanFin.getOutNo() == null){
+ firstCanFin.setOutType("waiting");
+ firstCanFin.setOutNo(mesCallOutApply.getOrderNo());
+ // 纭繚鍏朵粬瀛楁淇濇寔涓嶅彉
+ canFinMapper.updateById(firstCanFin);
+ log.info("宸叉洿鏂癱an_fin琛ㄦ渶鏃╄褰曠殑out_no锛孖D锛歿}锛屽嚭搴撳崟鍙凤細{}",
+ firstCanFin.getId(), mesCallOutApply.getOrderNo());
+ }
+ }
+ }
+ */
+
if (!orderPakoutService.insert(orderPakout)) {
log.error("MES淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
throw new CoolException("淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
}
+
+ if (mesCallOutApply.getTransType().equals("瑁呴厤鍑哄簱鍗�")){
+ CanFin canFin = new CanFin();
+ Date time = now;
+ canFin.setAgvType("agv-out");
+ canFin.setOutNo(mesCallOutApply.getOrderNo());
+ List<CanFin> canFinList = canFinMapper.selectList(new EntityWrapper<>());
+ if (canFinList.isEmpty()){
+ canFin.setTaskStatus("canout");
+ }else {
+ canFin.setTaskStatus("waiting");
+ }
+ canFin.setApplyTime(time);
+ canFinMapper.insert(canFin);
+ }
+
Set<String> set = new HashSet<>();
// 鐢熸垚鏄庣粏
if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
@@ -978,6 +1046,10 @@
set.add(mesOutApplyItem.getTrayid());
Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
+ if (Cools.isEmpty(mat)) {
+ log.error("鐗╂枡缂栧彿涓嶅瓨鍦�: {}", mesOutApplyItem.getItemno());
+ throw new CoolException("鐗╂枡缂栧彿涓嶅瓨鍦�: " + mesOutApplyItem.getItemno());
+ }
OrderDetlPakout orderDetlPakout = new OrderDetlPakout();
orderDetlPakout.setOrderId(orderPakout.getId());
orderDetlPakout.setOrderNo(orderPakout.getOrderNo());
@@ -1003,9 +1075,10 @@
}
//鏈夊灏戠涓嶅悓鐨勯厤鐩樺彿 鍙湁閰嶇洏鍑哄簱鍗曢渶瑕佺煡閬�
- if (mesCallOutApply.getTransType().equals("閰嶇洏鍑哄簱鍗�")){
+ if (mesCallOutApply.getTransType().equals("閰嶇洏鍑哄簱鍗�")) {
orderPakout.setPayType(set.size());
- String shipCode =mesCallOutApply.getItemdata().get(0).getTrayid().split("-")[2];
+ String orderNo = mesCallOutApply.getOrderNo();
+ String shipCode = orderNo.substring(orderNo.lastIndexOf("-") + 1);
orderPakout.setShipCode(shipCode);//鍖哄煙 鏄惁鏄壒娈婃墭鐩�
orderPakoutService.updateById(orderPakout);
}
@@ -1027,7 +1100,7 @@
OrderPakin orderPakin = new OrderPakin();
orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
orderPakin.setOrderNo(mesCallOutApply.getOrderNo());
- orderPakin.setOrderTime(com.core.common.DateUtils.convert(now));
+ orderPakin.setOrderTime(DateUtils.convert(now));
orderPakin.setDocType(docType.getDocId());
orderPakin.setSettle(1L);
orderPakin.setStatus(1);
@@ -1039,11 +1112,11 @@
orderPakin.setPakinPakoutStatus(1);
orderPakinService.insert(orderPakin);
if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
- for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()){
+ for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()) {
// 鐢熸垚鏄庣粏
Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
- if(Cools.isEmpty(mat)){
- log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�="+mesOutApplyItem.getItemno());
+ if (Cools.isEmpty(mat)) {
+ log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�=" + mesOutApplyItem.getItemno());
continue;
}
OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
@@ -1104,73 +1177,50 @@
return result;
}
- // 涓嬪彂缁橰CS
- RcsTaskSubmit rcsTaskSubmit = new RcsTaskSubmit();
- rcsTaskSubmit.setRobotTaskCode(transTask.getTaskno());
- rcsTaskSubmit.setInitPriority(10); //榛樿10
- List<RcsTaskTargetRoute> targetRouteList = new ArrayList<>();
- RcsTaskTargetRoute startRoute = new RcsTaskTargetRoute();
- startRoute.setSeq(0);
- startRoute.setCode(transTask.getCurStationId());
- startRoute.setOperation("COLLECT");
- targetRouteList.add(startRoute);
- RcsTaskTargetRoute endRoute = new RcsTaskTargetRoute();
- endRoute.setSeq(1);
- endRoute.setCode(transTask.getNextStationId());
- endRoute.setOperation("DELIVERY");
- targetRouteList.add(endRoute);
- rcsTaskSubmit.setTargetRoute(targetRouteList);
+ int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
+ Date now = new Date();
+ Task task = new Task();
+ task.setWrkNo(workNo);
+ //08-1鏄┖鎵樼洏杞簭浠诲姟
+ //08-2鏄墿鏂欒浆搴忎换鍔�
+ task.setTaskType("ZX-AGV-"+transTask.getTransType());
+ task.setWrkSts(301L);//301.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());
+ task.setModiUser(defaultUserId);
+ task.setModiTime(now);
+ task.setAppeUser(defaultUserId);
+ task.setAppeTime(now);
+ task.setTaskNo(transTask.getTaskno());
+ task.setMemo(JSONObject.toJSONString(transTask));
+ task.setPltType(transTask.getAgvFactory());//鍗庢檽AGV
+ task.setPacked(transTask.getRackNumber());//鏂欐灦鍙�
+ task.setCtnType(1);
+ task.setIsPda(transTask.getIsPDA());
- // 杞彂缁欐捣搴锋垨鍗庢檽RCS
- 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("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());
- task.setModiUser(defaultUserId);
- task.setModiTime(now);
- task.setAppeUser(defaultUserId);
- 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);
+ if (taskService.insert(task)) {
+ if (transTask.getNextStationId().equals("307")){
+ CanFin canFin = new CanFin();
+ Date time = now;
+// canFin.setAgvType("agv-in-out");
+ canFin.setAgvType("agv-in");
+ canFin.setInNo(transTask.getTaskno());
+ canFin.setTaskStatus("waiting");
+ canFin.setApplyTime(time);
+ canFinMapper.insert(canFin);
+ }
result.put("Success", "1");
result.put("Message", "浠诲姟鎺ユ敹鎴愬姛");
- } else {
+
+ }else {
result.put("Success", "2");
result.put("Message", "浠诲姟涓嬪彂缁橰CS澶辫触");
}
-
return result;
}
@@ -1266,13 +1316,19 @@
mesReturn.setSuccess("2");
if ("Y".equals(allow.getStatus())) {
- Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", allow.getTaskno()));
+
+ // 淇敼鍚庣殑閫昏緫锛氭湁"-"鍒欏幓鎺夋渶鍚庝竴涓�"-"鍙婂悗闈㈠唴瀹癸紝娌℃湁鍒欎繚鎸佸師鏍�
+ String taskNo = allow.getTaskno();
+ if (taskNo.contains("-")) {
+ taskNo = allow.getTaskno().substring(0, taskNo.lastIndexOf("-"));
+ }
+ Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", taskNo));
if (Cools.isEmpty(task)) {
mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + allow.getTaskno() + "鐨凙GV绉诲姩浠诲姟");
} else {
//鏌ョ湅鐢宠绔欑偣鐨勬槸娴峰悍杩樻槸鍗庢檽
//娴峰悍
- if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1) {
+ if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1 || task.getPltType() == 0) {
RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
rcsTaskContinue.setTriggerType("TASK");
@@ -1354,13 +1410,18 @@
mesReturn.setSuccess("2");
if ("Y".equals(allow.getStatus())) {
- Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", allow.getTaskno()));
+ // 淇敼鍚庣殑閫昏緫锛氭湁"-"鍒欏幓鎺夋渶鍚庝竴涓�"-"鍙婂悗闈㈠唴瀹癸紝娌℃湁鍒欎繚鎸佸師鏍�
+ String taskNo = allow.getTaskno();
+ if (taskNo.contains("-")) {
+ taskNo = allow.getTaskno().substring(0, taskNo.lastIndexOf("-"));
+ }
+ Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", taskNo));
if (Cools.isEmpty(task)) {
- mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + allow.getTaskno() + "鐨凙GV绉诲姩浠诲姟");
+ mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + taskNo + "鐨凙GV绉诲姩浠诲姟");
} else {
//鏌ョ湅鐢宠绔欑偣鐨勬槸娴峰悍杩樻槸鍗庢檽
//娴峰悍
- if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1) {
+ if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1 || task.getPltType() == 0) {
RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
rcsTaskContinue.setTriggerType("TASK");
@@ -1418,6 +1479,102 @@
return mesReturn;
}
+ @Override
+ public int AGVPause(JSONObject mesInfo, String Type){
+
+ int i = HikPersonIn(mesInfo, Type);
+ int j = HxPersonIn(mesInfo, Type);
+
+ if (i == 1){
+ if (j == 1){
+ return 1;
+ }else
+ return 2;
+ }else {
+ if (j == 1){
+ return 3;
+ }else
+ return 4;
+ }
+ }
+
+ //浜哄憳鍏ヤ镜绯荤粺娴峰悍瀹炵幇鏂规硶
+ public int HikPersonIn(JSONObject param, String Type) {
+ String hik_blockUrl = "api/robot/controller/zone/blockade";
+ String hik_pauseUrl = "api/robot/controller/zone/pause";
+
+ String BLOCK_URL = HIK_URL + hik_blockUrl;
+ String PAUSE_URL = HIK_URL + hik_pauseUrl;
+
+ JSONObject rcsBlock = new JSONObject();
+ JSONObject rcsPause = new JSONObject();
+
+ rcsBlock.put("mapCode", "BB");
+ rcsPause.put("mapCode", "BB");
+
+ rcsBlock.put("zoneCode", param.getString("AreaCode"));
+ rcsPause.put("zoneCode", param.getString("AreaCode"));
+
+ if (Type.equals("STOP")){
+ rcsBlock.put("invoke", "BLOCKADE");
+ rcsPause.put("invoke","FREEZE");
+ }
+ if (Type.equals("START")){
+ rcsBlock.put("invoke", "OPENUP");
+ rcsPause.put("invoke","RUN");
+ }
+
+ String blockResponse = RcsServiceImpl.sendPost(BLOCK_URL, JSONObject.toJSONString(rcsBlock));
+ String PauseResponse = RcsServiceImpl.sendPost(PAUSE_URL, JSONObject.toJSONString(rcsPause));
+ JSONObject blockJsonObject = JSON.parseObject(blockResponse);
+ JSONObject pauseJsonObject = JSON.parseObject(PauseResponse);
+ if (!StringUtils.isEmpty(blockResponse) && (blockJsonObject.getString("code").equals("SUCCESS"))) {
+ if (!StringUtils.isEmpty(PauseResponse) && (pauseJsonObject.getString("code").equals("SUCCESS"))) {
+ return 1;
+ }
+ return 0;
+ }
+ //鐩存帴杩斿洖锛屼笉闇�瑕佷俊鎭�
+ return 0;
+ }
+
+ //浜哄憳鍏ヤ镜绯荤粺鍗庢檽瀹炵幇鏂规硶
+ public int HxPersonIn(JSONObject param, String Type) {
+ JSONObject rcsPause = new JSONObject();
+
+ String hx_url = "controller/notify/isstop";
+ String URL = HX_URL + hx_url;
+
+ rcsPause.put("agvno", 0);
+ rcsPause.put("areaNo", param.getString("AreaCode"));
+
+ if (Type.equals("STOP"))
+ rcsPause.put("action", "stop");
+
+ if (Type.equals("START"))
+ rcsPause.put("action", "start");
+
+ if (Type.equals("STOP")){
+ for (int i = 0; i < 10; i++){
+ String response = RcsServiceImpl.sendPost(URL, JSONObject.toJSONString(rcsPause));
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (!StringUtils.isEmpty(response) && (jsonObject.getString("code").equals("SUCCESS") || jsonObject.getInteger("code") == 200)) {
+ return 1;
+ }else
+ return 0;
+ }
+ }
+ if (Type.equals("START")){
+ String response = RcsServiceImpl.sendPost(URL, JSONObject.toJSONString(rcsPause));
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (!StringUtils.isEmpty(response) && (jsonObject.getString("code").equals("SUCCESS") || jsonObject.getInteger("code") == 200)) {
+ return 1;
+ }else
+ return 0;
+ }
+ return 0;
+ }
+
// endregion
/**
--
Gitblit v1.9.1