package cn.iocoder.yudao.module.mes.dal.dataobject.pro.mps; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO; import cn.iocoder.yudao.module.mes.dal.dataobject.pro.workorder.MesProWorkOrderDO; import cn.iocoder.yudao.module.mes.enums.DictTypeConstants; import cn.iocoder.yudao.module.mes.enums.pro.MesProMpsStatusEnum; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.math.BigDecimal; import java.time.LocalDateTime; /** * MES 生产主计划(MPS)DO * * @author 芋道源码 */ @TableName("mes_pro_mps") @KeySequence("mes_pro_mps_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class MesProMpsDO extends BaseDO { /** * 编号 */ @TableId private Long id; /** * MPS 编码 */ private String code; /** * 状态 * * 字典 {@link DictTypeConstants#MES_PRO_MPS_STATUS} * 枚举 {@link MesProMpsStatusEnum} */ private Integer status; // ========== 来源信息(来自销售订单) ========== /** * 销售订单ID */ private Long saleOrderId; /** * 销售订单号 */ private String saleOrderNo; /** * 销售订单明细ID */ private Long saleOrderItemId; // ========== 产品信息 ========== /** * 产品编号 * * 关联 {@link MesMdItemDO#getId()} */ private Long productId; /** * 计划生产数量 */ private BigDecimal quantity; /** * 已生产数量 */ private BigDecimal quantityProduced; /** * 计量单位ID */ private Long unitMeasureId; // ========== 客户信息 ========== /** * 客户编号 * * 关联 CRM 客户 {@link cn.iocoder.yudao.module.crm.api.customer.dto.CrmCustomerRespDTO#getId()} */ private Long clientId; // ========== 时间信息 ========== /** * 需求日期 */ private LocalDateTime requestDate; /** * 下发日期 */ private LocalDateTime issueDate; /** * 完成日期 */ private LocalDateTime finishDate; // ========== 生产工单关联(下发后生成) ========== /** * 生产工单ID * * 关联 {@link MesProWorkOrderDO#getId()} */ private Long workOrderId; /** * 生产工单编码 */ private String workOrderCode; // ========== 合并下发标识 ========== /** * 是否合并下发(0=否 1=是) */ private Integer mergeFlag; /** * 合并批次号 */ private String mergeBatchNo; /** * 备注 */ private String remark; }