一、保存
接口定义:/api/save
HttpMethod: Post
请求值:
返回值(与GetOne返回值一致):
二、查询
接口定义:/api/query
HttpMethod: Post
请求值: filters:过滤条件(fieldName: 字段名,fieldValue:字段值,operator:运算符,可选值【equal、greater、greaterOrEqual、less、lessOrEqual、notEqual、in、notIn、like、between】)
说明:对于 in、not in运算符,fieldvalue的值为: ["a","b","c"] ,对于between运算符,fieldvalue的值为: ["2018-10-01","2018-12-01"]。目前先支持filters全为与的表达,后期支持与或及括号的表达式。
pagination:分页信息(current 当前显示页码 pageSize 每页显示多少行)
sorter:排序信息(json中的键为字段名,值为排序方式,可选值:【ascend、descend】)
summary:合计信息(json中的键为字段名,值为合计类型,可选值:【sum、min、max、avg、count】)
fieldSet:指定查询所需的字段集合,为空时后端按当前用户有权限查看的字段进行查询
请求body中 entityName属性是必须有的,其他几个属性可以为空
返回值:
三、获取一条记录
接口定义:/api/get/{entityName}/{entityInstId}
HttpMethod: Post
field:指定要获取哪些字段的值,只需列出字段的name,可从get action指向的Form组件的fieldSet属性获取
例:
请求值:
返回值:
备注:目前系统是根据字段上配置的Cascade注解来返回是实例的key还是实例的整条数据,同时会把该实例所有关联的实体数据全部返回,如果实体层次过多,性能会有问题。所以Get方法需增加需要获取的字段的层次信息
四、删除
接口定义:/api/delete。说明:针对批量删除,系统可配置策略,是分布提交还是整体提交
HttpMethod: Post
请求值:
返回值:
五、批量保存
接口定义:/api/batchSave
HttpMethod: Post
请求值:
返回值:
六、导出Excel
接口定义:/api/export?data =
HttpMethod: Get (导出只能用get方法,将所需参数放到 data中)
请求值: filter,sorter,summary 参考查询方法定义
header为导出的字段名与标题
entityName属性是必须有的,其他几个属性可以为空
七、获取某个或多个Entity实例数据变更后需同步更新的Entitys
说明:某个Entity实例数据发生变化(更新或删除)后,影响了其他Entity数据的变化,当前页面中所有窗口中相关联的组件内容需进行同步刷新
前台处理时,Entity实例数据发生变化后,调用该接口,然后发出一个数据变化的Event。当前页面所有window实例监听这个数据变化Event,发现有event产生后,遍历当前window中所有的数据展现组件(如Table、Form、Calendar),
如果组件上配置的entityName在接口返回的changedEntityName中,则对该组件的值按照上一次的条件进行刷新
事件触发配置
如红框内选项所示
- page:触发
- none:不触发
接口定义:/api/getChangedEntity
HttpMethod:Post
请求值:
返回值
八、针对Table或Form数据进行自定义RestAPI操作
1、开发者自己定义后台RestAPI,对Table或Form中的数据进行自定义操作
2、在某个事件中选择 restApiAction,选择某个entityName, dataSource选择Table或Form,url选择自定义的RestApi url
3、这些自定义的RestAPI只需传递body,body定义如下
body范例(dataSource = Form)
body范例(dataSource = Table,勾选多条记录)
body范例(dataSource = Table,事件发生在操作列中)
body范例(dataSource = Table,全选或没有配置复选框)
九、获取数据源
适用组件:Select、TreeSelect、Radio、CheckBoxGroup、Column
接口定义:/api/getValueOptions
HttpMethod: Post
请求值: entityName为该组件所在Form的entityName(或某个Column所在Table的EntityName),对于Tree控件,为Tree上配置的entityName
fieldName为该组件的FormItemName(或Column的DataIndex),对于Tree控件,该值为空
dataSource为该组件的dataSource属性(如果组件已经配置了fieldName,则该属性无效,传递时不传该属性)
parentKeys指该组件valueChangeFrom属性中component指向的组件中所选的key值集合或组件的值
relationFieldName指该组件valueChangeFrom属性中relationField的值
返回值
十、图表查询
接口定义:/api/chartQuery
HttpMethod: Post
请求值: filters:过滤条件,如果该方法的数据源为SearchForm,则拿SearchForm中的条件与 组件定义中的filters进行与操作
classify:分类字段,如果序列字段配置有聚合方法,则使用该字段进行分组
series:序列字段
请求body中 entityName、classify、series属性是必须有的,其他几个属性可以为空
按如下范例中的数据拼装查询语句: select name,sum(amount) as sumAmount,count(name) as countName from org where type='部门' and location ='北京' and group by name
返回值:
十一、更新Tree Node的关联
适用组件:Tree、TableTree
接口定义:/api/updateTree
HttpMethod: Post
返回值:
十二、批量保存
接口定义:/api/batchSave
HttpMethod: Post
请求值:
返回值:
十三、执行脚本
接口定义:/api/execScript
HttpMethod: Post
请求值:
data的数据根据该action配置中的dataSource来判断请求内容是单个对象还是数组
返回值:
十四、启用禁用行数据
接口定义:api/enableOrDisableData
请求方式:POST
请求body:
返回值: