From d232317f70a7fa38a63f0de396f08257d344d39e Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期四, 20 十月 2022 15:58:16 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java | 56 +++++++++-------------------
src/main/java/com/zy/asrs/service/LocMastService.java | 4 +-
src/main/java/com/zy/common/service/CommonService.java | 6 +--
3 files changed, 22 insertions(+), 44 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/LocMastService.java b/src/main/java/com/zy/asrs/service/LocMastService.java
index 85e64e7..772bd98 100644
--- a/src/main/java/com/zy/asrs/service/LocMastService.java
+++ b/src/main/java/com/zy/asrs/service/LocMastService.java
@@ -39,8 +39,8 @@
*/
Boolean isOutMost(String locNo, Boolean pakin);
- // 鍚岀粍绌洪棽搴撲綅
- LocMast findOutMost(List<String> locNos);
+ // 鍚岀粍绌洪棽搴撲綅 鍏ュ簱鐢�
+ LocMast findOutMost(String locNo);
// 瀵瑰悓缁勮揣鐗╄繘琛岀Щ搴撴搷浣�
void breakUp(String locNo, List<String> excludeLocNos);
diff --git a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
index c5c1dfa..fd417b0 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
@@ -1,5 +1,6 @@
package com.zy.asrs.service.impl;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.core.common.Cools;
import com.zy.asrs.entity.LocDetl;
@@ -9,14 +10,13 @@
import com.zy.asrs.service.RowLastnoService;
import com.zy.asrs.service.WorkService;
import com.zy.asrs.utils.Utils;
+import com.zy.common.service.CommonService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.util.ArrayList;
-import java.util.Comparator;
+import java.util.Collections;
import java.util.Iterator;
import java.util.List;
-import java.util.stream.Collectors;
@Service("locMastService")
public class LocMastServiceImpl extends ServiceImpl<LocMastMapper, LocMast> implements LocMastService {
@@ -61,44 +61,23 @@
return Integer.parseInt(locNo.substring(0, 2)) == Utils.getOutLayerRow(locNo, true);
}
+ public static void main(String[] args) {
+ List<String> groupLoc = Utils.getGroupLoc("2300101");
+ Collections.reverse(groupLoc);
+ System.out.println(JSON.toJSONString(groupLoc));
+ }
+
@Override
- public LocMast findOutMost(List<String> locNos) {
- List<Integer> rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
- if (!rows.retainAll(new ArrayList<Integer>() {{ add(1);add(2);add(3);}})) {
- locNos.sort(Comparator.comparingInt(o -> Integer.parseInt(o.substring(0, 2))));
+ public LocMast findOutMost(String locNo) {
+ int row = Utils.getRow(locNo);
+ List<String> locNos = Utils.getGroupLoc(locNo);
+ if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) {
+ } else if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)) {
+ Collections.reverse(locNos);
} else {
- rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
+ throw new RuntimeException("搴撲綅瑙f瀽寮傚父");
}
- if (!rows.retainAll(new ArrayList<Integer>() {{ add(8);add(9);add(10);add(11);}})) {
- locNos.sort(Comparator.comparingInt(o -> Integer.parseInt(o.substring(0, 2))));
- } else {
- rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
- }
-
- if (!rows.retainAll(new ArrayList<Integer>() {{ add(15);add(16);add(17);add(18);}})) {
- locNos.sort(Comparator.comparingInt(o -> Integer.parseInt(o.substring(0, 2))));
- } else {
- rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
- }
-
- if (!rows.retainAll(new ArrayList<Integer>() {{ add(4);add(5);add(6);add(7);}})) {
- locNos.sort((o1, o2) -> Integer.parseInt(o2.substring(0, 2)) - Integer.parseInt(o1.substring(0, 2)));
- } else {
- rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
- }
-
- if (!rows.retainAll(new ArrayList<Integer>() {{ add(12);add(13);add(14);}})) {
- locNos.sort((o1, o2) -> Integer.parseInt(o2.substring(0, 2)) - Integer.parseInt(o1.substring(0, 2)));
- } else {
- rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
- }
-
- if (!rows.retainAll(new ArrayList<Integer>() {{ add(19);add(20);add(21);}})) {
- locNos.sort((o1, o2) -> Integer.parseInt(o2.substring(0, 2)) - Integer.parseInt(o1.substring(0, 2)));
- } else {
- rows = locNos.stream().map(item -> Integer.parseInt(item.substring(0, 2))).distinct().collect(Collectors.toList());
- }
for (int i = 0; i<locNos.size(); i++) {
LocMast locMast = this.selectById(locNos.get(i));
if (locMast.getLocSts().equals("O")) {
@@ -106,7 +85,8 @@
return locMast;
} else {
LocMast lastLoc = this.selectById(locNos.get(i - 1));
- if (lastLoc.getLocSts().equals("F") || lastLoc.getLocSts().equals("D") || lastLoc.getLocSts().equals("X")) {
+ if (lastLoc.getLocSts().equals("F") || lastLoc.getLocSts().equals("D")
+ || lastLoc.getLocSts().equals("S") || lastLoc.getLocSts().equals("X")) {
return locMast;
} else {
break;
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 9e82564..fcadb9d 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -146,8 +146,7 @@
if (!Cools.isEmpty(matNos) && matNos.size() == 1) {
List<String> locNos = locDetlService.getSameDetl(matNos.get(0), start, end);
for (String locNo : locNos) {
- List<String> groupLoc = Utils.getGroupLoc(locNo);
- LocMast locMast0 = locMastService.findOutMost(groupLoc);
+ LocMast locMast0 = locMastService.findOutMost(locNo);
if (null != locMast0) {
// 娴呭簱浣嶇鍚堝昂瀵告娴�
if (VersionUtils.locMoveCheckLocType(locMast0, locTypeDto)) {
@@ -168,8 +167,7 @@
.eq("loc_sts", "D").ge("row1", start).le("row1", end));
if (locMasts.size() > 0) {
for (LocMast loc : locMasts) {
- List<String> groupLoc = Utils.getGroupLoc(loc.getLocNo());
- LocMast locMast0 = locMastService.findOutMost(groupLoc);
+ LocMast locMast0 = locMastService.findOutMost(loc.getLocNo());
if (null != locMast0) {
// 娴呭簱浣嶇鍚堝昂瀵告娴�
if (VersionUtils.locMoveCheckLocType(locMast0, locTypeDto)) {
--
Gitblit v1.9.1