Java工作流引擎-集团模式下的权限 设计与实现
- 关键字
工作流开发框架权限设计、用户组、岗位、集团模式应用. java工作流程引擎, .net 工作流引擎,工作流开发框架
- 相关的表结构
-- 相关组织-表结构。
SELECT No,Name,ParentNo FROM port_dept; -- 部门。
SELECT No,Name,Adminer,AdminerName FROM port_org; -- 组织。
-- 岗位表.
SELECT No,Name,FK_StationType, OrgNo FROM port_Station; -- 岗位。
SELECT No,Name,OrgNo FROM port_stationtype; -- 岗位类型。
SELECT FK_Dept,FK_Emp,FK_Station FROM port_deptempstation; -- 部门人员岗位。
-- 用户组表.
SELECT No,Name,FK_Team FROM port_team; -- 用户组。
SELECT No,Name FROM port_teamType; -- 用户组类型。
SELECT FK_Teamp,FK_Emp FROM port_teamEmp; -- 用户组人员。
--公文字号相关的设计.
SELECT No,Name,FK_Team FROM Doc_DocType; -- 公文类型 。FK_Team 是他的分组编号
SELECT No,Name,FK_DocType,FK_Team FROM Doc_Word; -- 公文字号。
-- 公文表。 必须有的四个字段
SELECT DocWordKey, DocWordName,DocWordYear,DocWordLSH, DowWord FROM Frm_JiTuanXingZhengShouWenJian
- 集团模式下的权限描述如下
- 整个集团的部门是一棵大树,只有一个根节点,根节点的parentNo的编号为0。部门的表的主要字段是No,Name,ParentNo,
- 组织的概念就是独立岗责体系的子公司或者单位,组织里有一个或则多个管理员。
- 集团中admin是超级管理员,admin可以把一个部门节点设置为一个组织。
- 一个二级管理员可以管理多个组织,admin也可以有多个组织的管理权限。
- 二级管理员或者admin登录后,如果有多个组织系统会让其选择要登录那个组织进行管理?
- 选择一个组织登录之后,这个管理员,仅仅可以管理本组织的流程,岗位,部门人员信息。如果要管理其他的组织信息,需要切换。
- 组织之间的权限是通过OrgNo进行隔离的。
- 每个人员登录之后,就有WebUser.No, WebUser.Name, WebUser.FK_Dept, WebUser.OrgNo 等登录信息。
- 每个流程都有适用范围,在流程属性里可以配置。一个组织的可发起的流程,是由两部分组成的+ 本组织设计的流程+其他组织设计的流程设置了适用范围的流程。
- 对于表单的权限规则参考流程的规则,也有适用范围。
- 用户组与岗位都是对人员的分组,对人员的权限划分。
- 用户组是集团的概念,仅由admin维护。
- 岗位则是每个组织都有自己的一套独立的岗责体系,由自己的组织管理员来维护的。
- 用户组,用户组类型没有OrgNo, 但是岗位,与岗位类型有。
- 用户组类型,岗位类型,都是为了方便管理员操作的方便,没有计算意义。
- 一个操作员可以有多个部门,数据存储到Port_DeptEmp,里面FK_Dept,FK_Emp两个列。
- 一个操作员在一个部门下可以有多个岗位, Port_DeptEmpStation , 列如下:FK_Dept,FK_Emp,FK_Station. 三个外键列存储。
- 操作员与用户组的关系存储在 Port_TeamEmp表里, FK_Team,FK_Emp 两个列。
- 一个操作员,有三个维度来控制,用户组、岗位、部门。
- 为了方便我们管理,我们把岗位或者用户组划分为,抽象的岗位,实际的岗位,抽象的用户组,实际的用户组。
- 比如我们把岗位划分为:部门负责人岗位,部门领导岗,信息部主任岗,信息部副主任岗。张三有部门负责人岗位,信息部主任岗。李四有部门领导岗,信息部副主任岗位。这样换分有利于我们在绑定节点岗位的时候容易处理。
- 用户组的概念是集团的admin管理员统一管理与维护的,可以下分到每个组织可以使用。在节点访问规则支持绑定用户组功能。
- 组织、部门、用户组、岗位操作界面
- 管理员登录
- 组织、部门、用户组、岗位操作界面
登录页面
选择管理的组织
登录后切换组织
- 组织(分公司)管理
- 独立组织列表
- 组织(分公司)管理
- 把一个部门设置为独立组织
- 独立组织的管理员
- 超级管理员admin的权限组,权限组类别维护
- 组织人员,岗位,用户组维护-管理
- 二级管理员(分公司)的岗位类型,岗位维护
- 其他资源
http://ccflow.org/down.htm 源代码下载
http://edu.ccflow.org/ 驰骋BPM培训中心.
http:://app.ccflow.org 应用中心.
Java工作流引擎-集团模式下的权限 设计与实现的更多相关文章
- Java工作流引擎-中间件模式代码集成
关键词:工作流快速开发平台 工作流流设计 业务流程管理 asp.net 开源工作流 bpm工作流系统 java工作流主流框架 自定义工作流引擎 表单设计器 流程设计器 前端代码集成步骤 ...
- java工作流引擎证照库类型的流程设计 实现方案与演示案例
关键词:.Net开源工作流 工作流引擎 工作流引擎常用信息存储 流程前置导航 证照库的概念&应用场景: 我们在梳理流程的时候,会发现有一些流程的发起是基于一个实体信息的. 比如:纳 ...
- Java工作流引擎节点接收人设置20种规则讲解一
关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单 拖拽式表单 工作流系统CCBPM节点访问规则接收人规则 适配数据库: o ...
- Java工作流引擎jflow对流程的结束大总结
关键字: 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 表单引擎 工作流功能说明 工作流设计 工作流快速开发平台 业务流程管理 bpm工作流系统 java工 ...
- Java工作流引擎节点接收人设置“按自定义SQL计算”系列讲解
关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单 拖拽式表单 工作流系统CCBPM节点访问规则接收人规则 适配数据库: o ...
- Java工作流引擎关于数据加密流程(MD5数据加密防篡改)
关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单 拖拽式表单 工作流系统 流程数据加密 md5 数据保密流程数据防篡改 ...
- java工作流快速开发之授权代办的设计
关键词:工作流快速开发平台 工作流流设计 业务流程管理 Java工作流引擎 asp.net 开源工作流 net开源工作流引擎 开源工作流系统 一.授权代办开发背景 应用需求:项目审批人出差无法及 ...
- Java工作流引擎的测试容器-功能-使用方法-注意事项
工作流引擎的测试容器-功能-使用方法-注意事项 关键字 Ccbpm, ccflow,jflow,工作流引擎,工作流引擎测试容器,表单引擎 功能说明 工作流的测试容器是为了解决手工模拟人工登录模式下测试 ...
- Java工作流引擎表单引擎之JS表单字段输入脚本验证
关键字: 表单设计器, 字段验证. workflow,ccform, ccBPM. 工作流快速开发平台 工作流流设计 业务流程管理 asp.net 开源工作流bpm工作流系统 java工作流 ...
随机推荐
- UTF-8 AND UTF-8 without BOM(遇到了这个问题 郁闷了会儿)
两者的区别: Unicode规范中有一个BOM的概念.BOM——Byte Order Mark,就是字节序标记.在这里找到一段关于BOM的说明: 在UCS 编码中有一个叫做"ZERO WID ...
- latex中文支持ubuntu
latex安装: sudo apt install texlive-full 中文字体安装: sudo apt-get install latex-cjk-all 字体包中包含bsmi,bk ...
- coding++:RateLimiter 限流算法之漏桶算法、令牌桶算法--简介
RateLimiter是Guava的concurrent包下的一个用于限制访问频率的类 <dependency> <groupId>com.google.guava</g ...
- ehcahe + redis 实现多级缓存
1,了解数据存储的位置的不同 数据库:存储在磁盘上 redis:存储在内存上 ehcache:应用内缓存 缓存的目的:是为了将数据从一个较慢的介质上读取出来,放到一个较快的介质上,为了下次读取的时候更 ...
- [vijos1145]小胖吃巧克力<概率dp>
题目链接:https://vijos.org/p/1145 貌似还有一个一样的题是poj1322 chocolate,两个题只是描述不一样,意思都是一样的,不贵最近貌似poj炸了,所以也没法去poj ...
- MySQL手工注入进阶篇——突破过滤危险字符问题
当我们在进行手工注入时,有时候会发现咱们构造的危险字符被过滤了,接下来,我就教大家如何解决这个问题.下面是我的实战过程.这里使用的是墨者学院的在线靶场.咱们直接开始. 第一步,判断注入点. 通过测试发 ...
- hello world: 我的博客写作思路
1. 本人计算机专业,研究生刚毕业,即将入职金融科技领域,决定借博客园平台写自己的博客,原因如下: 从小白到大白,离不开各大学习平台和技术博客的指导和分享,是时候回馈了. 借此机会整理自己从本科.研究 ...
- 从零开始,做一个简单的Vuetify项目,图标安装成功
安装Vuefity的时候,碰到一些坑,经过一番折腾,终于成功,记录正确的姿势如下: 创建一个Vue项目: vue init webpack-simple vular-admin 进入项目目录: cd ...
- Linux基础:Day04
进程管理1.操作系统基础 调用:kernel通过给应用程序提供system call方式来提供硬件资源: 注意:这个应用程序也包括库文件: 库文件是运行在ring 0上的一段程序代码,不对客户直接 ...
- 家庭记账本app进度之下拉框和数字转轮的相关应用
这次主要是悬系的下拉框Spinner和数字转轮NumberPicker的使用.先分析相关的用到的知识点. 在Android中,用string-array是一种简单的提取XML资源文件数据的方法. 例子 ...