package com.zy.asrs.entity; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotations.TableField; 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.zy.asrs.service.BasProcessProceduresService; import com.zy.asrs.service.BasQualityTestingService; import com.zy.asrs.service.LocMastService; import com.zy.asrs.service.LocOwnerService; import com.zy.system.entity.User; import com.zy.system.service.UserService; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; import org.springframework.beans.BeanUtils; import java.io.Serializable; import java.text.SimpleDateFormat; import java.util.Date; @Data @TableName("asr_loc_detl") @Accessors(chain = true) @ExcelIgnoreUnannotated public class LocDetl implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "loc_id", type = IdType.AUTO) @TableField("loc_id") private Long locId; @ApiModelProperty(value = "库位号") @TableField("loc_no") private String locNo; @ApiModelProperty("area_id") @TableField private Long areaId; @ApiModelProperty("area_name") @TableField private String areaName; @ApiModelProperty(value = "托盘条码") @TableField private String zpallet; @ApiModelProperty(value = "数量") @TableField @ExcelProperty("数量") private Double anfme; @ApiModelProperty(value = "商品编号") @TableField @ExcelProperty("商品编号") private String matnr; @ApiModelProperty(value = "商品名称") @TableField @ExcelProperty("商品名称") private String maktx; @ApiModelProperty(value = "规格") @TableField @ExcelProperty("规格") private String specs; @ApiModelProperty(value = "货品特征") @TableField @ExcelProperty("货品特征") private String batch; @ApiModelProperty(value = "单据编号") @ExcelProperty("单据编号") @TableField("order_no") private String orderNo; @ApiModelProperty(value = "型号") @TableField private String model; @ApiModelProperty(value = "颜色") @TableField private String color; @ApiModelProperty(value = "品牌") @TableField private String brand; @ApiModelProperty(value = "单位") @TableField private String unit; @ApiModelProperty(value = "单价") @TableField private Double price; @ApiModelProperty(value = "sku") @TableField private String sku; @ApiModelProperty(value = "单位量") @TableField private Double units; @ApiModelProperty(value = "条码") @TableField private String barcode; @ApiModelProperty(value = "产地") @TableField private String origin; @ApiModelProperty(value = "厂家") @TableField private String manu; @ApiModelProperty(value = "生产日期") @TableField("manu_date") private String manuDate; @ApiModelProperty(value = "品项数") @TableField("item_num") private String itemNum; @ApiModelProperty(value = "安全库存量") @TableField("safe_qty") private Double safeQty; @ApiModelProperty(value = "重量") @TableField private Double weight; @ApiModelProperty(value = "长度") @TableField(value = "man_length") private Double manLength; @ApiModelProperty(value = "体积") @TableField private Double volume; @ApiModelProperty(value = "三方编码") @TableField("three_code") private String threeCode; @ApiModelProperty(value = "供应商") @TableField 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") private String deadTime; @ApiModelProperty(value = "预警天数") @TableField("dead_warn") private Integer deadWarn; @ApiModelProperty(value = "制购 1: 制造 2: 采购 3: 外协 ") @TableField private Integer source; @ApiModelProperty(value = "要求检验 1: 是 0: 否 ") @TableField private Integer inspect; @ApiModelProperty(value = "危险品 1: 是 0: 否 ") @TableField private Integer danger; @ApiModelProperty(value = "修改人员") @TableField("modi_user") private Long modiUser; @ApiModelProperty(value = "修改时间") @TableField("modi_time") private Date modiTime; @ApiModelProperty(value = "创建者") @TableField("appe_user") private Long appeUser; @ApiModelProperty(value = "添加时间") @TableField("appe_time") private Date appeTime; @ApiModelProperty(value = "备注") @TableField private String memo; /** * 拥有者 */ @ApiModelProperty(value = "拥有者 1: 杰克 ") @TableField private Integer owner; /** * 备用1 */ @ApiModelProperty(value = "备用1") @TableField private String standby1 = ""; /** * 备用2 */ @ApiModelProperty(value = "备用2") @TableField private String standby2 = ""; /** * 备用3 */ @ApiModelProperty(value = "备用3") @TableField private String standby3 = ""; /** * 备用1 */ @ApiModelProperty(value = "备用1") @TableField("box_type1") private String boxType1 = ""; /** * 备用2 */ @ApiModelProperty(value = "备用2") @TableField("box_type2") private String boxType2 = ""; /** * 备用3 */ @ApiModelProperty(value = "备用3") @TableField("box_type3") private String boxType3 = ""; /** * 是否冻结 */ @ApiModelProperty(value = "是否冻结,0.未冻结,1.已冻结") @TableField private Integer frozen; public String getLocNo$() { LocMastService service = SpringUtils.getBean(LocMastService.class); LocMast locMast = service.selectById(this.locNo); if (!Cools.isEmpty(locMast)) { return String.valueOf(locMast.getLocNo()); } return null; } public String getOwner$() { LocOwnerService service = SpringUtils.getBean(LocOwnerService.class); LocOwner locOwner = service.selectById(this.owner); if (!Cools.isEmpty(locOwner)) { return String.valueOf(locOwner.getOwner()); } return null; } public String getBeBatch$() { if (null == this.beBatch) { return null; } switch (this.beBatch) { case 1: return "是"; case 0: return "否"; default: return String.valueOf(this.beBatch); } } public String getSource$() { if (null == this.source) { return null; } switch (this.source) { case 1: return "制造"; case 2: return "采购"; case 3: return "外协"; default: return String.valueOf(this.source); } } public String getInspect$() { if (null == this.inspect) { return null; } switch (this.inspect) { case 1: return "是"; case 0: return "否"; default: return String.valueOf(this.inspect); } } public String getDanger$() { if (null == this.danger) { return null; } switch (this.danger) { case 1: return "是"; case 0: return "否"; default: return String.valueOf(this.danger); } } public String getModiUser$() { UserService service = SpringUtils.getBean(UserService.class); User user = service.selectById(this.modiUser); if (!Cools.isEmpty(user)) { return String.valueOf(user.getUsername()); } return null; } public String getModiTime$() { if (Cools.isEmpty(this.modiTime)) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime); } public String getAppeUser$() { UserService service = SpringUtils.getBean(UserService.class); User user = service.selectById(this.appeUser); if (!Cools.isEmpty(user)) { return String.valueOf(user.getUsername()); } return null; } public String getAppeTime$() { if (Cools.isEmpty(this.appeTime)) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime); } public long getStoreDate() { long timeNow = new Date().getTime(); if (this.appeTime == null) { return 0; } long timeCreate = this.appeTime.getTime(); return (timeNow - timeCreate) / 24 / 60 / 60 / 1000; } public void sync(Object source) { BeanUtils.copyProperties(source, this); } public String getFrozen$() { if (null == this.frozen) { return "未冻结"; } switch (this.frozen) { case 0: return "未冻结"; case 1: return "已冻结"; default: return "未冻结"; } } public String getBoxType1$() { BasProcessProceduresService service = SpringUtils.getBean(BasProcessProceduresService.class); BasProcessProcedures processProcedures = service.selectOne(new EntityWrapper().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().eq("box_type", this.boxType1)); if (!Cools.isEmpty(basQualityTesting)) { return String.valueOf(basQualityTesting.getBoxSpecs()); } return this.boxType1; } }