From e1a0e1b9bdf4a63eed0f396fea4a42be794fef7f Mon Sep 17 00:00:00 2001
From: LSH <1>
Date: 星期五, 17 五月 2024 10:32:16 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java | 215 ++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 193 insertions(+), 22 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java
index 0da05d6..8f96b4e 100644
--- a/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java
@@ -2,15 +2,12 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
-import com.zy.asrs.entity.BasDevp;
-import com.zy.asrs.entity.RgvOneSign;
-import com.zy.asrs.entity.WrkMast;
-import com.zy.asrs.entity.WrkMastSta;
-import com.zy.asrs.service.BasDevpService;
-import com.zy.asrs.service.RgvOneSignService;
-import com.zy.asrs.service.WrkMastService;
+import com.zy.asrs.entity.*;
+import com.zy.asrs.service.*;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.handler.WrkMastStaInItHandler;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@@ -25,6 +22,8 @@
@Component
public class WrkMastStaInItScheduler {
+ private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class);
+
@Autowired
private WrkMastStaInItHandler wrkMastStaInItHandler;
@Autowired
@@ -33,10 +32,30 @@
private WrkMastService wrkMastService;
@Autowired
private RgvOneSignService rgvOneSignService;
+ @Autowired
+ private WrkMastStaService wrkMastStaService;
+ @Autowired
+ private WrkDetlService wrkDetlService;
+ @Autowired
+ private LocDetlService locDetlService;
public static final List<Integer> STA_WORK_CU = new ArrayList<Integer>() {{
add(101);add(102);add(104);add(105);add(107);add(108);add(110);add(111);add(113);add(114);add(116);add(117);
+ }};
+
+ public static final List<Integer> STA_WORK_CU_CAR = new ArrayList<Integer>() {{
+ add(118);add(119);add(120);add(121);
+ }};
+
+ public static final List<Integer> STA_WORK_CU_CAR_TWO = new ArrayList<Integer>() {{
+ add(120);add(121);
+ }};
+ public static final List<Integer> STA_WORK_CU_CAR_THREE = new ArrayList<Integer>() {{
+ add(118);add(120);
+ }};
+ public static final List<Integer> STA_WORK_CU_CAR_FOUR = new ArrayList<Integer>() {{
+ add(119);add(121);
}};
public static final List<Integer> STA_WORK_RU = new ArrayList<Integer>() {{
@@ -44,7 +63,7 @@
}};
- @Scheduled(cron = "0/3 * * * * ? ")
+// @Scheduled(cron = "0/3 * * * * ? ")
private void execute(){
for(Integer staNo : STA_WORK_CU){
BasDevp basDevp = basDevpService.selectById(staNo);
@@ -61,12 +80,9 @@
if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
continue;
}
-// if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119){
-// RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","oneSign"));
-// if (rgvOneSign.getRgvOneSign()==1){
-// continue;
-// }
-// }
+ if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119 || wrkMast.getStaNo()==120 || wrkMast.getStaNo()==121){
+ continue;
+ }
boolean wrkTypeSign = fullKM(wrkMast);
if (!Cools.isEmpty(wrkMast)){
if (wrkTypeSign) {
@@ -92,6 +108,10 @@
BasDevp basDevp = basDevpService.selectById(staNo);
if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y")){
WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
+ if (Cools.isEmpty(wrkMast)){
+ continue;
+ }
+
if (wrkMast.getWrkSts()!=2 || wrkMast.getIoType()==10){
continue;
}
@@ -105,19 +125,170 @@
} else {
System.out.println(staNo+"澶辫触锛�");
}
-// }else {
-// ReturnT<String> result = wrkMastStaInItHandler.start(wrkMast,basDevp,23);
-// if (result.getCode()==200) {
-// continue;
-// } else {
-// System.out.println(staNo+"澶辫触锛�");
-// }
-// }
}
}
}
}
+// @Scheduled(cron = "0/3 * * * * ? ")
+ private void execute2(){
+ try{
+ for(Integer staNo : STA_WORK_CU){
+ BasDevp basDevp = basDevpService.selectById(staNo);
+ if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y")){
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
+ if(Cools.isEmpty(wrkMast)){
+ continue;
+ }
+ if (wrkMast.getIoType()!=101 && wrkMast.getIoType()!=104){
+ continue;
+ }
+ if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
+ continue;
+ }
+ if (wrkMast.getStaNo()<118 || wrkMast.getStaNo()>121){
+ continue;
+ }
+ int count = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", wrkMast.getStaNo()).or().eq("sta_end", wrkMast.getStaNo()));
+ if (count!=0){
+ continue;
+ }
+ int countStart = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNo).or().eq("sta_end", staNo).or().eq("wrk_no", wrkMast.getWrkNo()));
+ if (countStart!=0){
+ continue;
+ }
+ BasDevp basDevpEnd = basDevpService.selectById(wrkMast.getStaNo());
+ if (!basDevpEnd.getLoading().equals("Y") || basDevpEnd.getWrkNo()!=0 || basDevpEnd.getLoading().equals("Y") || basDevpEnd.getReportSign()!=0){
+ continue;
+ }
+ if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119){
+ RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","oneSign"));
+ if (rgvOneSign.getRgvOneSign()==1){
+ continue;
+ }
+ }
+ if (wrkMast.getIoType()!=101){
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ if (wrkDetls.size()!=0){
+ String origin = wrkDetls.get(0).getOrigin();
+ if (origin.equals("1")){
+ if (!STA_WORK_CU_CAR_FOUR.contains(wrkMast.getStaNo())){
+ continue;
+ }
+ }else {
+ if (!STA_WORK_CU_CAR_THREE.contains(wrkMast.getStaNo())){
+ continue;
+ }
+ }
+ }else {
+ log.error("鏈煡璇㈠埌宸ヤ綔鏄庣粏");
+ continue;
+ }
+ }
+//
+ boolean wrkTypeSign = fullKM(wrkMast);
+ if (!Cools.isEmpty(wrkMast)){
+ if (wrkTypeSign) {
+ ReturnT<String> result = wrkMastStaInItHandler.start(wrkMast,basDevp,13);//3锛氬彇鏀�
+ if (result.getCode()==200){
+ continue;
+ }else {
+ System.out.println(staNo+"澶辫触锛�");
+ }
+ }
+ }
+ }
+ }
+
+ for(Integer staNo : STA_WORK_CU){
+ BasDevp basDevp = basDevpService.selectById(staNo);
+ if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y")){
+ List<Integer> STA_WORK_CU_CAR_NOW = STA_WORK_CU_CAR;
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
+ if(Cools.isEmpty(wrkMast)){
+ continue;
+ }
+ if (wrkMast.getIoType()!=101 && wrkMast.getIoType()!=104){
+ continue;
+ }
+ if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
+ continue;
+ }
+ Integer wrkMastStaNo = wrkMast.getStaNo();
+ if (wrkMastStaNo<118 || wrkMastStaNo>121){
+ continue;
+ }
+ String origin = null;
+ boolean sign = false;
+ if (wrkMast.getIoType()!=101){
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ if (wrkDetls.size()!=0){
+ origin = wrkDetls.get(0).getOrigin();
+ if (origin.equals("1")){
+ if (!STA_WORK_CU_CAR_FOUR.contains(wrkMastStaNo)){
+ sign = true;
+ }
+ }else {
+ if (!STA_WORK_CU_CAR_THREE.contains(wrkMastStaNo)){
+ sign = true;
+ }
+ }
+ }else {
+ log.error("鏈煡璇㈠埌宸ヤ綔鏄庣粏");
+ continue;
+ }
+ }
+ int count = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", wrkMastStaNo).or().eq("sta_end", wrkMastStaNo));
+ if (count!=0){
+ continue;
+ }
+ int countStart = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNo).or().eq("sta_end", staNo).or().eq("wrk_no", wrkMast.getWrkNo()));
+ if (countStart!=0){
+ continue;
+ }
+ RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","oneSign"));
+ if (rgvOneSign.getRgvOneSign()==1){
+ STA_WORK_CU_CAR_NOW = STA_WORK_CU_CAR_TWO;
+ }
+
+ BasDevp basDevpEnd = basDevpService.selectById(wrkMastStaNo);
+ if (sign || !basDevpEnd.getLoading().equals("Y") || basDevpEnd.getWrkNo()!=0 || basDevpEnd.getLoading().equals("Y") || basDevpEnd.getReportSign()!=0) {
+ for (Integer staNoOther : STA_WORK_CU_CAR_NOW) {
+ if (staNoOther.equals(wrkMastStaNo)) continue;
+
+ if (sign){
+ if (origin.equals("1")){
+ if (!STA_WORK_CU_CAR_FOUR.contains(staNoOther)){
+ continue;
+ }
+ }else {
+ if (!STA_WORK_CU_CAR_THREE.contains(staNoOther)){
+ continue;
+ }
+ }
+ }
+
+ int countOther = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNoOther).or().eq("sta_end", staNoOther));
+ if (countOther!=0){
+ continue;
+ }
+ BasDevp basDevpOther = basDevpService.selectById(staNoOther);
+ if (!basDevpOther.getLoading().equals("Y") || basDevpOther.getWrkNo()!=0 || basDevpOther.getLoading().equals("Y") || basDevpOther.getReportSign()!=0) {
+ continue;
+ }
+ wrkMast.setStaNo(staNoOther);
+ wrkMastService.updateById(wrkMast);
+ log.info("宸ヤ綔鍙�"+wrkMast.getWrkNo()+"淇敼鐩爣绔欎负:"+staNoOther+";鍘熺洰鏍囩珯涓�:"+wrkMastStaNo);
+ return;
+ }
+ }
+ }
+ }
+ }catch (Exception e){
+ log.error("鐩爣涓烘媶鍨涗綅缃殑浠诲姟鐢熸垚灏忚溅宸ヤ綔妗f澶辫触锛侊紒"+e);
+ }
+ }
+
public boolean fullKM(WrkMast wrkMast){
if (wrkMast.getIoType()!=10 && wrkMast.getIoType()!=110){
return true;
--
Gitblit v1.9.1