自动化立体仓库 - WMS系统
zwl
2025-10-17 eea9c3e06de7b3559c6e1558ea276fd5e8646eb9
src/main/java/com/zy/asrs/entity/WaitPakin.java
@@ -3,13 +3,10 @@
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.common.utils.Synchro;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.io.Serializable;
import java.text.SimpleDateFormat;
import java.util.Date;
@@ -39,6 +36,52 @@
    @ApiModelProperty(value= "批号")
    private String batch;
    /**
     * 该字段是组托入库自动出发补空托盘标记
     * item_num
     * 0:不需要补空托盘
     * 1:小托盘
     * 2:大托盘
     * 10:小托盘AGV任务下发成功
     * 20:大托盘AGV任务下发成功
     * 100:小托盘放货完成
     * 200:大托盘放货完成
     */
    @ApiModelProperty(value= "大小托盘")
    @TableField("item_num")
    private String itemNum;
    /**
     * agv状态
     * be_batch
     * 0:无需调用AGV
     * 1:等待调用AGV
     * 2:AGV任务下发成功
     * 3:AGV任务完成
     * 4:给输送线下发入库指令完成
     */
    @ApiModelProperty(value= "agv状态")
    @TableField("be_batch")
    private Integer beBatch = 0;
    /**
     * 目标站
     */
    @ApiModelProperty(value= "目标站")
    private String sku;
    @ApiModelProperty(value= "发给AGV的任务号")
    private String supp;
    @ApiModelProperty(value= "仓库")
    private String brand;
    @ApiModelProperty(value= "唯一码")
    @TableField("supp_code")
    private String suppCode;
    @ApiModelProperty(value= "单据编号")
    @TableField("order_no")
    private String orderNo;
@@ -52,17 +95,11 @@
    @ApiModelProperty(value= "颜色")
    private String color;
    @ApiModelProperty(value= "品牌")
    private String brand;
    @ApiModelProperty(value= "单位")
    private String unit;
    @ApiModelProperty(value= "单价")
    private Double price;
    @ApiModelProperty(value= "sku")
    private String sku;
    @ApiModelProperty(value= "单位量")
    private Double units;
@@ -80,10 +117,6 @@
    @TableField("manu_date")
    private String manuDate;
    @ApiModelProperty(value= "品项数")
    @TableField("item_num")
    private String itemNum;
    @ApiModelProperty(value= "安全库存量")
    @TableField("safe_qty")
    private Double safeQty;
@@ -100,17 +133,6 @@
    @ApiModelProperty(value= "三方编码")
    @TableField("three_code")
    private String threeCode;
    @ApiModelProperty(value= "供应商")
    private String supp;
    @ApiModelProperty(value= "供应商编码")
    @TableField("supp_code")
    private String suppCode;
    @ApiModelProperty(value= "是否批次 1: 是  0: 否  ")
    @TableField("be_batch")
    private Integer beBatch;
    @ApiModelProperty(value= "保质期")
    @TableField("dead_time")
@@ -219,23 +241,7 @@
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
    }
    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 void sync(Object source) {
        Synchro.Copy(source, this);
    }
}