当物料启用批次管理(isBatchManaged = true)时,需要配置批次属性,定义创建批次时哪些字段是必填的。
批次属性字段(仅保留以下7个):
| 字段 | 说明 |
|---|---|
| 生产日期 | 批次的生产日期 |
| 有效期 | 批次的失效日期 |
| 入库日期 | 批次的入库日期 |
| 供应商 | 批次的供应商 |
| 采购订单编号 | 批次的采购订单号 |
| 生产批号 | 批次的批号 |
| 质量状态 | 批次的质量状态 |
┌─────────────────────────────────────────────────────────────┐
│ 批次配置双向同步 │
├─────────────────────────────────────────────────────────────┤
│ │
│ MDM 物料页面 ←────────────────→ MES 物料页面 │
│ │ │ │
│ ▼ ▼ │
│ mdm_item_batch_config ←─────────→ mes_md_item_batch_config │
│ │ │ │
│ └──────────主存储──────────────────┘ │
│ │
│ 说明: │
│ - MDM 表是主存储,MES 表是镜像 │
│ - 任意一方修改,自动同步到另一方 │
│ - 查询时优先从 MDM 表获取 │
│ │
└─────────────────────────────────────────────────────────────┘
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /mes/md/item-batch-config/get-by-item-id |
根据物料ID获取批次配置 |
请求参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| itemId | Long | 是 | 物料ID |
响应:
{
"code": 0,
"data": {
"id": 1,
"itemId": 8,
"produceDateFlag": true,
"expireDateFlag": true,
"receiptDateFlag": false,
"vendorFlag": true,
"purchaseOrderCodeFlag": false,
"lotNumberFlag": true,
"qualityStatusFlag": false
},
"msg": "操作成功"
}
响应字段说明:
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 配置ID |
| itemId | Long | 物料ID |
| produceDateFlag | Boolean | 生产日期必填 |
| expireDateFlag | Boolean | 有效期必填 |
| receiptDateFlag | Boolean | 入库日期必填 |
| vendorFlag | Boolean | 供应商必填 |
| purchaseOrderCodeFlag | Boolean | 采购订单号必填 |
| lotNumberFlag | Boolean | 生产批号必填 |
| qualityStatusFlag | Boolean | 质量状态必填 |
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /mes/md/item-batch-config/save |
保存批次配置(新增/更新) |
请求参数:
{
"itemId": 8,
"produceDateFlag": true,
"expireDateFlag": true,
"receiptDateFlag": false,
"vendorFlag": true,
"purchaseOrderCodeFlag": false,
"lotNumberFlag": true,
"qualityStatusFlag": false
}
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| itemId | Long | 是 | 物料ID |
| produceDateFlag | Boolean | 否 | 生产日期必填,默认 false |
| expireDateFlag | Boolean | 否 | 有效期必填,默认 false |
| receiptDateFlag | Boolean | 否 | 入库日期必填,默认 false |
| vendorFlag | Boolean | 否 | 供应商必填,默认 false |
| purchaseOrderCodeFlag | Boolean | 否 | 采购订单号必填,默认 false |
| lotNumberFlag | Boolean | 否 | 生产批号必填,默认 false |
| qualityStatusFlag | Boolean | 否 | 质量状态必填,默认 false |
响应:
{
"code": 0,
"data": 1,
"msg": "操作成功"
}
在物料详情页增加"批次属性配置"区块。
展示条件:
- 当物料的 isBatchManaged = true 时显示该配置区块
- 当物料的 isBatchManaged = false 时隐藏该配置区块
表单字段(仅7个):
| 字段 | 控件类型 | 说明 |
|---|---|---|
| 生产日期 | el-checkbox | 勾选表示创建批次时必填 |
| 有效期 | el-checkbox | 勾选表示创建批次时必填 |
| 入库日期 | el-checkbox | 勾选表示创建批次时必填 |
| 供应商 | el-checkbox | 勾选表示创建批次时必填 |
| 采购订单号 | el-checkbox | 勾选表示创建批次时必填 |
| 生产批号 | el-checkbox | 勾选表示创建批次时必填 |
| 质量状态 | el-checkbox | 勾选表示创建批次时必填 |
建议布局:
┌─────────────────────────────────────────────────────────────┐
│ 批次属性配置 │
├─────────────────────────────────────────────────────────────┤
│ ☑ 生产日期 ☑ 有效期 ☐ 入库日期 ☑ 供应商 │
│ ☐ 采购订单号 ☑ 生产批号 ☐ 质量状态 │
└─────────────────────────────────────────────────────────────┘
进入物料详情页时:
isBatchManaged 是否为 trueGET /mes/md/item-batch-config/get-by-item-id?itemId={物料ID} 获取配置保存物料时:
isBatchManaged = true,调用 POST /mes/md/item-batch-config/save 保存批次配置对于常见的采购物料,推荐默认配置:
| 字段 | 推荐 | 说明 |
|---|---|---|
| 生产日期 | ☑ | 追溯生产时间 |
| 有效期 | ☑ | 有保质期的物料 |
| 入库日期 | ☐ | 通常自动记录 |
| 供应商 | ☑ | 采购物料需要追溯来源 |
| 采购订单号 | ☐ | 可选 |
| 生产批号 | ☑ | 批次追溯 |
| 质量状态 | ☐ | 需要质检时使用 |
| 场景 | 规则 |
|---|---|
| 物料未启用批次管理 | 不显示批次属性配置区块 |
| 物料启用批次管理但无配置 | 创建批次时允许任意字段(宽松模式) |
| 物料启用批次管理且有配置 | 创建批次时校验必填字段 |
| MDM 修改批次配置 | 自动同步到 MES 表 |
| MES 修改批次配置 | 自动同步到 MDM 表 |