From 6f1daffee3b65b5943dad26e1af3cbcafa46fd90 Mon Sep 17 00:00:00 2001
From: lsh <1>
Date: 星期日, 18 二月 2024 16:57:26 +0800
Subject: [PATCH] #
---
src/main/resources/mapper/WrkMastLogMapper.xml | 1
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 124 +++++++++++++++++++++++++++++++++++++----
src/main/java/com/zy/asrs/entity/WrkMast.java | 7 ++
src/main/java/com/zy/asrs/task/WorkMastScheduler.java | 10 +-
src/main/resources/mapper/WrkMastMapper.xml | 1
src/main/java/com/zy/asrs/entity/WrkMastLog.java | 7 ++
6 files changed, 133 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/WrkMast.java b/src/main/java/com/zy/asrs/entity/WrkMast.java
index e00a33a..5a2e412 100644
--- a/src/main/java/com/zy/asrs/entity/WrkMast.java
+++ b/src/main/java/com/zy/asrs/entity/WrkMast.java
@@ -325,6 +325,13 @@
@TableField("take_none")
private String takeNone;
+ /**
+ * 浼寸敓宸ヤ綔鍙�
+ */
+ @ApiModelProperty(value= "浼寸敓宸ヤ綔鍙�")
+ @TableField("work_no_other")
+ private Integer workNoOther;
+
public WrkMast() {}
public String getYmd$(){
diff --git a/src/main/java/com/zy/asrs/entity/WrkMastLog.java b/src/main/java/com/zy/asrs/entity/WrkMastLog.java
index 134ccc4..72d8b36 100644
--- a/src/main/java/com/zy/asrs/entity/WrkMastLog.java
+++ b/src/main/java/com/zy/asrs/entity/WrkMastLog.java
@@ -324,6 +324,13 @@
@TableField("take_none")
private String takeNone;
+ /**
+ * 浼寸敓宸ヤ綔鍙�
+ */
+ @ApiModelProperty(value= "浼寸敓宸ヤ綔鍙�")
+ @TableField("work_no_other")
+ private Integer workNoOther;
+
public WrkMastLog() {}
public String getWrkNo$(){
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 4972b51..075d879 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -536,8 +536,17 @@
if (Cools.isEmpty(param.getOutSite())) {
throw new CoolException("绔欑偣涓嶅瓨鍦�");
}
- List<String> locNoOtherList = new ArrayList<>();
+ List<String> locNoOtherListOne = new ArrayList<>();
for (String locNo : param.getLocNos()) {
+
+ //灏忔枡绠变即鐢熷嚭搴�
+ if (Utils.getRow(locNo)<=8){
+ String locNoOther = staNoOther(locNo);
+ if (!param.getLocNos().contains(locNoOther)){
+ locNoOtherListOne.add(locNoOther);
+ }
+ }
+
// 鑾峰彇宸ヤ綔鍙�
int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type);
// 鑾峰彇搴撲綅
@@ -593,21 +602,112 @@
}
}
}
+
+ for (String locNo:locNoOtherListOne){
+ // 鑾峰彇宸ヤ綔鍙�
+ int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type);
+
+ //浼寸敓鍏ュ簱宸ヤ綔鍙�
+ int workNoRu = commonService.getWorkNo(0);
+
+ // 鑾峰彇搴撲綅
+ LocMast locMast = locMastService.selectById(locNo);
+ if (Cools.isEmpty(locMast)) {
+ throw new CoolException(locNo+"搴撲綅涓嶅瓨鍦�");
+ }
+ if (!locMast.getLocSts().equals("D")){
+ throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篋鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$());
+ }
+ // 鑾峰彇婧愮珯
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", 110)
+ .eq("stn_no", param.getOutSite())
+ .eq("crn_no", locMast.getCrnNo());
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ Integer sourceStaNo = staDesc.getCrnStn();
+ if (Cools.isEmpty(sourceStaNo)) {
+ throw new CoolException("妫�绱㈡簮绔欏け璐�");
+ }
+ Date now = new Date();
+ // 淇濆瓨宸ヤ綔妗�
+ WrkMast wrkMast = new WrkMast();
+ wrkMast.setWrkNo(workNo);
+ wrkMast.setIoTime(now);
+ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
+ wrkMast.setIoType(110); // 鍏ュ嚭搴撶姸鎬侊細 110.绌烘澘鍑哄簱
+ wrkMast.setIoPri(10D);
+ wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯
+ wrkMast.setStaNo(crnStaRu(locMast.getCrnNo())); // 鐩爣绔� 鍫嗗灈鏈哄叆搴撳彛
+ wrkMast.setCrnNo(locMast.getCrnNo());
+ wrkMast.setSourceLocNo(locNo); // 婧愬簱浣�
+ wrkMast.setFullPlt("N"); // 婊℃澘锛歒
+ wrkMast.setPicking("N"); // 鎷f枡
+ wrkMast.setExitMk("N"); // 閫�鍑�
+ wrkMast.setEmptyMk("Y"); // 绌烘澘
+ wrkMast.setLinkMis("N");
+ wrkMast.setAppeUser(userId);
+ wrkMast.setAppeTime(now);
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(now);
+ wrkMast.setWorkNoOther(workNoRu);
+ boolean res = wrkMastService.insert(wrkMast);
+ if (!res) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+ // 鏇存柊搴撲綅鐘舵�� D.绌烘澘 -> R.鍑哄簱棰勭害
+ if (locMast.getLocSts().equals("D")){
+ locMast.setLocSts("R");
+ locMast.setModiUser(userId);
+ locMast.setModiTime(now);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException("鏇存柊搴撲綅鐘舵�佸け璐�");
+ }
+ }
+
+ // 鐢熸垚宸ヤ綔妗�
+ WrkMast wrkMastRu = new WrkMast();
+ wrkMastRu.setWrkNo(workNoRu);
+ wrkMastRu.setIoTime(new Date());
+ wrkMastRu.setWrkSts(2L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
+ wrkMastRu.setIoType(10); // 鍏ュ嚭搴撶姸鎬侊細10.绌烘澘鍏ュ簱
+ wrkMastRu.setIoPri(13D); // 浼樺厛绾�
+ wrkMastRu.setCrnNo(wrkMast.getCrnNo());
+ wrkMastRu.setSourceStaNo(wrkMast.getSourceStaNo());
+ wrkMastRu.setStaNo(wrkMast.getStaNo());
+// wrkMast.setLocNo(dto.getLocNo());
+ wrkMastRu.setFullPlt("N"); // 婊℃澘
+ wrkMastRu.setPicking("N"); // 鎷f枡
+ wrkMastRu.setExitMk("N"); // 閫�鍑�
+ wrkMastRu.setEmptyMk("Y"); // 绌烘澘
+ wrkMastRu.setLinkMis("Y");
+ wrkMastRu.setCtnType(wrkMast.getCtnType()); // 瀹瑰櫒绫诲瀷
+ // 鎿嶄綔浜哄憳鏁版嵁
+ wrkMastRu.setAppeTime(new Date());
+ wrkMastRu.setModiTime(new Date());
+ boolean resOther = wrkMastService.insert(wrkMastRu);
+ if (!resOther) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+ }
}
- public String[] staNoOther(String locNo){
- String[] strings = new String[2];
+ public Integer crnStaRu(Integer crnNo){
+ switch (crnNo){
+ case 1:
+ return 153;
+ case 2:
+ return 145;
+ default:
+ return null;
+ }
+ }
+
+ public String staNoOther(String locNo){
int row = Utils.getRow(locNo);
- if (row==1 || row==5 ){
- strings[0] = locNo;
- strings[1] = getDeepLoc2(locNo,row);
- return strings;
- } else if (row == 4 || row == 8){
- strings[0] = getDeepLoc2(locNo,row);
- strings[1] = locNo;
- return strings;
+ if (row%4==0 || row%4==1){
+ return getDeepLoc2(locNo,row);
}else {
- return null;
+ return getDeepLoc(locNo,row);
}
}
diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
index ef62596..86e5441 100644
--- a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -39,11 +39,11 @@
return;
}
for (WrkMast wrkMast : wrkMasts) {
- if (wrkMast.getIoType().equals(101)){
- if (Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("3")){
- continue;
- }
- }
+// if (wrkMast.getIoType().equals(101)){
+// if (Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("3")){
+// continue;
+// }
+// }
ReturnT<String> returnT = workMastHandler.start(wrkMast);
if (!returnT.isSuccess()) {
wrkMast.setUpdMk("X");
diff --git a/src/main/resources/mapper/WrkMastLogMapper.xml b/src/main/resources/mapper/WrkMastLogMapper.xml
index cbe6570..6c8d3cd 100644
--- a/src/main/resources/mapper/WrkMastLogMapper.xml
+++ b/src/main/resources/mapper/WrkMastLogMapper.xml
@@ -61,6 +61,7 @@
<result column="full_plt" property="fullPlt" />
<result column="pre_have" property="preHave" />
<result column="take_none" property="takeNone" />
+ <result column="work_no_other" property="workNoOther" />
</resultMap>
</mapper>
diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml
index 7834e3a..77c3d7c 100644
--- a/src/main/resources/mapper/WrkMastMapper.xml
+++ b/src/main/resources/mapper/WrkMastMapper.xml
@@ -60,6 +60,7 @@
<result column="full_plt" property="fullPlt" />
<result column="pre_have" property="preHave" />
<result column="take_none" property="takeNone" />
+ <result column="work_no_other" property="workNoOther" />
</resultMap>
<select id="selectToBeCompleteData" resultMap="BaseResultMap">
--
Gitblit v1.9.1