package com.vincent.rsf.server.manager.entity;
|
|
import java.text.SimpleDateFormat;
|
import java.util.*;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.vincent.rsf.server.api.controller.erp.params.SyncOrderParams;
|
import com.vincent.rsf.server.manager.enums.OrderType;
|
import com.vincent.rsf.server.manager.enums.OrderWorkType;
|
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.util.Date;
|
|
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableLogic;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
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;
|
|
@Data
|
@Accessors(chain = true)
|
@TableName("man_asn_order")
|
public class WkOrder implements Serializable {
|
|
private static final long serialVersionUID = 1L;
|
|
/**
|
* ID
|
*/
|
@ApiModelProperty(value = "ID")
|
@TableId(value = "id", type = IdType.AUTO)
|
private Long id;
|
|
/**
|
* 编号
|
*/
|
@ApiModelProperty(value = "编号")
|
private String code;
|
|
/**
|
* PO单号
|
*/
|
@ApiModelProperty(value = "PO单号")
|
private String poCode;
|
|
/**
|
* PO单据标识
|
*/
|
@ApiModelProperty(value = "PO单据标识")
|
private Long poId;
|
|
/**
|
* 单据类型
|
*/
|
@ApiModelProperty(value = "单据类型")
|
private String type;
|
|
/**
|
* 业务类型
|
*/
|
@ApiModelProperty(value = "业务类型")
|
private String wkType;
|
|
@ApiModelProperty("盘点类型")
|
private Integer checkType;
|
|
/**
|
* 送货数量
|
*/
|
@ApiModelProperty(value = "送货数量")
|
private Double anfme;
|
|
@ApiModelProperty("执行数量")
|
private Double workQty;
|
|
/**
|
* 已收数量
|
*/
|
@ApiModelProperty(value = "已收数量")
|
private Double qty;
|
|
/**
|
* 物流单号
|
*/
|
@ApiModelProperty(value = "物流单号")
|
private String logisNo;
|
|
@ApiModelProperty("波次ID")
|
private Long waveId;
|
|
/**
|
* 预计到达时间
|
*/
|
@ApiModelProperty(value = "预计到达时间")
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
private Date arrTime;
|
|
/**
|
* 质检上报状态
|
*/
|
@ApiModelProperty("上报状态 0:未上报, 1:已上报")
|
private Integer ntyStatus;
|
|
@ApiModelProperty("上报次数")
|
private Integer reportOnce;
|
|
/**
|
* 释放状态 0: 正常 1: 已释放
|
*/
|
@ApiModelProperty(value = "释放状态 0: 正常 1: 已释放 ")
|
private Short rleStatus;
|
|
@ApiModelProperty("执行状态")
|
private Short exceStatus;
|
|
/**
|
* 状态 1: 正常 0: 冻结
|
*/
|
@ApiModelProperty(value = "状态 1: 正常 0: 冻结 ")
|
private Integer status;
|
|
/**
|
* 是否删除 1: 是 0: 否
|
*/
|
@ApiModelProperty(value = "是否删除 1: 是 0: 否 ")
|
@TableLogic
|
private Integer deleted;
|
|
/**
|
* 租户
|
*/
|
@ApiModelProperty(value = "租户")
|
private Integer tenantId;
|
|
/**
|
* 添加人员
|
*/
|
@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 createTime;
|
|
/**
|
* 修改人员
|
*/
|
@ApiModelProperty(value = "修改人员")
|
private Long updateBy;
|
|
/**
|
* 修改时间
|
*/
|
@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 String memo;
|
|
/**
|
* 仓库ID
|
*/
|
@ApiModelProperty(value = "仓库ID")
|
private Long warehouseId;
|
|
/**
|
* 库区ID
|
*/
|
@ApiModelProperty(value = "库区ID")
|
private Long wareAreaId;
|
|
/**
|
* 业务时间
|
*/
|
@ApiModelProperty(value = "业务时间")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private Date businessTime;
|
|
/**
|
* 作业点
|
*/
|
@ApiModelProperty(value = "作业点")
|
private String stationId;
|
|
/**
|
* 货主id
|
*/
|
@ApiModelProperty(value = "货主id")
|
private Long shipperId;
|
|
/**
|
* 单据内码
|
*/
|
@ApiModelProperty(value = "单据内码")
|
private String orderInternalCode;
|
|
/**
|
* 库存方向
|
*/
|
@ApiModelProperty(value = "库存方向")
|
private String stockDirect;
|
|
/**
|
* 客户编码
|
*/
|
@ApiModelProperty(value = "客户编码")
|
private String customerId;
|
|
/**
|
* 客户名称
|
*/
|
@ApiModelProperty(value = "客户名称")
|
private String customerName;
|
|
/**
|
* 供应商编码
|
*/
|
@ApiModelProperty(value = "供应商编码")
|
private String supplierId;
|
|
/**
|
* 供应商名称
|
*/
|
@ApiModelProperty(value = "供应商名称")
|
private String supplierName;
|
|
/**
|
* 收料/发货组织
|
*/
|
@ApiModelProperty(value = "收料/发货组织")
|
private String stockOrgId;
|
|
/**
|
* 收料/发货组织名称
|
*/
|
@ApiModelProperty(value = "收料/发货组织名称")
|
private String stockOrgName;
|
|
/**
|
* 采购组织
|
*/
|
@ApiModelProperty(value = "采购组织")
|
private String purchaseOrgId;
|
|
/**
|
* 采购组织名称
|
*/
|
@ApiModelProperty(value = "采购组织名称")
|
private String purchaseOrgName;
|
|
/**
|
* 采购员
|
*/
|
@ApiModelProperty(value = "采购员")
|
private String purchaseUserId;
|
|
/**
|
* 采购员名称
|
*/
|
@ApiModelProperty(value = "采购员名称")
|
private String purchaseUserName;
|
|
/**
|
* 生产组织
|
*/
|
@ApiModelProperty(value = "生产组织")
|
private String prdOrgId;
|
|
/**
|
* 生产组织名称
|
*/
|
@ApiModelProperty(value = "生产组织名称")
|
private String prdOrgName;
|
|
/**
|
* 销售组织
|
*/
|
@ApiModelProperty(value = "销售组织")
|
private String saleOrgId;
|
|
/**
|
* 销售组织名称
|
*/
|
@ApiModelProperty(value = "销售组织名称")
|
private String saleOrgName;
|
|
/**
|
* 销售员
|
*/
|
@ApiModelProperty(value = "销售员")
|
private String saleUserId;
|
|
/**
|
* 销售员名称
|
*/
|
@ApiModelProperty(value = "销售员名称")
|
private String saleUserName;
|
|
public WkOrder() {
|
}
|
|
public WkOrder(String code, String poCode, Long poId, String type, String wkType, Double anfme, Double qty,
|
String logisNo, Date arrTime, Short rleStatus, Integer status, Integer deleted, Integer tenantId,
|
Long createBy, Date createTime, Long updateBy, Date updateTime, String memo) {
|
this.code = code;
|
this.poCode = poCode;
|
this.poId = poId;
|
this.type = type;
|
this.wkType = wkType;
|
this.anfme = anfme;
|
this.qty = qty;
|
this.logisNo = logisNo;
|
this.arrTime = arrTime;
|
this.rleStatus = rleStatus;
|
this.status = status;
|
this.deleted = deleted;
|
this.tenantId = tenantId;
|
this.createBy = createBy;
|
this.createTime = createTime;
|
this.updateBy = updateBy;
|
this.updateTime = updateTime;
|
this.memo = memo;
|
}
|
|
public WkOrder(SyncOrderParams syncOrderParams) {
|
this.code = code;
|
this.poCode = poCode;
|
this.poId = poId;
|
this.type = type;
|
this.wkType = wkType;
|
this.checkType = checkType;
|
this.anfme = anfme;
|
this.workQty = workQty;
|
this.qty = qty;
|
this.logisNo = logisNo;
|
this.waveId = waveId;
|
this.arrTime = arrTime;
|
this.ntyStatus = ntyStatus;
|
this.reportOnce = reportOnce;
|
this.rleStatus = rleStatus;
|
this.exceStatus = exceStatus;
|
this.status = status;
|
this.deleted = deleted;
|
this.tenantId = tenantId;
|
this.createBy = createBy;
|
this.createTime = createTime;
|
this.updateBy = updateBy;
|
this.updateTime = updateTime;
|
this.memo = memo;
|
this.warehouseId = warehouseId;
|
this.wareAreaId = wareAreaId;
|
this.businessTime = businessTime;
|
this.stationId = stationId;
|
this.shipperId = shipperId;
|
this.orderInternalCode = orderInternalCode;
|
this.stockDirect = stockDirect;
|
this.customerId = customerId;
|
this.customerName = customerName;
|
this.supplierId = supplierId;
|
this.supplierName = supplierName;
|
this.stockOrgId = stockOrgId;
|
this.stockOrgName = stockOrgName;
|
this.purchaseOrgId = purchaseOrgId;
|
this.purchaseOrgName = purchaseOrgName;
|
this.purchaseUserId = purchaseUserId;
|
this.purchaseUserName = purchaseUserName;
|
this.prdOrgId = prdOrgId;
|
this.prdOrgName = prdOrgName;
|
this.saleOrgId = saleOrgId;
|
this.saleOrgName = saleOrgName;
|
this.saleUserId = saleUserId;
|
this.saleUserName = saleUserName;
|
}
|
|
public String getExceStatus$() {
|
if (Cools.isEmpty(this.exceStatus)) {
|
return "";
|
}
|
String exceType = DictTypeCode.DICT_ASN_EXCE_STATUS;
|
if (this.type.equals(OrderType.ORDER_CHECK.type)) {
|
exceType = DictTypeCode.SYS_CHECK_EXCE_STATUS;
|
}
|
DictDataService dictDataService = SpringUtils.getBean(DictDataService.class);
|
DictData dictData = dictDataService.getOne(new LambdaQueryWrapper<DictData>()
|
.eq(DictData::getDictTypeCode, exceType)
|
.eq(DictData::getValue, this.exceStatus));
|
if (Objects.isNull(dictData)) {
|
return null;
|
}
|
return dictData.getLabel();
|
}
|
|
public String getType$() {
|
return OrderType.getValType(this.type);
|
|
// if (this.type.equals(OrderType.ORDER_TRANSFER.type)) {
|
// return OrderType.getValType(this.type);
|
// } else {
|
// if (Cools.isEmpty(this.type)) {
|
// return "";
|
// }
|
// DictDataService dictDataService = SpringUtils.getBean(DictDataService.class);
|
// DictData dictData = dictDataService.getOne(new LambdaQueryWrapper<DictData>()
|
// .eq(DictData::getDictTypeCode, DictTypeCode.DICT_SYS_ORDER_TYPE)
|
// .eq(DictData::getValue, this.type));
|
// if (Objects.isNull(dictData)) {
|
// return null;
|
// }
|
// return dictData.getLabel();
|
// }
|
}
|
|
public String getWkType$() {
|
// if (this.type.equals(OrderType.ORDER_TRANSFER.type)) {
|
return OrderWorkType.getWorkDesc(this.wkType);
|
// } else {
|
// String typeCode = DictTypeCode.DICT_SYS_BUSINESS_TYPE;
|
// if (type.equals(OrderType.ORDER_CHECK.type)) {
|
// typeCode = DictTypeCode.SYS_CHECK_ORDER_TYPE;
|
// }
|
// if (Cools.isEmpty(this.wkType)) {
|
// return "";
|
// }
|
// DictDataService dictDataService = SpringUtils.getBean(DictDataService.class);
|
// DictData dictData = dictDataService
|
// .getOne(new LambdaQueryWrapper<DictData>()
|
// .eq(DictData::getDictTypeCode, typeCode)
|
// .eq(DictData::getValue, this.wkType));
|
// if (Objects.isNull(dictData)) {
|
// return null;
|
// }
|
// return dictData.getLabel();
|
// }
|
}
|
|
public String getCheckType$() {
|
if (Cools.isEmpty(this.checkType)) {
|
return "";
|
}
|
DictDataService dictDataService = SpringUtils.getBean(DictDataService.class);
|
DictData dictData = dictDataService.getOne(new LambdaQueryWrapper<DictData>()
|
.eq(DictData::getDictTypeCode, DictTypeCode.SYS_CHECK_TYPE)
|
.eq(DictData::getValue, this.checkType));
|
if (Objects.isNull(dictData)) {
|
return null;
|
}
|
return dictData.getLabel();
|
}
|
|
public String getArrTime$() {
|
if (Cools.isEmpty(this.arrTime)) {
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.arrTime);
|
}
|
|
public String getRleStatus$() {
|
if (null == this.rleStatus) {
|
return null;
|
}
|
switch (this.rleStatus) {
|
case 0:
|
return " 正常";
|
case 1:
|
return " 已释放";
|
default:
|
return String.valueOf(this.rleStatus);
|
}
|
}
|
|
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 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 getCreateTime$() {
|
if (Cools.isEmpty(this.createTime)) {
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
|
}
|
|
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 String getUpdateTime$() {
|
if (Cools.isEmpty(this.updateTime)) {
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
|
}
|
|
public Boolean getStatusBool() {
|
if (null == this.status) {
|
return null;
|
}
|
switch (this.status) {
|
case 1:
|
return true;
|
case 0:
|
return false;
|
default:
|
return null;
|
}
|
}
|
|
public String getNtyStatus$() {
|
if (null == this.ntyStatus) {
|
return "error";
|
}
|
switch (this.ntyStatus) {
|
case 0:
|
return "未上报";
|
case 1:
|
return "已上报";
|
case 2:
|
return "部分上报";
|
default:
|
return "error";
|
}
|
}
|
|
}
|