package cn.iocoder.yudao.module.mes.api.item.dto; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; @Schema(description = "MES 物料产品同步 Request DTO") @Data public class MesMdItemSyncReqDTO { @Schema(description = "物料编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "ITEM001") private String code; @Schema(description = "物料名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "螺丝") private String name; @Schema(description = "规格型号", example = "M6*20") private String specification; @Schema(description = "计量单位编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "PCS") private String unitCode; @Schema(description = "物料分类编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "TYPE001") private String itemTypeCode; @Schema(description = "是否启用安全库存", example = "false") private Boolean safeStockFlag; @Schema(description = "最低库存量", example = "100") private BigDecimal minStock; @Schema(description = "最高库存量", example = "10000") private BigDecimal maxStock; @Schema(description = "是否高值物料", example = "false") private Boolean highValue; @Schema(description = "是否启用批次管理", example = "true") private Boolean batchFlag; @Schema(description = "备注", example = "备注") private String remark; // ========== 批次属性配置 ========== @Schema(description = "生产日期必填", example = "true") private Boolean produceDateFlag; @Schema(description = "有效期必填", example = "true") private Boolean expireDateFlag; @Schema(description = "入库日期必填", example = "false") private Boolean receiptDateFlag; @Schema(description = "供应商必填", example = "true") private Boolean vendorFlag; @Schema(description = "采购订单号必填", example = "false") private Boolean purchaseOrderCodeFlag; @Schema(description = "生产批号必填", example = "true") private Boolean lotNumberFlag; @Schema(description = "质量状态必填", example = "false") private Boolean qualityStatusFlag; }