自动化立体仓库 - WMS系统
zwl
2025-10-22 4ef4e287fe6597543a9628b6dae294c19f2b1d9c
src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -6,20 +6,18 @@
import com.baomidou.mybatisplus.enums.IdType;
import com.core.common.Cools;
import com.core.common.SpringUtils;
import com.core.exception.CoolException;
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.Objects;
@Data
@TableName("man_order_detl")
@@ -58,10 +56,20 @@
    /**
     * 作业数量
     *
     *  1. 入库 : qty 👆
     *  1. 出库 : qty 👆
     *  入库 : 组托完成,组托档、工作档、入库完成数量
     *  出库 : 工作档、出库完成数量
     */
    @ApiModelProperty(value= "作业数量")
    @TableField("work_qty")
    private Double workQty;
    /**
     * 完成数量
     *
     *  入库 : qty 👆
     *  出库 : qty 👆
     */
    @ApiModelProperty(value= "完成数量")
    private Double qty;
    /**
@@ -341,6 +349,19 @@
        return null;
    }
    public String getAnfme$(){
        if(Objects.equals(this.qty, this.anfme)){
            return "已完成";
        }else if(this.workQty==0){
            return "待处理";
        }else if(this.anfme>this.qty){
            return "作业中";
        }else if(this.anfme<this.qty){
            return "异常";
        }
        return "";
    }
    public String getBeBatch$(){
        if (null == this.beBatch){ return null; }
        switch (this.beBatch){
@@ -436,30 +457,17 @@
    }
    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 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);
    }
}
}