跳到主要内容

POST高危 保存特价申请(可同时提交审批)

POST 新建或保存草稿(传 id 为更新,仅草稿/已驳回可改)。body 为 JSON 对象:必填 customerId(客户ID)、reason(申请理由)、lines(物料明细数组,至少一行,每行必填 qty 数量>0、requestedPrice 申请特价>0,应填写 productId 商品ID、skuId 规格ID(后端不强制校验,但应按所选物料填写);可选 normalPrice 常规价、listPrice 目录价、unitId/unitName 单位、materialCode/productName/spec/model 及组合字段);可选 id、contactName(联系人)、sourceQuotationId(来源报价单ID,须同客户)、urgency(NORMAL 普通 / URGENT 加急 / EXTRA 特急)、attachments(附件数组,每项 fileId)、submit(true 保存后直接提交审批)。返回特价申请ID。调用前请与用户确认。

接口编码所需范围后端接口
sales.special-price-application.savesales:writePOST /v1/special-price-application/save(comap-sales)

⚠️ 高危接口:删除或状态变更类操作,MCP 调用须先向用户复述并获同意后携 confirm: true。

必填字段

字段依据
customerId参数说明、接口规格
reason参数说明
lines参数说明
lines[].qty参数说明
lines[].requestedPrice参数说明
lines[].skuId参数说明

条件必填(如「某状态时必填」)不在此表,以上方参数说明为准。 判定规则见必填字段的判定。

请求体字段(body)

字段类型必填说明
idinteger(int64)—主键,更新草稿时传
customerIdinteger(int64)是客户ID
contactNamestring—联系人姓名
sourceQuotationIdinteger(int64)—来源报价单ID
urgencystring—{@link com.comap.sales.web.enums.SpecialPriceUrgencyEnum#getCode()}
reasonstring—原因
submitboolean—为 true 时保存后直接提交审批(新建或更新草稿后提交)
lines21SpecialPriceApplicationLineSaveDTO[]—特价明细行;每行使用 unitId + unitName 与表 t_special_price_application_line 的 unit_id、unit_name 对应,参见 SpecialPriceApplicationLineSaveDTO 字段说明。
attachments1SpecialPriceApplicationAttachmentSaveDTO[]—附件列表

「必填」仅反映接口规格声明的部分。服务内还有未体现在规格里的校验, 标「—」不等于可以不传;租户在主站配置的字段必填不约束本接口。 详见必填字段的判定与字段清单与自定义字段。

请求示例

curl -X POST https://open.risemap.cn/v1/api/invoke \
-H "Authorization: Bearer <访问令牌>" \
-H "Content-Type: application/json" \
-d '{
"apiCode": "sales.special-price-application.save",
"body": {
"id": "1961000000000000001",
"customerId": "1961000000000000001"
}
}'

错误处理​

响应统一信封 { code, message, data },code == 200 为成功。以下是本接口可能返回的开放平台层错误:

错误码说明可重试
92101访问凭证无效否
92201接口未登记或已停用否
92202超出凭证授权范围——本接口需 sales:write否
92204绑定员工无此接口的功能权限否
92203上游服务调用失败先查询处理结果,禁止盲目重试
92301请求过于频繁是
92205写操作处理超时,结果未知(下游可能仍在执行)否,先查询确认结果
92302有参数相同的写请求正在处理中等待并确认前一次结果,勿重复提交

除此之外,comap-sales 自身的业务校验失败会原样透传其业务码与提示 (如字段校验、状态不允许、数据不存在),这类码不在开放平台的号段内, 以响应里的 message 为准。完整的平台层错误码见错误码说明。

← 返回special-price-application