package cn.iocoder.yudao.module.mdm.dal.dataobject.item; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.mdm.dal.dataobject.category.MdmItemCategoryDO; import cn.iocoder.yudao.module.mdm.dal.dataobject.unit.MdmUnitMeasureDO; import cn.iocoder.yudao.module.mdm.dal.dataobject.brand.MdmBrandDO; import cn.iocoder.yudao.module.mdm.enums.MdmItemTypeEnum; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.math.BigDecimal; /** * MDM 物料主数据 DO * * 统一物料数据,ERP/MES/WMS 共用 * * @author 芋道源码 */ @TableName("mdm_item") @KeySequence("mdm_item_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class MdmItemDO extends BaseDO { /** * 物料ID(全局唯一) */ @TableId private Long id; /** * 物料编码(全局唯一) */ private String code; /** * 物料名称 */ private String name; /** * 物料条码 */ private String barCode; /** * 规格型号 */ private String specification; /** * 物料分类编号 * * 关联 {@link MdmItemCategoryDO#getId()} */ private Long categoryId; /** * 主计量单位编号 * * 关联 {@link MdmUnitMeasureDO#getId()} */ private Long unitMeasureId; /** * 品牌编号 * * 关联 {@link MdmBrandDO#getId()} */ private Long brandId; /** * 物料类型 * * 枚举 {@link MdmItemTypeEnum} * 1: 物料 * 2: 产品 * 3: 半成品 */ private Integer itemType; /** * 状态 * * 枚举 {@link cn.iocoder.yudao.framework.common.enums.CommonStatusEnum} */ private Integer status; /** * 采购价 */ private BigDecimal purchasePrice; /** * 销售价 */ private BigDecimal salesPrice; /** * 成本价 */ private BigDecimal costPrice; /** * 最低价 */ private BigDecimal minPrice; /** * 安全库存 */ private BigDecimal safetyStock; /** * 最低库存量 */ private BigDecimal minStock; /** * 最高库存量 */ private BigDecimal maxStock; /** * 最小订货量 */ private BigDecimal minOrderQty; /** * 采购提前期(天) */ private Integer leadTime; /** * 是否批次管理 */ private Boolean isBatchManaged; /** * 是否序列号管理 */ private Boolean isSerialManaged; /** * 条码规则ID */ private Long barcodeRuleId; /** * 保质期天数 */ private Integer expiryDay; /** * 是否高值物料 */ private Boolean highValue; /** * 重量(kg) */ private BigDecimal weight; /** * 备注 */ private String remark; }