第一步,参与者数据源配置

目前提供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

  1. int flowID
  2. int appID

Dynamic ->

{

data = ?

}

获取下个节点(所有)

GetNextFlowNodes

1.int flowID

2.int appID

3.int approvalID

Dynamic ->

{

status = ?

data = ?

}

获取决策方案

GetFlowDecisionModes

  1. int flowID
  2. int appID
  3. int approvalID

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

  1. string userData
  2. int flowID
  3. string nodeID

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的更多相关文章

  1. 与第三方系统对接,生成Cloud出入库单据

    案例: Cloud的采购订单同步到第三方系统,第三方系统入库后同步生成Cloud采购入库单. 解决方案:调用采购订单的下推API,先生成保存状态的采购入库单(采购入库单中的仓库是必填项,可以在采购订单 ...

  2. GitHub开源:升讯威微信营销系统(第三方微信平台)完整源代码

    GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction 升讯威微信营销系统开发实践系列升讯威微信营销系统开发实践:(1)功能设计与架构设 ...

  3. iot平台异构对接文档

    iot平台异构对接文档 准备工作 平台提供的XAgent开发指南.pdf demo程序xagent-ptp-demo 平台上添加产品得到产品id和key 部署时需要插件的基础程序<xlink-x ...

  4. 第三方系统打开EAFC的实现

    前言:EAFC是我们公司的一个框架,一个项目上,客户的OA系统要调用我们推送过去的代办任务,希望能打开我们的代办处理界面,我们的代办处理界面是winform的.引出给出了以下的一个方案.在此备存. - ...

  5. 一步步实现windows版ijkplayer系列文章之一——Windows10平台编译ffmpeg 4.0.2,生成ffplay

    一步步实现windows版ijkplayer系列文章之一--Windows10平台编译ffmpeg 4.0.2,生成ffplay 一步步实现windows版ijkplayer系列文章之二--Ijkpl ...

  6. java 调用第三方系统时的连接代码-记录

    前言:该文章主要是总结我在实际工作中遇到的问题,在调取第三方系统的时候出现的问题,算自己的总结.各位博友如果有什么建议或意见欢迎留言指正. 先将准备传入参数 再与第三方系统建立连接 再第三方系统处理后 ...

  7. Java 后台请求第三方系统接口详解

    //调用第三方系统接口 PrintWriter out = null; BufferedReader in = null; JSONObject jsonObject = null; Closeabl ...

  8. 5G和AI机器人平台为工业4.0和无人机提供服务

    5G和AI机器人平台为工业4.0和无人机提供服务 Qualcomm 5G and AI robotics platform delivers for Industry 4.0 and drones 高 ...

  9. 微信公众平台开发—利用OAuth2.0获取微信用户基本信息

    在借鉴前两篇获取微信用户基本信息的基础下,本人也总结整理了一些个人笔记:如何通过OAuth2.0获取微信用户信息 1.首先在某微信平台下配置OAuth2.0授权回调页面: 2.通过appid构造url ...

随机推荐

  1. 使用Runtime的hook技术为tableView实现一个空白缺省页

    一.介绍 UITableView和UICollectionView是iOS开发最常用的控件,也是必不可少的控件,这两个控件基本能实现各种各样的界面样式. 它们都是通过代理模式监测数据源的有无对数据进行 ...

  2. python的__future__模块

    一.概述 Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动.有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了.从Python 2.7到P ...

  3. PHP 的异步并行和协程 C 扩展 Swoole (附链接)

    PHP的异步.并行.高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列, ...

  4. ubuntu 16.04上源码编译和安装cgal并编写CMakeLists.txt | compile and install cgal on ubuntu 16.04

    本文首发于个人博客https://kezunlin.me/post/39ab7ed9/,欢迎阅读最新内容! compile and install cgal on ubuntu 16.04 Guide ...

  5. jenkins支持git分支发布

    https://blog.csdn.net/wc1695040842/article/details/102228804 核心就是需要安装一个Git Parameter 的插件结合使用. 如果同时有多 ...

  6. mosquitto配置文件

    #配置文件为mosquitto #参见mosquitto.conf(5)了解更多信息. #显示默认值,取消注释以更改. #使用#字符来表示注释,但只有当它是 #第一个字符就行了. #========= ...

  7. 简单的计时器 (倒计时)--html Demo

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content ...

  8. Python爬取十四万条书籍信息告诉你哪本网络小说更好看

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: TM0831 PS:如有需要Python学习资料的小伙伴可以加点击 ...

  9. JQuery的介绍及选择器

    1.什么是JQuery. JavaScript开发的过程中,处理浏览器的兼容很复杂而且很耗时,于是一些封装了这些操作的库应运而生.这些库还会把一些常用的代码进行封装. 把一些常用到的方法写到一个单独的 ...

  10. JDK1.8新特性——使用新的方式遍历集合

    JDK1.8新特性——使用新的方式遍历集合 摘要:本文主要学习了在JDK1.8中新增的遍历集合的方式. 遍历List 方法: default void forEach(Consumer<? su ...