From eba05baa6102453d44fd3686a7146d4398180e96 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 12 三月 2024 15:27:42 +0800
Subject: [PATCH] #
---
src/main/resources/mapper/RowLastnoMapper.xml | 1
src/main/java/com/zy/asrs/utils/Utils.java | 28 +++++--------
src/main/java/com/zy/asrs/entity/RowLastno.java | 15 +++++++
src/main/java/com/zy/common/service/CommonService.java | 76 ++++++++++++++++++++++++++++++++++----
4 files changed, 95 insertions(+), 25 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/RowLastno.java b/src/main/java/com/zy/asrs/entity/RowLastno.java
index 82eafd2..82cf0e3 100644
--- a/src/main/java/com/zy/asrs/entity/RowLastno.java
+++ b/src/main/java/com/zy/asrs/entity/RowLastno.java
@@ -135,6 +135,13 @@
@TableField("sign_type_other_boolean")
private String signTypeOtherBoolean;
+ /**
+ * 鍏跺畠鏍囪绫诲埆锛堟槸鍚﹁緭閫佺嚎浜掗�氾級
+ */
+ @ApiModelProperty(value= "鍏ュ簱绔欑偣闆嗗悎")
+ @TableField("sta_no_list")
+ private String staNoList;
+
public RowLastno() {}
public RowLastno(String wrkMk,Integer currentRow,Integer sRow,Integer eRow,Integer crnQty,String memo,Long modiUser,Date modiTime,Long appeUser,Date appeTime,Integer limintLoc) {
@@ -332,4 +339,12 @@
this.signTypeOtherBoolean = signTypeOtherBoolean;
}
+ public String getStaNoList() {
+ return staNoList;
+ }
+
+ public void setStaNoList(String StaNoList) {
+ this.staNoList = StaNoList;
+ }
+
}
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index ae2ff5e..2109368 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -1,5 +1,6 @@
package com.zy.asrs.utils;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Arith;
import com.core.common.Cools;
import com.core.common.SpringUtils;
@@ -226,24 +227,17 @@
// }
public static Integer GetWhsType(Integer sourceStaNo) {
- switch (sourceStaNo){
- case 104:
- case 173:
- case 174:
- case 175:
- case 130:
- case 125:
- return 5;
- case 204:
- case 273:
- case 274:
- case 275:
- case 230:
- case 225:
- return 2;
- default:
- return 0;
+ RowLastnoService rowLastnoService = SpringUtils.getBean(RowLastnoService.class);
+ List<RowLastno> rowLastnos = rowLastnoService.selectList(new EntityWrapper<RowLastno>());
+ for (RowLastno rowLastno:rowLastnos){
+ String[] staNoList = rowLastno.getStaNoList().split(";");
+ for (String staNo : staNoList){
+ if (staNo.equals(sourceStaNo.toString())){
+ return rowLastno.getWhsType();
+ }
+ }
}
+ return 0;
}
public static boolean BooleanWhsTypeStaIoType(Integer whsType) { //鏌ヨ鐩镐技鐗╂枡寮�鍏�
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index bfa3529..ec9900c 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -7,6 +7,7 @@
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.result.KeyValueVo;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.Utils;
import com.zy.asrs.utils.VersionUtils;
@@ -19,6 +20,10 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -50,7 +55,6 @@
/**
* 鐢熸垚宸ヤ綔鍙�
- *
* @param wrkMk
* @return workNo(宸ヤ綔鍙�)
*/
@@ -63,17 +67,17 @@
int workNo = wrkLastno.getWrkNo();
int sNo = wrkLastno.getSNo();
int eNo = wrkLastno.getENo();
- workNo = workNo >= eNo ? sNo : workNo + 1;
+ workNo = workNo>=eNo ? sNo : workNo+1;
while (true) {
WrkMast wrkMast = wrkMastService.selectById(workNo);
if (null != wrkMast) {
- workNo = workNo >= eNo ? sNo : workNo + 1;
+ workNo = workNo>=eNo ? sNo : workNo+1;
} else {
break;
}
}
// 淇敼搴忓彿璁板綍
- if (workNo > 0) {
+ if (workNo > 0){
wrkLastno.setWrkNo(workNo);
wrkLastnoService.updateById(wrkLastno);
}
@@ -81,11 +85,27 @@
if (workNo == 0) {
throw new CoolException("鐢熸垚宸ヤ綔鍙峰け璐ワ紝璇疯仈绯荤鐞嗗憳");
} else {
- if (wrkMastService.selectById(workNo) != null) {
+ if (wrkMastService.selectById(workNo)!=null) {
throw new CoolException("鐢熸垚宸ヤ綔鍙�" + workNo + "鍦ㄥ伐浣滄。涓凡瀛樺湪");
}
}
return workNo;
+ }
+
+ //鎷嗙洏鏈哄绌烘澘鎵爜锛岄┍鍔ㄦ墭鐩樺悜鐮佸灈浣嶏紝涓嶅叆搴�
+ @Transactional
+ public StartupDto getScanBarcodeEmptyBoard(){
+ StartupDto startupDto = new StartupDto();
+ Integer staNo = 0;
+ if (wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 201).eq("staNo", 216))<2){
+ staNo=216;
+ }
+ if (wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 201).eq("staNo", 220))<2){
+ staNo=220;
+ }
+
+ startupDto.setStaNo(staNo);
+ return startupDto;
}
/**
@@ -308,25 +328,65 @@
// 1.鎸夎鍒欐煡鎵惧簱浣�
if (Cools.isEmpty(locMast) && crnNo != 0) {
- List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("row1", nearRow).eq("loc_sts", "O").orderBy("lev1",true).orderBy("bay1",true));
+ List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+ .eq("row1", nearRow)
+ .eq("loc_sts", "O")
+ .orderBy("lev1",true).orderBy("bay1",true));
for (LocMast locMast1 : locMasts) {
if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) {
continue;
}
if (Utils.BooleanWhsTypeStaIoType(whsType)){
String shallowLoc = Utils.getDeepLoc(slaveProperties, locMast1.getLocNo());
- LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", shallowLoc).eq("loc_sts", "O"));
+ LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", shallowLoc).eq("loc_sts", "O"));
if (!Cools.isEmpty(locMast2)) {
locMast = locMast2;
break;
}
- }else {
+ } else {
if (!Cools.isEmpty(locMast1)) {
locMast = locMast1;
break;
}
}
}
+
+ if (Cools.isEmpty(locMast) && Utils.BooleanWhsTypeStaIoType(whsType)){
+ for (LocMast locMast1 : locMasts) {
+ if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) {
+ continue;
+ }
+ if (Utils.BooleanWhsTypeStaIoType(whsType)){
+ String shallowLoc = Utils.getDeepLoc(slaveProperties, locMast1.getLocNo());
+ LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", shallowLoc).eq("loc_sts", "O"));
+ if (!Cools.isEmpty(locMast2)) {
+ locMast = locMast2;
+ break;
+ } else {
+ locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", shallowLoc).eq("loc_sts", "F"));
+ if (!Cools.isEmpty(locMast2)) {
+ locMast = locMast2;
+ break;
+ } else {
+ locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .eq("loc_no", shallowLoc).eq("loc_sts", "D"));
+ if (!Cools.isEmpty(locMast2)) {
+ locMast = locMast2;
+ break;
+ }
+ }
+ }
+ } else {
+ if (!Cools.isEmpty(locMast1)) {
+ locMast = locMast1;
+ break;
+ }
+ }
+ }
+ }
}
if (!Cools.isEmpty(locMast) && !basCrnpService.checkSiteError(crnNo, true)) {
diff --git a/src/main/resources/mapper/RowLastnoMapper.xml b/src/main/resources/mapper/RowLastnoMapper.xml
index 18c3461..8dcdf71 100644
--- a/src/main/resources/mapper/RowLastnoMapper.xml
+++ b/src/main/resources/mapper/RowLastnoMapper.xml
@@ -21,6 +21,7 @@
<result column="sign_type" property="signType" />
<result column="sign_type_other" property="signTypeOther" />
<result column="sign_type_other_boolean" property="signTypeOtherBoolean" />
+ <result column="sta_no_list" property="staNoList" />
</resultMap>
--
Gitblit v1.9.1