package com.vincent.rsf.server.manager.entity; 
 | 
  
 | 
import com.baomidou.mybatisplus.annotation.*; 
 | 
  
 | 
import java.text.SimpleDateFormat; 
 | 
import java.util.Date; 
 | 
  
 | 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 
 | 
import com.fasterxml.jackson.annotation.JsonFormat; 
 | 
import com.vincent.rsf.server.system.constant.DictTypeCode; 
 | 
import com.vincent.rsf.server.system.entity.DictData; 
 | 
import com.vincent.rsf.server.system.service.DictDataService; 
 | 
import lombok.experimental.Accessors; 
 | 
import org.springframework.format.annotation.DateTimeFormat; 
 | 
import java.text.SimpleDateFormat; 
 | 
import java.util.Date; 
 | 
  
 | 
import com.baomidou.mybatisplus.annotation.TableLogic; 
 | 
import io.swagger.annotations.ApiModel; 
 | 
import io.swagger.annotations.ApiModelProperty; 
 | 
import lombok.Data; 
 | 
import com.vincent.rsf.framework.common.Cools; 
 | 
import com.vincent.rsf.framework.common.SpringUtils; 
 | 
import com.vincent.rsf.server.system.service.UserService; 
 | 
import com.vincent.rsf.server.system.entity.User; 
 | 
import java.io.Serializable; 
 | 
import java.util.Date; 
 | 
import java.util.Objects; 
 | 
  
 | 
@Data 
 | 
@Accessors(chain = true) 
 | 
@TableName("man_wave_item") 
 | 
public class WaveItem implements Serializable { 
 | 
  
 | 
    private static final long serialVersionUID = 1L; 
 | 
  
 | 
    /** 
 | 
     * ID 
 | 
     */ 
 | 
    @ApiModelProperty(value= "ID") 
 | 
    @TableId(value = "id", type = IdType.AUTO) 
 | 
    private Long id; 
 | 
  
 | 
    /** 
 | 
     * 波次ID 
 | 
     */ 
 | 
    @ApiModelProperty(value= "波次ID") 
 | 
    private Long waveId; 
 | 
  
 | 
    /** 
 | 
     * 波次号 
 | 
     */ 
 | 
    @ApiModelProperty(value= "波次号") 
 | 
    private String waveCode; 
 | 
  
 | 
    /** 
 | 
     * 商品ID 
 | 
     */ 
 | 
    @ApiModelProperty(value= "商品ID") 
 | 
    private Long matnrId; 
 | 
  
 | 
    /** 
 | 
     * 物料名称 
 | 
     */ 
 | 
    @ApiModelProperty(value= "物料名称") 
 | 
    private String maktx; 
 | 
  
 | 
    /** 
 | 
     * 商品编号 
 | 
     */ 
 | 
    @ApiModelProperty(value= "商品编号") 
 | 
    private String matnrCode; 
 | 
  
 | 
    /** 
 | 
     * 批号 
 | 
     */ 
 | 
    @ApiModelProperty(value= "批号") 
 | 
    private String batch; 
 | 
  
 | 
    /** 
 | 
     * 供应商批次 
 | 
     */ 
 | 
    @ApiModelProperty(value= "供应商批次") 
 | 
    private String splrBatch; 
 | 
  
 | 
    /** 
 | 
     * 单据编码 
 | 
     */ 
 | 
    @ApiModelProperty(value= "单据编码") 
 | 
    private String orderCode; 
 | 
  
 | 
    /** 
 | 
     * 单据ID 
 | 
     */ 
 | 
    @ApiModelProperty(value= "单据ID") 
 | 
    private Long orderItemId; 
 | 
  
 | 
    @ApiModelProperty("订单ID") 
 | 
    private Long orderId; 
 | 
  
 | 
    /** 
 | 
     * 单位 
 | 
     */ 
 | 
    @ApiModelProperty(value= "单位") 
 | 
    private String unit; 
 | 
  
 | 
    /** 
 | 
     * 跟踪码 
 | 
     */ 
 | 
    @ApiModelProperty(value= "跟踪码") 
 | 
    private String trackCode; 
 | 
  
 | 
    /** 
 | 
     * 商品库存索引 
 | 
     */ 
 | 
    @ApiModelProperty(value= "商品库存索引") 
 | 
    private String fieldsIndex; 
 | 
  
 | 
    /** 
 | 
     * 数量 
 | 
     */ 
 | 
    @ApiModelProperty(value= "数量") 
 | 
    private Double anfme; 
 | 
  
 | 
    @ApiModelProperty("已完成数量") 
 | 
    private Double qty; 
 | 
  
 | 
    /** 
 | 
     * 工作数量 
 | 
     */ 
 | 
    @ApiModelProperty(value= "工作数量") 
 | 
    private Double workQty; 
 | 
  
 | 
    /** 
 | 
     * 所属机构 
 | 
     */ 
 | 
    @ApiModelProperty(value= "所属机构") 
 | 
    private Long tenantId; 
 | 
  
 | 
    /** 
 | 
     * 状态 1: 正常  0: 禁用   
 | 
     */ 
 | 
    @ApiModelProperty(value= "状态 1: 正常  0: 禁用  ") 
 | 
    private Integer status; 
 | 
  
 | 
    /** 
 | 
     * 执行状态 0:未执行 1:待执行 2:执行中 3:已取消 
 | 
     */ 
 | 
    @ApiModelProperty("执行状态") 
 | 
    private Short exceStatus; 
 | 
  
 | 
    /** 
 | 
     * 是否删除 1: 是  0: 否   
 | 
     */ 
 | 
    @ApiModelProperty(value= "是否删除 1: 是  0: 否  ") 
 | 
    @TableLogic 
 | 
    private Integer deleted; 
 | 
  
 | 
    /** 
 | 
     * 添加时间 
 | 
     */ 
 | 
    @ApiModelProperty(value= "添加时间") 
 | 
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") 
 | 
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") 
 | 
    private Date createTime; 
 | 
  
 | 
    /** 
 | 
     * 添加人员 
 | 
     */ 
 | 
    @ApiModelProperty(value= "添加人员") 
 | 
    private Long createBy; 
 | 
  
 | 
    /** 
 | 
     * 修改时间 
 | 
     */ 
 | 
    @ApiModelProperty(value= "修改时间") 
 | 
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") 
 | 
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") 
 | 
    private Date updateTime; 
 | 
  
 | 
    /** 
 | 
     * 修改人员 
 | 
     */ 
 | 
    @ApiModelProperty(value= "修改人员") 
 | 
    private Long updateBy; 
 | 
  
 | 
    /** 
 | 
     * 目标库位 
 | 
     */ 
 | 
    @ApiModelProperty("目标库位") 
 | 
    @TableField(exist = false) 
 | 
    private String stockLocs; 
 | 
  
 | 
    /** 
 | 
     * 库存数量 
 | 
     */ 
 | 
    @ApiModelProperty("库存数量") 
 | 
    @TableField(exist = false) 
 | 
    private Double stockQty; 
 | 
  
 | 
  
 | 
    /*** 
 | 
     * 是否全拖出库 
 | 
     */ 
 | 
    @TableField(exist = false) 
 | 
    private Short flagAll; 
 | 
    /** 
 | 
     * 备注 
 | 
     */ 
 | 
    @ApiModelProperty(value= "备注") 
 | 
    private String memo; 
 | 
  
 | 
    public WaveItem() {} 
 | 
  
 | 
    public WaveItem(Long waveId,String waveCode,Long matnrId,String matnrName,String matnrCode,String batch,String splrBatch,String orderCode, Long orderId,Long orderItemId,String unit,String trackCode,String fieldsIndex,Double anfme,Double workQty,Long tenantId,Integer status,Integer deleted,Date createTime,Long createBy,Date updateTime,Long updateBy,String memo) { 
 | 
        this.waveId = waveId; 
 | 
        this.waveCode = waveCode; 
 | 
        this.matnrId = matnrId; 
 | 
        this.maktx = matnrName; 
 | 
        this.matnrCode = matnrCode; 
 | 
        this.batch = batch; 
 | 
        this.orderId = orderId; 
 | 
        this.splrBatch = splrBatch; 
 | 
        this.orderCode = orderCode; 
 | 
        this.orderItemId = orderItemId; 
 | 
        this.unit = unit; 
 | 
        this.trackCode = trackCode; 
 | 
        this.fieldsIndex = fieldsIndex; 
 | 
        this.anfme = anfme; 
 | 
        this.workQty = workQty; 
 | 
        this.tenantId = tenantId; 
 | 
        this.status = status; 
 | 
        this.deleted = deleted; 
 | 
        this.createTime = createTime; 
 | 
        this.createBy = createBy; 
 | 
        this.updateTime = updateTime; 
 | 
        this.updateBy = updateBy; 
 | 
        this.memo = memo; 
 | 
    } 
 | 
  
 | 
  
 | 
//    WaveItem waveItem = new WaveItem( 
 | 
//            null,    // 波次ID 
 | 
//            null,    // 波次号 
 | 
//            null,    // 商品ID 
 | 
//            null,    // 物料名称 
 | 
//            null,    // 商品编号 
 | 
//            null,    // 批号 
 | 
//            null,    // 供应商批次 
 | 
//            null,    // 单据编码 
 | 
//            null,    // 单据ID 
 | 
//            null,    // 单位 
 | 
//            null,    // 跟踪码 
 | 
//            null,    // 商品库存索引 
 | 
//            null,    // 数量 
 | 
//            null,    // 工作数量 
 | 
//            null,    // 所属机构 
 | 
//            null,    // 状态 
 | 
//            null,    // 是否删除 
 | 
//            null,    // 添加时间 
 | 
//            null,    // 添加人员 
 | 
//            null,    // 修改时间 
 | 
//            null,    // 修改人员 
 | 
//            null    // 备注 
 | 
//    ); 
 | 
  
 | 
    public String getExceStatus$(){ 
 | 
        if (Cools.isEmpty(this.exceStatus)) { 
 | 
            return null; 
 | 
        } 
 | 
        DictDataService dictDataService = SpringUtils.getBean(DictDataService.class); 
 | 
        DictData dictDatas = dictDataService.getOne(new LambdaQueryWrapper<DictData>() 
 | 
                .eq(DictData::getDictTypeCode, DictTypeCode.SYS_WAVE_ITEM_EXCE_STATUS) 
 | 
                .eq(DictData::getValue, this.exceStatus)); 
 | 
        if (Objects.isNull(dictDatas) || Objects.isNull(dictDatas.getLabel())) { 
 | 
            return null; 
 | 
        } 
 | 
        return dictDatas.getValue() + "." + dictDatas.getLabel(); 
 | 
    } 
 | 
  
 | 
    public String getStatus$(){ 
 | 
        if (null == this.status){ return null; } 
 | 
        switch (this.status){ 
 | 
            case 1: 
 | 
                return "正常"; 
 | 
            case 0: 
 | 
                return "禁用"; 
 | 
            default: 
 | 
                return String.valueOf(this.status); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public String getCreateTime$(){ 
 | 
        if (Cools.isEmpty(this.createTime)){ 
 | 
            return ""; 
 | 
        } 
 | 
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); 
 | 
    } 
 | 
  
 | 
    public String getCreateBy$(){ 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.getById(this.createBy); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getUpdateTime$(){ 
 | 
        if (Cools.isEmpty(this.updateTime)){ 
 | 
            return ""; 
 | 
        } 
 | 
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); 
 | 
    } 
 | 
  
 | 
    public String getUpdateBy$(){ 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.getById(this.updateBy); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
  
 | 
  
 | 
    public Boolean getStatusBool(){ 
 | 
        if (null == this.status){ return null; } 
 | 
        switch (this.status){ 
 | 
            case 1: 
 | 
                return true; 
 | 
            case 0: 
 | 
                return false; 
 | 
            default: 
 | 
                return null; 
 | 
        } 
 | 
    } 
 | 
  
 | 
} 
 |