第三方系统平台如何对接gooflow2.0
第一步,参与者数据源配置
目前提供3种参与者数据源(员工,角色,部门),还有一种sql语句
XML配置如下
<?xml version="1.0" encoding="utf-8"?>
<!--参与者配置-->
<flowParticipants>
<chooseParticipant>
<id>1</id>
<name>员工参与者</name>
<sql>SELECT ID,FullName Participant FROM dbo.Hr_Employee WHERE ID IN ({0})</sql>
<connectionKey>HRBusinessSqlServer</connectionKey>
<!--数据源-->
<chooseDataSource tableName="dbo.Hr_Employee" selectField="*" sortField="ID">
<whereFields>
<whereField fieldName="DictionaryNo" fieldText="员工代码"></whereField>
<whereField fieldName="FullName" fieldText="员工姓名"></whereField>
</whereFields>
<columnFields>
<columnField fieldName="DictionaryNo" fieldText="员工代码" align="center"></columnField>
<columnField fieldName="FullName" fieldText="员工姓名" align="center"></columnField>
<columnField fieldName="EnName" fieldText="英文名" align="center"></columnField>
<columnField fieldName="Gender" fieldText="性别" align="center"></columnField>
<columnField fieldName="DutyName" fieldText="所属岗位" align="center"></columnField>
<columnField fieldName="WorkKind" fieldText="用工性质" align="center"></columnField>
</columnFields>
</chooseDataSource>
<!--字段映射-->
<chooseDataMappers>
<chooseDataMapper type="valueField" name="员工ID" fromField="ID" toField="ID"></chooseDataMapper>
<chooseDataMapper type="textField" name="员工姓名" fromField="FullName" toField="ApproverName"></chooseDataMapper>
</chooseDataMappers>
</chooseParticipant> <chooseParticipant>
<id>2</id>
<name>岗位参与者</name>
<sql>SELECT ID,FullName Participant FROM dbo.Hr_Employee WHERE DutyID IN ({0})</sql>
<connectionKey>HRBusinessSqlServer</connectionKey>
<!--数据源-->
<chooseDataSource tableName="dbo.View_Duty" selectField="*" sortField="ID">
<whereFields>
<whereField fieldName="DictionaryNo" fieldText="岗位代码"></whereField>
<whereField fieldName="DutyName" fieldText="岗位名称"></whereField>
</whereFields>
<columnFields>
<columnField fieldName="DictionaryNo" fieldText="岗位代码" align="center"></columnField>
<columnField fieldName="DutyName" fieldText="岗位名称" align="center"></columnField>
<columnField fieldName="DepName" fieldText="部门名称" align="center"></columnField>
<columnField fieldName="LimitedStaffing" fieldText="定编人数" align="center"></columnField>
</columnFields>
</chooseDataSource>
<!--字段映射-->
<chooseDataMappers>
<chooseDataMapper type="valueField" name="岗位ID" fromField="ID" toField="ID"></chooseDataMapper>
<chooseDataMapper type="textField" name="岗位名称" fromField="DutyName" toField="ApproverName"></chooseDataMapper>
</chooseDataMappers>
</chooseParticipant> <chooseParticipant>
<id>3</id>
<name>部门参与者</name>
<sql>SELECT ID,FullName Participant FROM dbo.Hr_Employee WHERE DepID IN ({0})</sql>
<connectionKey>HRBusinessSqlServer</connectionKey>
<!--数据源-->
<chooseDataSource tableName="dbo.View_Hr_Department" selectField="*" sortField="ID">
<whereFields>
<whereField fieldName="DictionaryNo" fieldText="部门代码"></whereField>
<whereField fieldName="DepName" fieldText="部门名称"></whereField>
</whereFields>
<columnFields>
<columnField fieldName="DictionaryNo" fieldText="部门代码" align="center"></columnField>
<columnField fieldName="DepName" fieldText="部门名称" align="center"></columnField>
<columnField fieldName="Manager" fieldText="部分负责人" align="center"></columnField>
<columnField fieldName="CompanyName" fieldText="所属公司" align="center"></columnField>
<columnField fieldName="DepTel" fieldText="部分电话" align="center"></columnField>
</columnFields>
</chooseDataSource>
<!--字段映射-->
<chooseDataMappers>
<chooseDataMapper type="valueField" name="部分ID" fromField="ID" toField="ID"></chooseDataMapper>
<chooseDataMapper type="textField" name="部分名称" fromField="DepName" toField="ApproverName"></chooseDataMapper>
</chooseDataMappers>
</chooseParticipant> <sqlParticipant>
<id>4</id>
<name>SQL语句参与者</name>
<connectionKey>HRBusinessSqlServer</connectionKey>
<sqlList>
<executeSql keyID="7cd0625e-c200-4ae4-8798-f250bd132a0b" name="给部门负责人审批" time="2017-08-30 13:19:51">
<flowID>3</flowID>
<nodeID>flow_node_11707280144501</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}
</sqlText>
</executeSql>
<executeSql keyID="8fe98a63-6d37-4566-be76-110fa567baf7" name="给部分负责人审批" time="2017-08-29 15:09:07">
<flowID>4</flowID>
<nodeID>flow_node_11708291502855</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="bb561444-7a4d-4590-8f3b-6d1e9eab98fe" name=" 给部分负责人审批" time="2017-09-03 22:25:13">
<flowID>5</flowID>
<nodeID>flow_node_11709032218118</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="c68e2cea-3894-4ddc-bfe1-95ee3c263a4e" name="部分负责人" time="2017-09-07 21:15:36">
<flowID>6</flowID>
<nodeID>flow_node_11709072113622</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="00af66f2-1d87-42b2-8f1a-9eca73810685" name="给部门负责人审批" time="2017-09-09 23:34:54">
<flowID>7</flowID>
<nodeID>flow_node_11709092333349</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="7c154523-8c7a-401c-b999-34c1ec9f68c4" name="给部分负责人审批" time="2017-09-20 09:40:45">
<flowID>4</flowID>
<nodeID>flow_node_11708291502855</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="f293d910-e7f3-409c-996d-389e475f6790" name="给部门负责人审批" time="2017-09-22 21:23:39">
<flowID>3</flowID>
<nodeID>flow_node_11707261535743</nodeID>
<sqlText> SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="1f51f9db-267b-4e07-9c21-9b326f6ba190" name="给部门负责人审批" time="2017-09-23 00:47:18">
<flowID>3</flowID>
<nodeID>flow_node_117072801400062</nodeID>
<sqlText> SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="e46e7772-0962-4cbe-abf2-4ab662b1db2b" name=" 给部分负责人审批" time="2017-09-28 15:17:14">
<flowID>5</flowID>
<nodeID>flow_node_11709032218118</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
<executeSql keyID="8ce69fd2-3b6e-42e8-9608-f6d75d80cad6" name=" 给部分负责人审批" time="2017-09-28 15:17:20">
<flowID>5</flowID>
<nodeID>flow_node_11709032218118</nodeID>
<sqlText>
SELECT b.EmployeeID ID,b.Manager Participant FROM dbo.Hr_Employee a
JOIN dbo.View_Hr_Department b ON b.ID=a.DepID
WHERE a.ID={0}</sqlText>
</executeSql>
</sqlList>
</sqlParticipant>
</flowParticipants>
flowParticipant
配好有就可以选择数据啦
第二步对接接口
作用 |
接口名称 |
参数 |
返回值 |
获取审批列表 |
GetApprovalList |
1.(string)userdata 2.(int)page 3.(int)pagesize 4.(int)isOver 5.(string) flowLevel 6.(string)where |
Dynamic->JsonData |
获取审批列表汇总信息 |
LoadApprovalListSummary |
1.(string)userData |
Dynamic->JsonData |
初始化流程状态 |
InitFlowState |
1.string userData 2.string flowNo 3.int appID 4.string formHtml 5.string formData 6.string formUrl |
Dynamic-> { status = ? flowID = ? } |
获取当前步骤信息 |
GetCurrentStepInfo |
1.string userData 2.int approvalID = 0 3.int? flowID = 0 4.int? appID = 0 |
Dynamic -> { status = ? stepData =? isBack = ? isTurnRead =? isTurnRead=? isTurnDo = ? }; |
获取审批参与者 |
FindFlowApprovers |
1.string userData 2.int flowID 3.int approvalID 4. int appID 5. string toNodeID = "" |
Dynamic ->{ status = ? data = ? } |
获取审批意见 |
GetApprovalOpinions |
|
Dynamic -> { data = ? } |
获取下个节点(所有) |
GetNextFlowNodes |
1.int flowID 2.int appID 3.int approvalID |
Dynamic -> { status = ? data = ? } |
获取决策方案 |
GetFlowDecisionModes |
|
Dynamic -> { status = ? data = ? } |
流转主要功能接口 |
FlowAction |
1.string userData 2.string actionType 3.int stateID 4.int approvalID 5.int appID; 6.bool isPass 7.string opinion 8.string formName 9.string participantJson 10.string participantValue 11.int level 12.int turnToDoID = 0 |
Dynamic -> { status = ? data = ? } |
获取待阅 列表数据 |
GetTurnToReadPageList |
1.string userData 2.int page 3.int pagesize 4.int isRead 5.string where |
Dynamic->JsonData |
查找传阅参与者 |
FindFlowTurnToReaders |
1.string userData, 2.int flowID, 3.string nodeID |
Dynamic -> { status = ?, data = ? } |
浏览传阅表单 |
ReadApprovalForm |
1.tring userData 2.int approvalID |
Dynamic -> { status = ? } |
获取传阅数据 |
GetTurnToReadList |
int stateID |
Dynamic->JsonData |
获取代办参与者数据 |
FindFlowTurnToApprovers |
|
Dynamic -> { status = ?, data=? } |
获取代办数据 |
GetTurnToDoPageList |
1.string userData 2.int pag 3.int pagesize 4.int isOver 5.string where |
Dynamic->JsonData |
获取流程图流转标记 |
GetFlowElementMarked |
1.int flowID 2. int appID |
Dynamic -> { status = ?, data=? } |
第三步骤 signalr对接
...........
第三方系统平台如何对接gooflow2.0的更多相关文章
- 与第三方系统对接,生成Cloud出入库单据
案例: Cloud的采购订单同步到第三方系统,第三方系统入库后同步生成Cloud采购入库单. 解决方案:调用采购订单的下推API,先生成保存状态的采购入库单(采购入库单中的仓库是必填项,可以在采购订单 ...
- GitHub开源:升讯威微信营销系统(第三方微信平台)完整源代码
GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction 升讯威微信营销系统开发实践系列升讯威微信营销系统开发实践:(1)功能设计与架构设 ...
- iot平台异构对接文档
iot平台异构对接文档 准备工作 平台提供的XAgent开发指南.pdf demo程序xagent-ptp-demo 平台上添加产品得到产品id和key 部署时需要插件的基础程序<xlink-x ...
- 第三方系统打开EAFC的实现
前言:EAFC是我们公司的一个框架,一个项目上,客户的OA系统要调用我们推送过去的代办任务,希望能打开我们的代办处理界面,我们的代办处理界面是winform的.引出给出了以下的一个方案.在此备存. - ...
- 一步步实现windows版ijkplayer系列文章之一——Windows10平台编译ffmpeg 4.0.2,生成ffplay
一步步实现windows版ijkplayer系列文章之一--Windows10平台编译ffmpeg 4.0.2,生成ffplay 一步步实现windows版ijkplayer系列文章之二--Ijkpl ...
- java 调用第三方系统时的连接代码-记录
前言:该文章主要是总结我在实际工作中遇到的问题,在调取第三方系统的时候出现的问题,算自己的总结.各位博友如果有什么建议或意见欢迎留言指正. 先将准备传入参数 再与第三方系统建立连接 再第三方系统处理后 ...
- Java 后台请求第三方系统接口详解
//调用第三方系统接口 PrintWriter out = null; BufferedReader in = null; JSONObject jsonObject = null; Closeabl ...
- 5G和AI机器人平台为工业4.0和无人机提供服务
5G和AI机器人平台为工业4.0和无人机提供服务 Qualcomm 5G and AI robotics platform delivers for Industry 4.0 and drones 高 ...
- 微信公众平台开发—利用OAuth2.0获取微信用户基本信息
在借鉴前两篇获取微信用户基本信息的基础下,本人也总结整理了一些个人笔记:如何通过OAuth2.0获取微信用户信息 1.首先在某微信平台下配置OAuth2.0授权回调页面: 2.通过appid构造url ...
随机推荐
- POJ2001Shortest Prefixes(Trie树)
传送门 题目大意:求最短唯一前缀 题解:Trie树 把单词一个个插入,每个字母节点v[]++;然后输出时输出到v[]为1的点, v[]=1说明只有这个单词经过. 代码 : #include<io ...
- 时间time()和$_SERVER['REQUEST_TIME']
文件ab1.php <?phpforeach($i=0;$i<1000;$i++){ echo $time();} 结果: 文件ab2.php <?php foreach($i=0; ...
- spring cloud 2.x版本 Sleuth+Zipkin分布式链路追踪
前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 本文基于前两篇文章eureka-server.eureka-client.eureka ...
- 源码学习之Spring (系统架构简单解析)
Spring Framework 系统架构总览图 Spring Framework的模块依赖关系图 Spring Framework各个模块功能说明 Spring核心模块 模块名称 主要功能 Spri ...
- C# Task ContinueWith
static void Main(string[] args) { Task firstTask = Task.Run(() => { PrintPlus(); }); Task secondT ...
- git clone: HTTP Basic: Access denied 错误
git clone 报 HTTP Basic: Access denied 错误 解决方案: 1. 如果账号密码有变动 用这个命令 git config –-system –-unset creden ...
- python基础(22):模块、包
1. 模块 1.1 什么是模块 别人写好的函数.变量.方法放在一个文件里 (这个文件可以被我们直接使用)这个文件就是个模块 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模 ...
- java基础第十九篇之Xml
1:xml的概述 1.1 xml是什么 标记语言:语言中出现了<a></a>的标签 a:HTML 超文本标记语言 (语法非常严格,不能随意的定义标签) b:XML 可扩展的标记 ...
- 马蜂窝 iOS App 启动治理:回归用户体验
增长.活跃.留存是移动 App 的常见核心指标,直接反映一款 App 甚至一个互联网公司运行的健康程度和发展动能.启动流程的体验决定了用户的第一印象,在一定程度上影响了用户活跃度和留存率.因此,确保启 ...
- MySqlBulkLoader 中文乱码
MySQL驱动:MySqlConnector GitHub地址:https://github.com/mysql-net/MySqlConnector.git 文档地址:https://mysql-n ...