From e64a43ef4174f9338b807d5587632f281be40b3b Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期六, 20 七月 2024 17:37:06 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WrkMastExecuteServiceImpl.java | 5 +
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 19 ++++
src/main/java/com/zy/asrs/mapper/WrkMastExecuteMapper.java | 1
src/main/java/com/zy/asrs/service/WrkMastExecuteService.java | 1
src/main/resources/mapper/WrkMastExecuteMapper.xml | 6 +
src/main/java/com/zy/asrs/task/JarBurialEscalationScheduler.java | 52 +++++++++++++
src/main/java/com/zy/asrs/task/handler/JarBurialEscalationHandler.java | 122 ++++++++++++++++++++++++++++++
7 files changed, 206 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastExecuteMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastExecuteMapper.java
index 8c51555..75bb7ce 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastExecuteMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastExecuteMapper.java
@@ -30,6 +30,7 @@
Integer getWrkMastExecuteByJarIdCount(@Param("jarId") Integer jarId);
+ Integer getWrkMastExecuteByjarReginCount(@Param("jarRegin") Integer jarId);
Integer selectNoStart(@Param("jarRegin") Integer jarRegin);
Integer selectNoStartCharge(@Param("jarRegin") Integer jarRegin);
diff --git a/src/main/java/com/zy/asrs/service/WrkMastExecuteService.java b/src/main/java/com/zy/asrs/service/WrkMastExecuteService.java
index aa41314..fe3dc9a 100644
--- a/src/main/java/com/zy/asrs/service/WrkMastExecuteService.java
+++ b/src/main/java/com/zy/asrs/service/WrkMastExecuteService.java
@@ -23,6 +23,7 @@
List<WrkMastExecute> selectWrkMastExecuteByWrk(WrkMastExecute wrkMastExecute);
Integer getWrkMastExecuteByJarIdCount(Integer jarId);
+ Integer getWrkMastExecuteByjarReginCount(Integer jarId);
Integer selectNoStart(Integer jarRegin);
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 b07a549..1200b6c 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -5278,6 +5278,10 @@
return false;
}
+ if (wrkMastExecuteService.getWrkMastExecuteByjarReginCount(basJar.getRegion())!=0){
+ return false;
+ }
+
//闂ㄤ綔涓� 鏃�
//鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� Other宸﹂棬鍏抽棴
if (jarProtocol.isAutoing() && jarProtocol.jarErr==0
@@ -5331,6 +5335,10 @@
BasJarMast basJarMastSign = basJarMastList.get(0);
if (Cools.isEmpty(basJarMastSign)){
+ return false;
+ }
+
+ if (wrkMastExecuteService.getWrkMastExecuteByjarReginCount(basJarMastSign.getJarRegin())!=0){
return false;
}
// //鍒ゆ柇灏忚溅鐘舵��
@@ -5413,6 +5421,10 @@
if (Cools.isEmpty(basJarMastSign)){
return false;
}
+
+ if (wrkMastExecuteService.getWrkMastExecuteByjarReginCount(basJarMastSign.getJarRegin())!=0){
+ return false;
+ }
// //鍒ゆ柇灏忚溅鐘舵��
// if (!jarWrkMastExecuteGenerateSteStatus(jarSlave.getJarInSte().get(0).getSteNo(),2,SteStatusType.IDLE)){
// return false;
@@ -5489,6 +5501,9 @@
BasJarMast jarMastByJarIdMin = basJarMastService.getJarMastByJarIdMin(jarSlave.getId(),8,8);
if (Cools.isEmpty(jarMastByJarIdMin)){
+ return false;
+ }
+ if (wrkMastExecuteService.getWrkMastExecuteByjarReginCount(jarMastByJarIdMin.getJarRegin())!=0){
return false;
}
@@ -5577,6 +5592,10 @@
if (Cools.isEmpty(jarMastByJarIdMin)){
return false;
}
+
+ if (wrkMastExecuteService.getWrkMastExecuteByjarReginCount(jarMastByJarIdMin.getJarRegin())!=0){
+ return false;
+ }
//
// //鍒ゆ柇灏忚溅鐘舵��
// if (!jarWrkMastExecuteGenerateSteStatus(jarSlave.getJarOutSte().get(0).getSteNo(),3,SteStatusType.IDLE)){
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastExecuteServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastExecuteServiceImpl.java
index 67718ce..6b05400 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkMastExecuteServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkMastExecuteServiceImpl.java
@@ -56,6 +56,11 @@
}
@Override
+ public Integer getWrkMastExecuteByjarReginCount(Integer jarId) {
+ return this.baseMapper.getWrkMastExecuteByjarReginCount(jarId);
+ }
+
+ @Override
public Integer selectNoStart(Integer jarRegin) {
return this.baseMapper.selectNoStart(jarRegin);
}
diff --git a/src/main/java/com/zy/asrs/task/JarBurialEscalationScheduler.java b/src/main/java/com/zy/asrs/task/JarBurialEscalationScheduler.java
new file mode 100644
index 0000000..0ac9f54
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/JarBurialEscalationScheduler.java
@@ -0,0 +1,52 @@
+package com.zy.asrs.task;
+
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.handler.JarBurialEscalationHandler;
+import com.zy.asrs.task.handler.ScaleEscalationHandler;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+/**
+ * Created by Monkey D. Luffy on 2024.07.20
+ * 浜冲窞鐓滄槦..............浠ヤ笅.............浜冲窞鐓滄槦.............涓婁紶寮�寮忓喎鍗翠俊鍙�
+ */
+@Slf4j
+@Component
+public class JarBurialEscalationScheduler {
+
+ @Autowired
+ private JarBurialEscalationHandler jarBurialEscalationHandler;
+
+ @Scheduled(cron = "0/3 * * * * ? ")
+ private void execute(){//涓婁紶寮�寮忓喎鍗翠俊鍙�
+ int[] jarList =new int[]{1,2,3,4,5,6};
+ for (int jarNo : jarList){
+ try{
+ ReturnT<String> result = jarBurialEscalationHandler.start(jarNo,10,11);
+ if (result.getCode()==200){
+ break;
+ }
+ }catch (Exception e){
+ log.error("鍐峰嵈姹狅細"+jarNo+"==銆嬩笂浼犲紑寮忓喎鍗翠俊鍙峰鐞嗗け璐ワ紝寮傚父淇℃伅锛�"+e);
+ }
+ }
+ }
+
+ @Scheduled(cron = "0/3 * * * * ? ")
+ private void execute2(){//涓婁紶寮�寮忓喎鍗翠俊鍙�
+ int[] jarList =new int[]{1,2,3,4,5,6};
+ for (int jarNo : jarList){
+ try{
+ ReturnT<String> result = jarBurialEscalationHandler.start(jarNo,11,12);
+ if (result.getCode()==200){
+ break;
+ }
+ }catch (Exception e){
+ log.error("鍐峰嵈姹狅細"+jarNo+"==銆嬩笂浼犲紑寮忓喎鍗翠俊鍙峰鐞嗗け璐ワ紝寮傚父淇℃伅锛�"+e);
+ }
+ }
+ }
+
+}
diff --git a/src/main/java/com/zy/asrs/task/handler/JarBurialEscalationHandler.java b/src/main/java/com/zy/asrs/task/handler/JarBurialEscalationHandler.java
new file mode 100644
index 0000000..b4aa1d6
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/handler/JarBurialEscalationHandler.java
@@ -0,0 +1,122 @@
+package com.zy.asrs.task.handler;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.BasJarMast;
+import com.zy.asrs.service.*;
+import com.zy.asrs.task.AbstractHandler;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.common.utils.HttpHandler;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by Monkey D. Luffy on 2024.07.20
+ * 浜冲窞鐓滄槦..............浠ヤ笅.............浜冲窞鐓滄槦.............涓婁紶寮�寮忓喎鍗翠俊鍙�
+ */
+@Slf4j
+@Service
+@Transactional
+public class JarBurialEscalationHandler extends AbstractHandler<String> {
+
+ private static final Integer jarMaxLoc = 6;
+
+ @Autowired
+ private ApiLogService apiLogService;
+ @Autowired
+ private BasJarMastService basJarMastService;
+
+// @Value("${srHangJia.url}")
+ private String erpUrl = "10.10.11.100:8580";
+// @Value("${srHangJia.reportOutPath}")
+ private String reportOutPath = "mes/wms-service/boxWeight";
+
+ public ReturnT<String> start(int jarNo,Integer souStatus,Integer endStatus) {
+ try{
+ List<BasJarMast> basJarMastList = basJarMastService.getJarMastByJarIdAndStatusList(jarNo, new ArrayList<Integer>() {{
+ add(souStatus);//纭寲瀹屾垚
+ }});
+ if (basJarMastList.size() != jarMaxLoc){
+ return FAIL;
+ } else {
+// ReturnT<String> result = postMesData(reportOutPath,1);
+// if (result.getCode()==200){
+ Integer integer = basJarMastService.updateStatus(jarNo, souStatus, endStatus);
+ if (basJarMastList.size()!=integer){
+ log.error("{}鍙风~鍖栫綈纭寲瀹屾垚鍚庡紑闂ㄥ畬鎴愪慨鏀圭~鍖栨。妗堢姸鎬佺粨鏋滄暟閲忎笉涓�鑷达紒锛侊紒鏌ヨ璧勬枡鏁伴噺={}锛屾洿鏂拌繑鍥炴暟閲�={}",jarNo,basJarMastList.size(),integer);
+ return FAIL;
+ }
+ return SUCCESS;
+// }else {
+// log.error("1妤肩炕杞噸閲忎俊鎭笂浼犲け璐�");
+// }
+ }
+ }catch (Exception e){
+ log.error("寮傚父锛侊紒锛�"+e);
+ return FAIL;
+ }
+ }
+
+ private ReturnT<String> postMesData(String erpPath,Object combParam){
+ if(combParam != null){
+ String response = "";
+ boolean success = false;
+ try {
+ response = new HttpHandler.Builder()
+ .setUri(erpUrl)
+ .setPath(erpPath)
+ .setJson(JSON.toJSONString(combParam))
+ .build()
+ .doPost();
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (jsonObject.getInteger("Code")==200) {
+ success = true;
+ } else {
+ log.error("1妤肩炕杞噸閲忎俊鎭笂浼犺姹傛帴鍙eけ璐ワ紒锛侊紒url锛歿}锛況equest锛歿}锛況esponse锛歿}"+erpUrl+erpPath, JSON.toJSONString(combParam), response);
+ throw new CoolException("涓婃姤mes绯荤粺澶辫触");
+ }
+ } catch (Exception e) {
+ log.error("fail", e);
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return FAIL.setMsg(e.getMessage());
+ } finally {
+ try {
+ // 淇濆瓨鎺ュ彛鏃ュ織
+ apiLogService.save(
+ "涓婃姤MES绯荤粺",
+ erpUrl + erpPath,
+ null,
+ erpUrl,
+ JSON.toJSONString(combParam),
+ response,
+ success
+ );
+ } catch (Exception e) { log.error("", e); }
+ }
+ }
+ return SUCCESS;
+ }
+
+ public Integer getStaOther(Integer staNo){
+ switch (staNo){
+ case 118:
+ return 119;
+ case 119:
+ return 118;
+ case 120:
+ return 121;
+ case 121:
+ return 120;
+ default:
+ return 0;
+ }
+ }
+
+
+}
diff --git a/src/main/resources/mapper/WrkMastExecuteMapper.xml b/src/main/resources/mapper/WrkMastExecuteMapper.xml
index 46961cd..e3853a4 100644
--- a/src/main/resources/mapper/WrkMastExecuteMapper.xml
+++ b/src/main/resources/mapper/WrkMastExecuteMapper.xml
@@ -118,6 +118,12 @@
and jar_id = #{jarId}
</select>
+ <select id="getWrkMastExecuteByjarReginCount" resultType="Integer">
+ select count(1) from jar_wrk_mast_execute
+ where 1=1
+ and jar_regin = #{jarRegin}
+ </select>
+
<select id="selectNoStart" resultType="Integer">
select count(1) from jar_wrk_mast_execute
where 1=1
--
Gitblit v1.9.1