外部数据档案
业务场景
1.在每刻设置界面中设置外部数据档案 2.进入每刻报销->设置->单据与流程->选择某一自定义表单->选择 选项(外部档案选项)->选择在自定义档案中配置的外部档案
接口说明
请求类型
POST
请求参数示例
{
"keyWord":"",
"start":1,
"length":10,
"formData": {
***
},
"verification":false,
"detailBusinessCode": "detailCode",
"selectionIndex": "0"
}
请求参数说明
参数名 | 参数类型 | 参数说明 |
---|---|---|
keyWord | string | 搜索关键字,用于告知客户接口搜索数据 |
start | int | 页开始条数,用于告知客户接口分页数据中的开始条数(需用户在接口层面提供分页能力) |
length | int | 分页条数,用于告知客户接口分页数据中的一页大小(需用户在接口层面提供分页能力) |
formData | Json | 只会包含当前表单的信息,比如在分摊表单上加外部档案组件,则每刻推送数据只会是当前分摊表单信息。数据结构可以参考每刻推送的表单数据格式 |
verification | boolean | 是否用于校验 |
detailBusinessCode | string | 标记哪个明细组件(自定义明细组件)的数据互联触发请求(这个是用于在formData中根据这个key获取对应的明细数据) |
selectionIndex | string | 标记该明细的哪一行数据触发请求,从0开始(这个是在上个字段的基础上,获取触发行的数据)(常见于分摊表单) |
- 当配置的接口用于“外部档案管理员接口配置”等条件配置时,formData、detailBusinessCode、selectionIndex这几个值都会为空。
- 若此外部档案配置在分摊表、行程、费用、申请明细等非一级表单,则formData内容不会返回表单级信息
响应参数说明
- definedList列必传两列:bizCode、name
- 对应的外部档案的数据,会保存到每刻自定义档案中,其中bizCode为选项的业务编码,businessCode为name的列会作为选项的名称。
- principalCodes列的数据为选项的负责人编码,如果传该编码,则会将该编码保存至每刻数据库中,作为该选项的负责人(可参与每刻流程审批)。
- principalCodes字段,仅支持员工工号,如果多个,则以英文逗号“,”进行分割(如:190001,190002)。
- 回显值至单据选项时,优先级businessCode=name>primary=true列。例如下方示例中,在选中name=单行的选项时,businessCode为name,所以该字段会直接显示到单据上。
- 移动端点击选择页显示的名称列,优先级echo=true>primary=true列。例如下方示例中,选择页会优先显示“多行”列。
- dataList选项中bizCode为必传列,principalCodes为选传列
- 必传bizCode为全局唯一值,可以通过bizCode直接找到唯一的一行数据。
- 在进行参数响应时,需要保证bizCode字段,在列表的第一位,且display=false。
特殊参数说明
businessCode会有一些特定的值来用于支持每刻系统中的业务逻辑,以下对这些特殊的值做强调说明(上文也有,这里单独罗列出来做加强说明)
- businessCode的值为bizCode时,需要保证bizCode值全局唯一,它会作为每刻自定义档案中的业务编码来使用
- businessCode的值为principalCodes,其值应该为员工的工号,多个负责人以英文“,”分隔(如:190001,190002),该值会作为每刻自定义档案中选项的负责人来处理
- businessCode的值为name时,其会为选项的名称,需保证该接口内唯一,会被作为每刻自定义档案的选项名称来使用
- businessCode 的值请不要设置为"value", "definedList",这两个字段在系统中有特殊含义,可能导致渲染出现异常。
- 回显的时候,优先回显bizCode为name列,若不存在则回显primary为true的列,不会判断echo。
- 移动端选择的时候,数据标题优先展示echo为true的列,若不存在则展示primary为true的列,不会判断bizCode为name列。
{
"data": {
"dataList": [
{
"bizCode": "code",
"name": "单行文本",
"AmountInput": 11.11,
"MultiTextInput": "我是多行文本",
"NumberInput": 3,
"DateTimeInput": "2023-09-09",
"OptionInput": "YFXM1",
"Hyperlink": {
"hyperlinkName": "baidu",
"hyperlinkAddress": "https://www.baidu.com"
}
}
],
"defaultValue": {
"bizCode": "code",
"name": "单行文本",
"AmountInput": 11.11,
"MultiTextInput": "我是多行文本",
"NumberInput": 3,
"DateTimeInput": "2023-09-09",
"OptionInput": "YFXM1",
"Hyperlink": {
"hyperlinkName": "baidu",
"hyperlinkAddress": "https://www.baidu.com"
}
},
"definedList": [
{
"businessCode": "bizCode",//businessCode=bizCode时,必须处在第一个,且display=false
"display": false,
"label": "编码",
"primary": true,
"type": "SingleTextInput"
},
{
"businessCode": "name",
"display": true,
"label": "单行",
"primary": true,
"type": "SingleTextInput"
},
{
"businessCode": "AmountInput",
"display": true,
"label": "金额",
"primary": false,
"type": "AmountInput"
},
{
"businessCode": "MultiTextInput",
"display": true,
"label": "多行",
"primary": false,
"type": "MultiTextInput",
"echo": true
},
{
"businessCode": "NumberInput",
"display": true,
"label": "数字",
"primary": false,
"type": "NumberInput"
},
{
"businessCode": "DateTimeInput",
"display": true,
"label": "日期",
"primary": false,
"type": "DateTimeInput"
},
{
"businessCode": "OptionInput",
"display": true,
"label": "内部选项",
"primary": false,
"type": "OptionInput"
},
{
"businessCode": "Hyperlink",
"display": true,
"label": "超链接",
"primary": false,
"type": "Hyperlink"
}
],
"isPage": false,
"recordsTotal": 1
},
"success": true,
"errorMsg": "success"
}
definedList(表头)字段说明(该结构必须返回具体字段,不能为空)
字段 | 类型 | 说明 |
---|---|---|
primary | boolean | 标记主字段,用于搜索和回显于表单,有且只能有一个(建议回显参数列设置businessCode=name,此参数仅用于搜索用主键) |
echo | boolean | 控制移动端选择时默认展示的数据标题,有且只能有一个(可见下面图片实例) |
label | string | 表头名称 |
type | string | 字段类型,可选值:SingleTextInput: 单行文本输入、AmountInput:金额输入、NumberInput:数字输入、DateTimeInput日期输入、MultiTextInput多行文本输入、OptionInput内部选项输入 |
businessCode | string | 字段唯一code |
display | boolean | 标记该字段是否在选择页面展示给员工查看 |
dataList(表体)字段说明 key对应definedList中的businessCode,value需要区分不同的type,以下对各个type参数说明(可参考返参示例)
字段类型 | 数据格式 | 说明 |
---|---|---|
SingleTextInput | string | 单行文本输入 |
AmountInput | number | 金额输入 |
NumberInput | number | 数字输入 |
DateTimeInput | string | 日期输入 |
MultiTextInput | string | 多行文本输入 |
OptionInput | string | 内部选项输入 |
Hyperlink | Object | 超链接对象 |
超链接对象
{
"hyperlinkName": "baidu",
"hyperlinkAddress": "https://www.baidu.com"
}
defaultValue(默认选中项)字段说明 defaultValue和dataList的数据结构一致,它所表示的是当用户点击数据互联组件时默认选中的是哪一项
返回值参数说明
字段 | 说明 |
---|---|
recordsTotal | 记录总数,必填,会被用于前端计算总页数 |
isPage | isPage用于告知每刻是返回分页数据还是全量数据,isPage为true,则代表接口方返回的是分页数据,反之则是全量数据,返回全量数据的时候,会对页面加载速度由一定的影响 |
errorMsg | 错误信息,我们会将该信息以弹窗的形式回显 |
errorCode | 错误码 |
success | 是否成功,必填,用于标记本次调用是否成功 |
系统内示例
配置示例
表单内选择示例
“单行”列为bussiness=name,“多行”列为echo=true 移动端选择页效果图
更新记录
- 2021-09-16
- 新增businessCode value的特殊说明
- 2021-01-12
- 强制对name的依赖
- 2020-11-24
- 增加isPage参数说明
- 2020-11-20
- 增加不含上下文数据接口的相关说明(用于设置页面
- 2020-03-26
- 新增了选项负责人相关的字段内容