跳到主要内容

POST 登记成本费用

POST 为服务工单登记一笔成本费用,落「待报销」。body 为 JSON:必填 orderId、bizDate(费用发生日 yyyy-MM-dd)、amount(金额,>0,最多两位小数)、payer(垫付人);可选 category(差旅费/餐补/材料采购/外协人工/运输物流/通讯费/其他)、payMethod(公司报销/个人垫付待报销/公司直付/对公转账)、note、attachments(票据附件 fileId 列表)。

接口编码所需范围后端接口
sales.service-cost.createsales:writePOST /v1/service-orders/cost/create(comap-sales)

必填字段

字段依据
orderId参数说明、接口规格
bizDate参数说明、接口规格
amount参数说明、接口规格
payer参数说明
attachments[].fileId接口规格

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

请求体字段(body)

字段类型必填说明
orderIdinteger(int64)是所属工单ID
bizDatestring(date-time)是业务日期(费用发生日)
categorystring—费用类别:差旅费/餐补/材料采购/外协人工/运输物流/通讯费/其他
amountnumber是金额,必须大于 0
payerstring—垫付人
payMethodstring—支付方式:公司报销/个人垫付待报销/公司直付/对公转账
notestring—备注
attachments6ServiceAttachmentDTO[]—附件列表

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

请求示例

curl -X POST https://open.risemap.cn/v1/api/invoke \
-H "Authorization: Bearer <访问令牌>" \
-H "Content-Type: application/json" \
-d '{
"apiCode": "sales.service-cost.create",
"body": {
"orderId": "1961000000000000001",
"bizDate": "string",
"amount": 0
}
}'

响应 data 字段

字段类型必填说明
idinteger(int64)—成本费用记录ID
orderIdinteger(int64)—所属工单ID
bizDatestring(date-time)—业务日期
categorystring—费用类别:差旅费/餐补/材料采购/外协人工/运输物流/通讯费/其他
amountnumber—金额
payerstring—垫付人
payMethodstring—支付方式:公司报销/个人垫付待报销/公司直付/对公转账
statusstring—状态:待报销/已报销/已记账
flowInstanceCodestring—审批流程实例编码(comap-workflow)
financeExpenseIdinteger(int64)—财务费用单ID(comap-finance 回写)
financePayableIdinteger(int64)—财务应付单ID(comap-finance 回写)
financePaymentIdinteger(int64)—财务付款单ID(comap-finance 回写)
notestring—备注
createdBystring—登记人
createTimestring(date-time)—登记时间
attachments8ServiceAttachmentVO[]—附件列表

错误处理​

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

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

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

← 返回service-cost