第三方系统平台如何对接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 ...
随机推荐
- 更新GitHub项目出现There is no tracking information for the current branch. Please specify which branch you want to merge with. 怎么解决
git pull命令用于从另一个存储库或本地分支获取并集成(整合).git pull命令的作用是:取回远程主机某个分支的更新,再与本地的指定分支合并,它的完整格式稍稍有点复杂. 如果当前分支只有一个追 ...
- ASP.NET Core 获取主机名时的 "Decoded string is not a valid IDN name" 错误
在 ASP.NET Core 中通过 Request.Host.Host 获取主机名(hostname)时,如果主机名中包含非 ASCII 字符(比如 puny code),就会引发下面的异常: Sy ...
- MySQL变量介绍和用法简介
目录 一.用户变量 1.1.用户变量定义 1.2.用户变量用法 二.系统变量 2.1 系统变量简单介绍 2.2 系统变量用法简介 本博客介绍一下MySQL中变量的用法和注意细节 @ 一.用户变量 1. ...
- 08-Django模板(2)
一.HTML转义 在视图中,通过调用模板传递下文,模板对上下文的传递字符串进行输出时,会对以下字符自动转义.HTML转义的作用:转义后标记代码不会被直接解释执行,而是被直接呈现,防止客户端通过嵌入js ...
- @PostConstruct - 静态方法调用IOC容器Bean对象
需求:工具类里面引用IOC容器Bean,强迫症患者在调用工具类时喜欢用静态方法的方式而非注入的方式去调用,但是spring 不支持注解注入静态成员变量. 静态变量/类变量不是对象的属性,而是一个类的属 ...
- PHP JWT token实现
原文链接:https://www.jb51.net/article/146790.htm 机制: 代码如下: <?php /** * PHP实现jwt */ class Jw ...
- 【转】linux下使用sqlplus执行包含语句块的sql文件,运行时会不断显示行号,而在plsqldev中能执行
一.数据库:Oracle数据库 二.sql文件内容: --创建函数 CREATE OR REPLACE function fun_createuid1 return varchar2 is Resul ...
- python基础(9):基本数据类型四(set集合)、基础数据类型补充、深浅拷贝
1. 基础数据类型补充 li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"] s = "_&qu ...
- Java技巧——比较两个日期相差的天数
Java技巧——比较两个日期相差的天数 摘要:本文主要记录了在Java里面如何判断两个日期相差的天数. 判断两个Date类型的日期之间的天数 通过计算毫秒数判断: public static void ...
- Java生鲜电商平台-促销系统的架构设计与源码解析
Java生鲜电商平台-促销系统的架构设计与源码解析 说明:本文重点讲解现在流行的促销方案以及源码解析,让大家对促销,纳新有一个深入的了解与学习过程. 促销系统是电商系统另外一个比较大,也是比较复杂的系 ...