单据校验控件
业务场景说明
当表单处于编辑状态下,用户提交表单时(或者手动点击校验按钮),每刻报表单触发外部数据校验,对客户管理员配置的外部数据源接口地址发起HTTP请求。 注:
- 执行顺序:外部单据号生成-单据校验-每刻内部校验-单据提交的外部事件
请求参数
请求方式
POST
请求参数示例
{
"formDataCode":"xxxxxxxx",
"formType":"xxxxxx",
"formData":{xxxxx}
}
请求参数说明
字段名称 | 字段类型 | 是否必填 | 字段说明 |
---|---|---|---|
formDataCode | String | 是 | 每刻单据内码code |
formType | String | 是 | 单据类型。REIMBURSE:报销单;PRECONSUME:申请单 |
formData | String | 是 | 单据具体信息,详情可以查看文档末尾的每刻推送的formData字段格式 |
响应参数
{
"success": true,
"errorMsg": "",
"data": {
"validationResult": [{
"level": "WARNING",
"message": "预算校验未通过",
"targetCode": "CODE001",
"targetClassify": "EXPENSE",
"needReason": true
}]
}
}
参数说明
字段名称 | 字段类型 | 是否必填 | 字段说明 |
---|---|---|---|
success | boolean | 是 | 标记请求是否成功返回。 需返回data.validationResult下信息/响应成功,则返回true; 业务失败/请求异常/需返回errorMsg内信息等返回false。 |
errorMsg | String | 是 | 当success为false,则必填 |
data.validationResult | validationResultDto | 否 | 具体异常信息,若success为true,且有值,则以此返参为准 |
validationResultDto data下的异常信息
字段名称 | 字段类型 | 是否必填 | 字段说明 |
---|---|---|---|
level | String | 是 | 异常等级。见下表 |
message | String | 是 | 错误信息 |
targetClassify | String | 是 | 异常类型。见下表 |
targetCode | String | 是 | 当targetClassify值为EXPENSE时,必须填写该值 |
needReason | boolean | 否 | 是否需要填写超标理由,级别为ERROR时需要传false,因为ERROR级别无法提交 |
- 在data包裹的数据中:
- validationResult字段如果为空,则表示费控校验全部通过,不会提示异常信息。
- validationResult字段如果不为空,则会在页面上提示验证信息,内部的文字内容则在message中进行包裹。validationResult的数据格式为数组,因此,可以同时在页面展示多条的异常信息。
- level代表的是单据的校验级别,WARNING级别将会要求提交者确认后再继续提交,而ERROR级别则会禁止用户进行提交单据。
level 异常等级
可取值 | 用法含义 |
---|---|
WARNING | 警告级别的信息,一般该类级别的信息不会阻止表单提交但需要提交者确认后才能继续提交 |
ERROR | 错误级别的信息,出现此级信息会阻止表单提交 |
targetClassify 异常类型
可取值 | 用法含义 |
---|---|
FORM | 标识该异常是显示在单据上的异常信息,当类型为FORM时,targetCode需要为null |
EXPENSE | 费用异常,当枚举值为该异常时,必须填写对应的每刻费用code到targetCode字段 |
每刻推送的formData字段格式
详细文档地址:每刻推送的表单数据格式
每刻系统案例