From ec7342d38bb1ca9f5b4e08f4901aa10a3b8d7265 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期六, 07 十月 2023 11:55:21 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/model/OutLocDto.java |   58 +++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 35 insertions(+), 23 deletions(-)

diff --git a/src/main/java/com/zy/common/model/OutLocDto.java b/src/main/java/com/zy/common/model/OutLocDto.java
index c990d89..0a4ff1e 100644
--- a/src/main/java/com/zy/common/model/OutLocDto.java
+++ b/src/main/java/com/zy/common/model/OutLocDto.java
@@ -1,57 +1,69 @@
 package com.zy.common.model;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
 import com.core.common.SpringUtils;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.LocDetl;
 import com.zy.asrs.service.LocDetlService;
+import lombok.Data;
 
-import java.util.List;
+import java.util.*;
 
 /**
  * Created by vincent on 2020/6/17
  */
+@Data
 public class OutLocDto {
 
     private String locNo;
 
-    private List<LocDetlDto> locDetlDtos;
+    public boolean sign=false;
+
+    public boolean isSign() {
+        return sign;
+    }
+
+    public void setSign(boolean sign) {
+        this.sign = sign;
+    }
+
+    private List<LocDetlDto> locDetlDtos = new ArrayList<>();
 
     public OutLocDto() {
     }
 
-    public OutLocDto(String locNo, List<LocDetlDto> locDetlDtos) {
+    public OutLocDto(String locNo, LocDetlDto locDetlDto) {
         this.locNo = locNo;
-        this.locDetlDtos = locDetlDtos;
-    }
-
-    public String getLocNo() {
-        return locNo;
-    }
-
-    public void setLocNo(String locNo) {
-        this.locNo = locNo;
-    }
-
-    public List<LocDetlDto> getLocDetlDtos() {
-        return locDetlDtos;
-    }
-
-    public void setLocDetlDtos(List<LocDetlDto> locDetlDtos) {
-        this.locDetlDtos = locDetlDtos;
+        this.locDetlDtos.add(locDetlDto);
+        this.sign = locDetlDto.isSign();
     }
 
     public boolean isAll(){
+        List<LocDetlDto> locDetlDtosCp = new ArrayList<>(this.locDetlDtos);
         // 鏌ヨ褰撳墠搴撲綅鍙锋墍鏈夌殑搴撳瓨鏄庣粏
         LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class);
         List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", this.locNo));
         if (locDetls == null || locDetls.isEmpty()){
-            return true;
+            throw new CoolException("妫�绱㈠簱瀛樻槑缁嗗け璐ワ紝搴撲綅鍙�=" + this.locNo);
         }
         int sameNumber = 0;
         for (LocDetl locDetl : locDetls) {
-            for (LocDetlDto dto : this.locDetlDtos) {
-                if (dto.getLocDetl().getMatnr().equals(locDetl.getMatnr()) && dto.getCount().equals(locDetl.getAnfme())) {
+            Iterator<LocDetlDto> iterator = locDetlDtosCp.iterator();
+            while (iterator.hasNext()) {
+                LocDetlDto next = iterator.next();
+                if (!next.getLocDetl().getMatnr().equals(locDetl.getMatnr())) {
+                    continue;
+                }
+                if (!Cools.eq(next.getLocDetl().getBatch(), locDetl.getBatch())) {
+                    continue;
+                }
+                if (next.getCount() > locDetl.getAnfme()) {
+                    throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+                }
+                if (next.getCount().equals(locDetl.getAnfme())) {
                     sameNumber++;
+                    iterator.remove();
                     break;
                 }
             }

--
Gitblit v1.9.1