功能说明:通过传递成本中心id,科目id,金额,日期对预算进行冻结,解冻,归档,回滚等操作
请求方式:POST(HTTPS)
请求地址:https://qwif.do1.com.cn/qwcgi/api/reimApiCtl/batchUpdateBudget.do
budgetOrderDTOList参数说明
[{
"creator": "提单人通讯录账号",
"updateBudgetStatus": 1,
"createTime": "2023-04-21",
"details": [{
"projId": "成本中心id",
"budgetOrderType": 1,
"money": 1000,
"subjId": "科目id",
"rootSubjId":"一级科目id",
"time": "2023-04-21"
}],
"refId": "外部系统报销单id"
}]
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
| token | 用于验证 | String | 是 | 参考获取token接口 |
| corpId | 公司唯一标识 | String | 是 | |
| budgetOrderDTOList | 预算更新列表 | BudgetOrderDTO | 是 |
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
| refId | 单据id | String | 是 | |
| details | 报销明细 | ReimDetailDTO[] | 是 | |
| updateBudgetStatus | 更新方式 | Integer | 是 | 1:提交冻结 2:解冻 3:归档 4:删除,回退冻结状态 当budgetOrderType字段为1时 1:已用- 冻结↑ 余额↓ 2:已用- 冻结↓ 余额↑ 3:已用↑ 冻结↓ 余额- 4:已用↓ 冻结↑ 余额- 当budgetOrderType字段为2时 1:已用↓ 冻结↑ 余额- 2:已用↑ 冻结↓ 余额- 3:已用- 冻结↓ 余额↑ 4:已用- 冻结↑ 余额↓ |
| createTime | 工单创建时间 | String | 是 | yyyy-MM-dd HH:mm:ss |
| creator | 表单创建人账号 | String | 是 |
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
| projId | 成本中心id | String | 是 | |
| subjId | 科目id | String | 是 | |
| rootSubjId | 一级科目id | String | 是 | 等同于subjectParentsId |
| money | 金额 | BigDecimal | 是 | |
| time | 报销时间 | String | 是 | yyyy-MM-dd或yyyy-MM-dd HH:mm:ss格式 |
| budgetOrderType | 工单明细类型 | Integer | 是 | 1:报销单 2:退款单 |
ReimApi api = QwSdkUtil.getInter(ReimApi.class);
BudgetOrderDTO[] budgetOrderDTOList = new BudgetOrderDTO[1];
BudgetOrderDTO budgetOrderDTO = new BudgetOrderDTO();
budgetOrderDTO.setCreateTime("2023-04-21");
budgetOrderDTO.setCreator("通讯录账号");
budgetOrderDTO.setRefId("外部系统报销单id");
// 冻结
budgetOrderDTO.setUpdateBudgetStatus(1);
ReimDetailDTO[] details = new ReimDetailDTO[1];
ReimDetailDTO detail = new ReimDetailDTO();
// 1:报销工单 2:退款工单
detail.setBudgetOrderType(1);
detail.setMoney(new BigDecimal("1000.00"));
detail.setProjId("成本中心id");
detail.setSubjId("科目id");
detail.setRootSubjId("一级科目id");
detail.setTime("2023-04-21");
details[0] = detail;
budgetOrderDTO.setDetails(details);
budgetOrderDTOList[0] = budgetOrderDTO;
api.batchUpdateBudget(QwSdkUtil.getCacheToken(),budgetOrderDTOList);
成功包体:
{
"code":"0",
"data":
{
},
"desc":"成功"
}
失败包体:
{
"code":"28212",
"data":
{
},
"desc":"第1条明细的费用超出4月预算100.00元"
}