From 203e2664c13883f8bb64f638cb1794c0b4480ec2 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期日, 27 四月 2025 08:24:20 +0800
Subject: [PATCH] 完成米多泉州wms开发

---
 src/main/java/com/zy/asrs/entity/OrderDetl.java |  227 +++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 198 insertions(+), 29 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java
index 2ab47e1..aa96844 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetl.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -4,22 +4,23 @@
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.baomidou.mybatisplus.enums.IdType;
+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.service.BasProcessProceduresService;
+import com.zy.asrs.service.BasQualityTestingService;
 import com.zy.asrs.service.OrderService;
+import com.zy.common.utils.Synchro;
 import com.zy.system.entity.User;
 import com.zy.system.service.UserService;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
-import java.beans.BeanInfo;
-import java.beans.Introspector;
-import java.beans.PropertyDescriptor;
 import java.io.Serializable;
 import java.text.SimpleDateFormat;
 import java.util.Date;
+import java.util.List;
 
 @Data
 @TableName("man_order_detl")
@@ -58,10 +59,20 @@
     /**
      * 浣滀笟鏁伴噺
      *
-     *  1. 鍏ュ簱 : qty 馃憜
-     *  1. 鍑哄簱 : qty 馃憜
+     *  鍏ュ簱 : 缁勬墭瀹屾垚锛岀粍鎵樻。銆佸伐浣滄。銆佸叆搴撳畬鎴愭暟閲�
+     *  鍑哄簱 : 宸ヤ綔妗c�佸嚭搴撳畬鎴愭暟閲�
      */
     @ApiModelProperty(value= "浣滀笟鏁伴噺")
+    @TableField("work_qty")
+    private Double workQty;
+
+    /**
+     * 瀹屾垚鏁伴噺
+     *
+     *  鍏ュ簱 : qty 馃憜
+     *  鍑哄簱 : qty 馃憜
+     */
+    @ApiModelProperty(value= "瀹屾垚鏁伴噺")
     private Double qty;
 
     /**
@@ -179,7 +190,8 @@
      * 闀垮害
      */
     @ApiModelProperty(value= "闀垮害")
-    private Double length;
+    @TableField("man_length")
+    private Double manLength;
 
     /**
      * 浣撶Н
@@ -229,7 +241,7 @@
     private Integer deadWarn;
 
     /**
-     * 鍒惰喘 1: 鍒堕��  2: 閲囪喘  3: 澶栧崗
+     * 鍒惰喘 1: 鍒堕��  2: 閲囪喘  3: 澶栧崗     銆併�佸疁绉戯細  鏄惁纭   1: 纭  2: 鏈‘璁�
      */
     @ApiModelProperty(value= "鍒惰喘 1: 鍒堕��  2: 閲囪喘  3: 澶栧崗  ")
     private Integer source;
@@ -288,9 +300,62 @@
     @ApiModelProperty(value= "澶囨敞")
     private String memo;
 
+    /**
+     * 鐘舵�� 0锛氭湭鐭ワ紝1锛氬叆搴擄紝2锛氬嚭搴�
+     */
+    @ApiModelProperty(value= "鍏ュ嚭搴撶被鍨嬶紙0锛氭湭鐭ワ紝1锛氬叆搴擄紝2锛氬嚭搴擄級")
+    @TableField("pakin_pakout_status")
+    private Integer pakinPakoutStatus;
+
+    /**
+     * 琛屽彿
+     */
+    @ApiModelProperty(value= "琛屽彿")
+    @TableField("line_number")
+    private Long lineNumber;
+
+    /**
+     * 澶囩敤1
+     */
+    @ApiModelProperty(value= "澶囩敤1")
+    private String standby1 = "";
+
+    /**
+     * 澶囩敤2
+     */
+    @ApiModelProperty(value= "澶囩敤2")
+    private String standby2 = "";
+
+    /**
+     * 澶囩敤3
+     */
+    @ApiModelProperty(value= "澶囩敤3")
+    private String standby3 = "";
+
+    /**
+     * 澶囩敤1
+     */
+    @ApiModelProperty(value= "澶囩敤1")
+    @TableField("box_type1")
+    private String boxType1 = "1";
+
+    /**
+     * 澶囩敤2
+     */
+    @ApiModelProperty(value= "澶囩敤2")
+    @TableField("box_type2")
+    private String boxType2 = "1";
+
+    /**
+     * 澶囩敤3
+     */
+    @ApiModelProperty(value= "澶囩敤3")
+    @TableField("box_type3")
+    private String boxType3 = "1";
+
     public OrderDetl() {}
 
-    public OrderDetl(Long orderId, String orderNo, Double anfme, Double qty, String matnr, String maktx, String batch, String specs, String model, String color, String brand, String unit, Double price, String sku, Double units, String barcode, String origin, String manu, String manuDate, String itemNum, Double safeQty, Double weight, Double length, Double volume, String threeCode, String supp, String suppCode, Integer beBatch, String deadTime, Integer deadWarn, Integer source, Integer inspect, Integer danger, Integer status, Long createBy, Date createTime, Long updateBy, Date updateTime, String memo) {
+    public OrderDetl(Long orderId, String orderNo, Double anfme, Double qty, String matnr, String maktx, String batch, String specs, String model, String color, String brand, String unit, Double price, String sku, Double units, String barcode, String origin, String manu, String manuDate, String itemNum, Double safeQty, Double weight, Double manLength, Double volume, String threeCode, String supp, String suppCode, Integer beBatch, String deadTime, Integer deadWarn, Integer source, Integer inspect, Integer danger, Integer status, Long createBy, Date createTime, Long updateBy, Date updateTime, String memo) {
         this.orderId = orderId;
         this.orderNo = orderNo;
         this.anfme = anfme;
@@ -313,7 +378,7 @@
         this.itemNum = itemNum;
         this.safeQty = safeQty;
         this.weight = weight;
-        this.length = length;
+        this.manLength = manLength;
         this.volume = volume;
         this.threeCode = threeCode;
         this.supp = supp;
@@ -331,6 +396,54 @@
         this.updateTime = updateTime;
         this.memo = memo;
     }
+
+    public OrderDetl(OrderDetl orderDetl) {
+        this.orderId = orderDetl.getOrderId();
+        this.orderNo = orderDetl.getOrderNo();
+        this.anfme = orderDetl.getAnfme();
+        this.qty = orderDetl.getQty();
+        this.matnr = orderDetl.getMatnr();
+        this.maktx = orderDetl.getMaktx();
+        this.batch = orderDetl.getBatch();
+        this.specs = orderDetl.getSpecs();
+        this.model = orderDetl.getModel();
+        this.color = orderDetl.getColor();
+        this.brand = orderDetl.getBrand();
+        this.unit = orderDetl.getUnit();
+        this.price = orderDetl.getPrice();
+        this.sku = orderDetl.getSku();
+        this.units = orderDetl.getUnits();
+        this.barcode = orderDetl.getBarcode();
+        this.origin = orderDetl.getOrigin();
+        this.manu = orderDetl.getManu();
+        this.manuDate = orderDetl.getManuDate();
+        this.itemNum = orderDetl.getItemNum();
+        this.safeQty = orderDetl.getSafeQty();
+        this.weight = orderDetl.getWeight();
+        this.manLength = orderDetl.getManLength();
+        this.volume = orderDetl.getVolume();
+        this.threeCode = orderDetl.getThreeCode();
+        this.supp = orderDetl.getSupp();
+        this.suppCode = orderDetl.getSuppCode();
+        this.beBatch = orderDetl.getBeBatch();
+        this.deadTime = orderDetl.getDeadTime();
+        this.deadWarn = orderDetl.getDeadWarn();
+        this.source = orderDetl.getSource();
+        this.inspect = orderDetl.getInspect();
+        this.danger = orderDetl.getDanger();
+        this.status = orderDetl.getStatus();
+        this.createBy = orderDetl.getCreateBy();
+        this.createTime = orderDetl.getCreateTime();
+        this.updateBy = orderDetl.getUpdateBy();
+        this.updateTime = orderDetl.getUpdateTime();
+        this.memo = orderDetl.getMemo();
+        this.pakinPakoutStatus = orderDetl.getPakinPakoutStatus();
+        this.lineNumber = orderDetl.getLineNumber();
+        this.standby1 = orderDetl.getStandby1();
+        this.standby2 = orderDetl.getStandby2();
+        this.standby3 = orderDetl.getStandby3();
+    }
+
 
     public String getOrderId$(){
         OrderService service = SpringUtils.getBean(OrderService.class);
@@ -436,30 +549,86 @@
     }
 
     public Double getEnableQty() {
-        if (null != this.anfme && this.qty != null) {
-            return this.anfme - this.qty;
+        if (null != this.anfme && this.workQty != null) {
+            return this.anfme - this.workQty;
+        }
+//        if (null != this.anfme && this.qty != null) {
+//            return this.anfme - this.qty;
+//        }
+        return null;
+    }
+
+    public String getQty$(){
+        if (getAnfme().equals(getQty())){
+            return "宸插畬鎴�";
+        }
+        return "鏈畬鎴�";
+    }
+
+    public boolean beSimilar(OrderDetl orderDetl){
+        return (
+                this.orderNo.equals(orderDetl.getOrderNo())
+                        && this.matnr.equals(orderDetl.getMatnr())
+                        && this.batch.equals(orderDetl.getBatch())
+                        && this.brand.equals(orderDetl.getBrand())
+                        && this.standby1.equals(orderDetl.getStandby1())
+                        && this.standby2.equals(orderDetl.getStandby2())
+                        && this.standby3.equals(orderDetl.getStandby3())
+                        && this.boxType1.equals(orderDetl.getBoxType1())
+                        && this.boxType2.equals(orderDetl.getBoxType2())
+                        && this.boxType3.equals(orderDetl.getBoxType3())
+        );
+    }
+
+    public static OrderDetl find(List<OrderDetl> detlDtos, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
+        if (Cools.isEmpty(matnr)) {
+            return null;
+        }
+        for (OrderDetl detlDto : detlDtos) {
+            if (matnr.equals(detlDto.getMatnr()) && Cools.eq(batch, detlDto.getBatch())
+                    && brand.equals(detlDto.getBrand()) && standby1.equals(detlDto.getStandby1())
+                    && standby2.equals(detlDto.getStandby2()) && standby3.equals(detlDto.getStandby3())
+                    && boxType1.equals(detlDto.getBoxType1())
+                    && boxType2.equals(detlDto.getBoxType2()) && boxType3.equals(detlDto.getBoxType3())
+            ) {
+                return detlDto;
+            }
         }
         return null;
     }
 
-    public void sync(Object dest) {
-        try {
-            BeanInfo sourceBean = Introspector.getBeanInfo(this.getClass(),Object.class);
-            PropertyDescriptor[] sourceProperty = sourceBean.getPropertyDescriptors();
-            BeanInfo destBean = Introspector.getBeanInfo(dest.getClass(),Object.class);
-            PropertyDescriptor[] destProperty = destBean.getPropertyDescriptors();
-            for (PropertyDescriptor propertyDescriptor : sourceProperty) {
-                for (PropertyDescriptor descriptor : destProperty) {
-                    if (propertyDescriptor.getName().equals(descriptor.getName()) && propertyDescriptor.getPropertyType() == descriptor.getPropertyType()) {
-                        descriptor.getWriteMethod().invoke(dest, propertyDescriptor.getReadMethod().invoke(this));
-                        break;
-                    }
-                }
-            }
-        } catch (Exception e) {
-            throw new CoolException("灞炴�у鍒跺け璐�:" + e.getMessage());
+    public String getPakinPakoutStatus$(){
+        if (Cools.isEmpty(this.pakinPakoutStatus)) return null;
+        switch (this.pakinPakoutStatus){
+            case 1:
+                return "Y";
+            case 2:
+                return "N";
+            default:
+                return null;
         }
     }
 
+    public String getBoxType1$(){
+        BasProcessProceduresService service = SpringUtils.getBean(BasProcessProceduresService.class);
+        BasProcessProcedures processProcedures = service.selectOne(new EntityWrapper<BasProcessProcedures>().eq("box_type", this.boxType1));
+        if (!Cools.isEmpty(processProcedures)){
+            return String.valueOf(processProcedures.getBoxSpecs());
+        }
+        return this.boxType1;
+    }
 
-}
+    public String getBoxType2$(){
+        BasQualityTestingService service = SpringUtils.getBean(BasQualityTestingService.class);
+        BasQualityTesting basQualityTesting = service.selectOne(new EntityWrapper<BasQualityTesting>().eq("box_type", this.boxType1));
+        if (!Cools.isEmpty(basQualityTesting)){
+            return String.valueOf(basQualityTesting.getBoxSpecs());
+        }
+        return this.boxType1;
+    }
+
+    public void sync(Object source) {
+        Synchro.Copy(source, this);
+    }
+
+}
\ No newline at end of file

--
Gitblit v1.9.1