POST 更新物料
POST 更新。body 为 JSON 对象(含 id)。
| 接口编码 | 所需范围 | 后端接口 |
|---|---|---|
srm.product.update | srm:write | POST /v1/product/update(comap-srm) |
必填字段
| 字段 | 依据 |
|---|---|
name | 接口规格 |
model | 接口规格 |
id | 接口规格 |
条件必填(如「某状态时必填」)不在此表,以上方参数说明为准。 判定规则见必填字段的判定。
请求体字段(body)
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
materialType | integer(int32) | — | 物料属性:0原材料,1半成品,2成品,3贸易商品,4消耗品,5服务,6备件,7包装材料 |
name | string | 是 | 商品名称 |
model | string | 是 | 商品型号 |
customNo | string | — | 自定义编码(如提供则跳过系统自动编码规则,最多200字符) |
no | string | — | 商品编码(兼容字段配置表单传入的 no) |
barcode | string | — | 商品条码 |
categoryId | integer(int64) | — | 商品分类id |
brandId | integer(int64) | — | 品牌id |
unitId | integer(int64) | — | 单位id |
ownerId | integer(int64) | — | 负责人id |
deptId | integer(int64) | — | 所属部门id |
status | integer(int32) | — | 状态:0草稿,1启用,2禁用 |
tags | string | — | 标签,多个以英文逗号分隔 |
remark | string | — | 备注 |
pictureFileIds | integer(int64)[] | — | 商品图片文件ID列表(非必填) |
documentFileIds | integer(int64)[] | — | 商品文档附件文件ID列表 |
multiUnit | integer(int32) | — | 是否启用多单位换算:0否,1是 |
taxIncluded | integer(int32) | — | 是否含税:0不含税,1含税 |
defaultTaxRate | number | — | 默认税率(%) |
enableBom | integer(int32) | — | 是否启用 BOM: 0 否, 1 是 |
sourceType | integer(int32) | — | 来源类型:0采购,1自制,2外协,3虚拟 |
creationSource | integer(int32) | — | 创建来源:1手动新增,2批量导入,3单据新增 |
enableBatchManagement | integer(int32) | — | 是否启用批次管理:0否 1是 |
enableTraceability | integer(int32) | — | 是否启用追溯管理:0否 1是 |
batchCodeRule | string | — | 批次编码规则:auto自动 / manual手动 / supplier沿用供应商 |
dimensions5 | SpecDimensionDTO[] | — | 规格维度列表(可选,无维度时由单条默认 SKU 自行决定) |
skus14 | ProductSkuItemDTO[] | — | SKU 列表(必填,至少 1 条) |
customFieldDataList3 | FieldDataItem[] | — | 自定义字段值列表(可选,由前端传入) |
id | integer(int64) | 是 | 商品ID |
purchaseCategoryId | integer(int64) | — | 采购分类id |
taxCode | string | — | 税收分类编码 |
defaultStoreId | integer(int64) | — | 默认仓库ID |
defaultLocationId | integer(int64) | — | 默认库位ID |
defaultSupplierId | integer(int64) | — | 默认供应商id |
lossRate | number | — | 损耗率,0.05 表示 5% |
relatedBomId | integer(int64) | — | 关联 BOM ID |
shelfLifeDays | integer(int32) | — | 保质期天数(NULL 表示无限制) |
minimumPackageQty | number | — | 最小包装数量(大于0,最多4位小数,null/0/负数存为null) |
minimumPackageUnitId | integer(int64) | — | 最小包装计量单位 ID |
「必填」仅反映接口规格声明的部分。服务内还有未体现在规格里的校验, 标「—」不等于可以不传;租户在主站配置的字段必填不约束本接口。 详见必填字段的判定与字段清单与自定义字段。
请求示例
curl -X POST https://open.risemap.cn/v1/api/invoke \
-H "Authorization: Bearer <访问令牌>" \
-H "Content-Type: application/json" \
-d '{
"apiCode": "srm.product.update",
"body": {
"id": "1961000000000000001",
"name": "string",
"model": "string"
}
}'
错误处理
响应统一信封 { code, message, data },code == 200 为成功。以下是本接口可能返回的开放平台层错误:
| 错误码 | 说明 | 可重试 |
|---|---|---|
| 92101 | 访问凭证无效 | 否 |
| 92201 | 接口未登记或已停用 | 否 |
| 92202 | 超出凭证授权范围——本接口需 srm:write | 否 |
| 92204 | 绑定员工无此接口的功能权限 | 否 |
| 92203 | 上游服务调用失败 | 先查询处理结果,禁止盲目重试 |
| 92301 | 请求过于频繁 | 是 |
| 92205 | 写操作处理超时,结果未知(下游可能仍在执行) | 否,先查询确认结果 |
| 92302 | 有参数相同的写请求正在处理中 | 等待并确认前一次结果,勿重复提交 |
除此之外,comap-srm 自身的业务校验失败会原样透传其业务码与提示
(如字段校验、状态不允许、数据不存在),这类码不在开放平台的号段内,
以响应里的 message 为准。完整的平台层错误码见错误码说明。
← 返回商品管理