文章目录
- 需求
- 效果
- 1、简道云发起表单数据
- 2、致远OA接收待办事项
- 实现
- 1、根据简道云的表单样式设计致远的表单和流程
- 2、在集成平台设计API接口
- 2.1、【Groovy】组件的配置如下:
- 2.2、【流程表单:发起】组件配置如下:
- 应用信息配置
- 组件参数配置
- 2.3、流程设计好后,保存、发布,并生成API接口
- 2.4、配置服务器可外网访问
- 3、简道云配置webhook
- 4、集成平台日志
- 总结
需求
在简道云填写表单数据,自动推送致远OA形成待办,由致远强大的工作流引擎处理审批过程。——【仅体现集成平台能力,与实际需求无关】
效果
1、简道云发起表单数据
2、致远OA接收待办事项
实现
1、根据简道云的表单样式设计致远的表单和流程
此处为了重点说明场景效果,对表单样式进行了简化设计,致远的表单能力,相信用过的朋友都有深刻理解。
具体设计过程不再详细说明,设计的样式效果如下:
预览效果如下:
并根据实际审批制度,设计审批流程。
2、在集成平台设计API接口
按照步骤,新建集成流程、拖拽相关组件(基础组件中的【Groovy】组件,致远OA中的【流程表单:发起】组件),并分别配置参数。
其实【Groovy】组件可以不用,只不过为了调试方便,增加此组件。
流程图如下:
2.1、【Groovy】组件的配置如下:
(非常简单的一段代码!)
return{$$ ->$$.$Log.info('Gbus:{}',$$.$Gbus)return 'success'
}
2.2、【流程表单:发起】组件配置如下:
应用信息配置
选择对应的OA数据库、OA应用信息。
组件参数配置
根据OA中的模板编号,选择对应表单、OA登录名,并分别配置待写入数据中的表单字段。(此处的字段信息由于是简道云推送过来的,需要从简道云获取对应的表单字段JSON说明,然后按照规则获取对应key的值就行。)
2.3、流程设计好后,保存、发布,并生成API接口
选择流程,点击API按钮,新建API接口信息,如下图:
定义名称,选择GET或POST方法,定义访问路径,如"/resiver/data",取消包装结果勾选,勾选匿名,其他保持默认即可。
2.4、配置服务器可外网访问
如果部署执行引擎的服务器有公网IP,则可直接使用公网IP或域名。如果没有公网IP,可参考我之前的文章【FRP内网穿透之场景实战】
例如外网访问地址为http://api.yourdomain.com
则生成的API接口地址信息为http://api.yourdomain.com/resiver/data,记录此接口备用。
3、简道云配置webhook
具体配置信息可参考【简道云开发文档–webhook推送数据】
进入「扩展功能 >> 数据推送」,即可新建数据推送:
把上一步配置的API接口url填写到简道云的【服务器地址】位置。如下图:
配置完成后,保存。然后在简道云发起表单数据即可实现文章开头展示的效果。
4、集成平台日志
在集成平台的日志管理界面,可查看简道云推送的相关信息,包含返回结果JSON信息。
其中Groovy组件返回的信息如下:
{"op":"data_create","data":{"_widget_1552381255742":"2023-04-06T16:00:00.000Z","_widget_1552381256358":"录用","_widget_1552381255169":"合格","_widget_1552381256378":"4564","_widget_1552381255207":"","_widget_1552380652903":"2023-04-06T16:00:00.000Z","entryId":"5c8772ecabf889034c2d7508","updater":{"name":"freemiracle","_id":"606fd2e6e03d5c00080a5fe4","type":0,"status":1,"username":"#admin"},"_widget_1552380653133":[],"appId":"641d00ded18e6d00086b8221","formName":"面试流程","creator":{"name":"freemiracle","_id":"606fd2e6e03d5c00080a5fe4","type":0,"status":1,"username":"#admin"},"_widget_1552380652917":{"name":"freemiracle","_id":"606fd2e6e03d5c00080a5fe4","type":0,"status":1,"username":"#admin"},"_widget_1394614252991":"","updateTime":"2023-04-07T09:05:42.850Z","_widget_1552380653207":"通过","_widget_1552380653227":"789","_widget_1552380652971":{"dept_no":78,"name":"产品研发部","_id":"619af34f3ec912e56de1fe0f","type":0},"_widget_1552380652991":{},"_widget_1552380653069":"23","createTime":"2023-04-07T09:05:42.850Z","_widget_1552380653085":"432","_id":"642fdce6e0a1910008a8d520"}}
JSON美化后效果如下:
{"op": "data_create","data": {"_widget_1552381255742": "2023-04-06T16:00:00.000Z","_widget_1552381256358": "录用","_widget_1552381255169": "合格","_widget_1552381256378": "4564","_widget_1552381255207": "","_widget_1552380652903": "2023-04-06T16:00:00.000Z","entryId": "5c8772ecabf889034c2d7508","updater": {"name": "freemiracle","_id": "606fd2e6e03d5c00080a5fe4","type": 0,"status": 1,"username": "#admin"},"_widget_1552380653133": [],"appId": "641d00ded18e6d00086b8221","formName": "面试流程","creator": {"name": "freemiracle","_id": "606fd2e6e03d5c00080a5fe4","type": 0,"status": 1,"username": "#admin"},"_widget_1552380652917": {"name": "freemiracle","_id": "606fd2e6e03d5c00080a5fe4","type": 0,"status": 1,"username": "#admin"},"_widget_1394614252991": "","updateTime": "2023-04-07T09:05:42.850Z","_widget_1552380653207": "通过","_widget_1552380653227": "789","_widget_1552380652971": {"dept_no": 78,"name": "产品研发部","_id": "619af34f3ec912e56de1fe0f","type": 0},"_widget_1552380652991": {},"_widget_1552380653069": "23","createTime": "2023-04-07T09:05:42.850Z","_widget_1552380653085": "432","_id": "642fdce6e0a1910008a8d520"}
}
在调试过程中,通过以上JSON信息,再结合简道云的字段表单数据文档,就可以实现与致远OA的字段设置映射关系。即文中【2.2、【流程表单:发起】组件配置如下:】–【组件参数配置】的各项字段对应的值。
总结
集成平台不仅可主动拉取多个系统的数据,还可以接收其他系统推送的数据,并结合自身集成对接的优势,再推送给其他系统,真正实现多系统互联互通。
集成平台是低代码开发集成设计工具,下载到本地的执行引擎是真正的集成中台,在集成平台设计完成后,下发设计好的流程到执行引擎,可以不用再与集成平台通信,实现多系统集成,当然前提条件是本地的执行引擎与多系统能够互通。
欢迎各位咨询,寻找更多解决方案可能性!!!