package cn.iocoder.yudao.module.mes.controller.admin.pro.mps.vo;
|
|
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
|
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
|
import cn.iocoder.yudao.module.mes.enums.DictTypeConstants;
|
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
import cn.idev.excel.annotation.ExcelProperty;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import lombok.Data;
|
|
import java.math.BigDecimal;
|
import java.time.LocalDateTime;
|
|
@Schema(description = "管理后台 - MES 生产主计划 Response VO")
|
@Data
|
@ExcelIgnoreUnannotated
|
public class MesProMpsRespVO {
|
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
@ExcelProperty("编号")
|
private Long id;
|
|
@Schema(description = "MPS 编码", example = "MPS-001")
|
@ExcelProperty("MPS 编码")
|
private String code;
|
|
@Schema(description = "状态", example = "0")
|
@ExcelProperty(value = "状态", converter = DictConvert.class)
|
@DictFormat(DictTypeConstants.MES_PRO_MPS_STATUS)
|
private Integer status;
|
|
// ========== 来源信息 ==========
|
|
@Schema(description = "销售订单ID", example = "100")
|
private Long saleOrderId;
|
|
@Schema(description = "销售订单号", example = "SO-001")
|
@ExcelProperty("销售订单号")
|
private String saleOrderNo;
|
|
@Schema(description = "销售订单明细ID", example = "200")
|
private Long saleOrderItemId;
|
|
// ========== 产品信息 ==========
|
|
@Schema(description = "产品编号", example = "100")
|
private Long productId;
|
|
@Schema(description = "产品编码", example = "P-001")
|
@ExcelProperty("产品编码")
|
private String productCode;
|
|
@Schema(description = "产品名称", example = "电路板 A")
|
@ExcelProperty("产品名称")
|
private String productName;
|
|
@Schema(description = "规格型号", example = "100x200mm")
|
@ExcelProperty("规格型号")
|
private String productSpecification;
|
|
@Schema(description = "单位名称", example = "个")
|
@ExcelProperty("单位")
|
private String unitMeasureName;
|
|
@Schema(description = "计划生产数量", example = "100.00")
|
@ExcelProperty("计划生产数量")
|
private BigDecimal quantity;
|
|
@Schema(description = "已生产数量", example = "50.00")
|
@ExcelProperty("已生产数量")
|
private BigDecimal quantityProduced;
|
|
// ========== 客户信息 ==========
|
|
@Schema(description = "客户编号", example = "300")
|
private Long clientId;
|
|
@Schema(description = "客户编码", example = "C-001")
|
@ExcelProperty("客户编码")
|
private String clientCode;
|
|
@Schema(description = "客户名称", example = "客户 A")
|
@ExcelProperty("客户名称")
|
private String clientName;
|
|
// ========== 时间信息 ==========
|
|
@Schema(description = "需求日期")
|
@ExcelProperty("需求日期")
|
private LocalDateTime requestDate;
|
|
@Schema(description = "下发日期")
|
@ExcelProperty("下发日期")
|
private LocalDateTime issueDate;
|
|
@Schema(description = "完成日期")
|
@ExcelProperty("完成日期")
|
private LocalDateTime finishDate;
|
|
// ========== 生产工单关联 ==========
|
|
@Schema(description = "生产工单ID", example = "500")
|
private Long workOrderId;
|
|
@Schema(description = "生产工单编码", example = "WO-001")
|
@ExcelProperty("生产工单编码")
|
private String workOrderCode;
|
|
// ========== 合并下发标识 ==========
|
|
@Schema(description = "是否合并下发", example = "0")
|
private Integer mergeFlag;
|
|
@Schema(description = "合并批次号", example = "MERGE-001")
|
private String mergeBatchNo;
|
|
@Schema(description = "备注", example = "备注")
|
@ExcelProperty("备注")
|
private String remark;
|
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("创建时间")
|
private LocalDateTime createTime;
|
|
}
|