`
eworkflow
  • 浏览: 221160 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

web工作流管理系统开发之十二 同一张表单在流程多节点中流转的权限控件

阅读更多

以前写过一篇  表单权限与流程的权限控制;文章,没有具体的去实现,实践证明,同一张表单在多流程节点中流转,是工作流和电子表单必须要处理的问题。

 

工作流系统和电子表单相结合,达到同一张表单在流程的各个节点中的权限不同。

 

例如一张表单包含,录入部分信息,审核部分信息;

 

当表单在录入的时候,需要将审核部分信息全部屏蔽

当上级审核时,录入部分的信息需要只读,只能填写审核部分;

当审核完成后,所有的信息都变成只读,不能再修改了。

 

所有这些节点调用同一张电子表单来实现,则需要根据人员角色的不通,表单中各控件分别设置为 只读, 禁用,隐藏;通过设置控件的这些属性达到各人员角色的不通访问权限;

 

但是单有这一层控制还是不够的,还需要设置控件在流程的各节点的权限,通过设置控件在指定流程的各个动作节点的访问权限,来达到控件在流程的某个节点的 只读,禁用,隐藏

 

只读 对应  readonly
禁用 对应  disabled="true";
隐藏 对应  display = "none"


实现的过程:
1、在电子表单制作的时候,各个控件属性页中,设置控件的权限:分 设置用户,设置角色,设置群组,设置流程节点;
如下图:



 


2、设置完成的控件权限属性(带控件id)会生成一个xml的格式串,保存在电子表单中。

     xml格式如下:

 <record id='text3' controltype='text'>
   <user value='USR_0000001'>
     <name>李明</name>
     <readonly>true</readonly>
     <disabled>false</disabled>
     <display>false</display>
   </user>
   <role value='ROL_0000001'>
     <name>普通职员</name>
     <readonly>true</readonly>
     <disabled>false</disabled>
     <display>false</display>
   </role>
 </record>

 

   record根结点下可包含4种字节点,<user> <role> <group> <flow>

   user role group节点的机构相同,flow节点,多几个wf_name,wf_version,action_id节点属性

 flow节点格式:<flow wf_name='xx' wf_version='x' action_id='xxx'><name>actionname</name><readonly>true</readonly><disabled>false</disabled><display>false</display></flow>   

 

3、当电子表单打开的时候,打开表单之前会执行一个后台事件,装入表单中的权限xml串,分析xml串,并按html控件节点生成好html控件的属性字符串,返回到页面上,作用于html的控件节点,达到html的控件节点的 ,只读,禁用,或隐藏 等属性。

(后台的java 代码位于:cn.com.fcsoft.report.ext.EformRole.java 

   public String roleCheck(HttpServletRequest req) throws UserException;


 分析xml串,生成html控件节点的属性过程:
 
 1).先分析设置的用户权限,然后分析角色,再分析群组;如果用户的应用系统有扩展的功能,如增加岗位等属性,需要在此再添加分析岗位的代码;
 2).再分析被当前用户代理的人权限;一个用户可能代理多个人执行业务,所以此处循环分析各被代理人的权限;也是按被代理人用户,角色,群组等 分析;注:如果有某被代理人无权限分析结果html控件的属性字符串返回,则表示某被代理人有此控件的所有权限,在清空所有的html控件权限属性串,跳出循环。
 
 3).最后分析流程的节点权限,获取流程的英文名和版本号,动作id,分析在此流程节点,是否有操作权限,返回控件的html属性权限串。
 
 4).返回分析到的html属性权限串到电子表单,加载html控件的属性,达到控件的只读,禁用,隐藏 等功能。

 

 

和应用系统集成的时候,如果这些权限的设置还不能满足用户的需求,需要做更多个性化的定制时候,还可以做更多的功能扩展:

点击电子表单中的  权限设置 按钮,调用的代码位于:ebsys/fceformext/js/userfunc.js文件

 

/**
* 打开表单元素权限设置窗口 added by liuxr at 2008-3-14
* 此函数在属性窗口的权限设置按钮的点击事件上调用
**/
function EformActionButtonClick()
{

......
}

 

当表单打开的时候,首先调用位于ebsys/fceformext/js/userfunc.js文件

/**
*页面运行时表单元素的权限检查 added by liuxr at 2008-3-14
* 此函数在表单打开事件中调用,也可以在自己需要时调用
**/
function EformCheckRoleInfo()
{

......

}
此函数中利用ajax提交到后台,触发后台的表单打开事件:

cn.com.fcsoft.report.ext.EformRole.java 

   public String roleCheck(HttpServletRequest req) throws UserException;

 

将生成的html控件的权限属性串,返回到页面,作用于页面的控件。

 

 

 

相关链接:

web工作流管理系统开发之一 工作流概念

web工作流管理系统开发之二 工作流引擎
web工作流管理系统开发之三 可视化流程设计器
web工作流管理系统开发之四 集成工作流与自定义表单
web工作流管理系统开发之五 开源osworkflow之用户系统改造

web工作流管理系统开发之六 表单权限与流程的权限控制

web工作流管理系统开发之七 最新修改的版本下载 

web工作流管理系统开发之八 开源osworkflow之任务管理 

 

web工作流管理系统开发之十 数据库连接及事务设定

web工作流管理系统开发之十一 流程数据与业务数据的交互

web工作流管理系统开发之十二 同一张表单在流程多节点中流转的权限控件

 

2
0
分享到:
评论

相关推荐

    一个C#+ASP.NET+XML开发的WEB工作流程图组件源码

    在本项目中,XML可能被用来存储和序列化工作流程的配置信息,如节点定义、连接关系、工作流状态等,使得这些信息可以跨应用程序和平台共享。 工作流程图组件的核心功能包括: 1. **节点管理**:组件应能创建、编辑...

    SunFlow工作流用户手册

    在SunFlow工作流管理系统中,涉及到多个专业术语,这些术语是理解和使用该系统的基础: - **工作流(Workflow)**:指一组自动化步骤,用于处理文档、信息或任务的过程。 - **活动(Activity)**:工作流中的一个...

    工作流管理系统FlowShop使用说明V10.doc

    ### 工作流管理系统FlowShop使用说明V10知识点概览 #### FlowShop功能介绍 - **开发目的**: FlowShop旨在解决系统开发过程中常见的问题,比如确保开发规范的一致性、有效协调各开发团队的工作进度、减轻开发人员的...

    代码开发平台是什么 ,与流程引擎表单引擎什么关系?有什么优势?

    在实际应用中,例如车辆管理系统,组织结构管理系统用于人员和部门的管理,菜单权限系统控制功能访问,表单引擎处理车辆信息,流程引擎处理车辆预订流程,报表系统则提供数据分析。 低代码开发平台的优势在于其快捷...

    工作流—常见问题

    - **功能描述**:在工作流表单中,可以设置某些字段或信息在特定情况下隐藏。 - **应用场景**:适用于需要保护敏感信息不被未经授权的人访问的情况。 - **实现方法**:在表单设计阶段,为需要隐藏的信息设置权限控制...

    OA办公系统(工作流)设计文档.docx

    通过对OA办公系统(工作流)设计文档的深入解析,我们可以看到工作流模块不仅能够极大地提高企业的办公效率,还能简化复杂的业务流程管理。通过本文档提供的指南,开发人员可以快速学会如何使用广州宏天软件有限公司的...

    OA工作流概述与OA工作流实现的一点经验

    在OA系统中,工作流主要体现在业务或公文的申请、审批、会签、登记、操作等多个环节,使得整个工作过程得到记录,方便后续的查询、统计和存档。 在OA工作流实现中,有一些关键的概念需要理解: 1. 表单设计:表单...

    通达OA工作流使用说明

    随着现代企业信息化建设的推进,工作流管理系统(Workflow Management System, WfMS)已成为提高组织内部协同工作效率的重要工具之一。通达OA系统的工作流模块旨在通过信息技术手段规范企业的各项流程,提升工作效率...

    项目工作流

    【项目工作流】是IT行业中一个重要的...综上所述,项目工作流的实施涉及到多个层面,包括流程设计、存储过程编写、权限管理和表单开发,这些都需要细致的规划和严谨的编程实践,以确保工作的高效流转和数据的安全性。

    宝信信息系统平台iPlat4j中级培训-工作流

    在宝信信息系统平台iPlat4j中级培训中,“工作流”是核心学习内容之一。工作流是一种将业务过程部分或全部自动化的方法,通过软件支持来执行业务流程,提高效率和准确性。在iPlat4j平台中,工作流不仅包括流程的设计...

    基于asp.net+C#开发的superflow工作流平台V5.8-20130417

    Superflow工作流平台是一款基于ASP.NET和C#技术构建的高效、灵活的工作流程管理系统。该平台V5.8-20130417版本发布于2013年4月17日,旨在帮助企业或组织实现自动化的工作流程,提高工作效率,降低运营成本。通过此...

    通达OA2009工作流使用详解

    通达OA2009是一款广泛应用的企业协同办公系统,其工作流模块是系统的核心功能之一,主要用于实现企业内部的各种审批流程自动化。本文将深入解析通达OA2009的工作流使用,帮助用户更好地理解和应用。 ### 概念篇 ...

    sample-project.rar

    在现代企业信息化建设中,工作流管理系统扮演着至关重要的角色,它能够规范业务流程,提高工作效率。本文将深入探讨一个基于Activiti 6开发的微服务工作流系统,该系统集成了模型编辑器和表单设计器,提供了一站式的...

    毕业论文asp.net340工作流程审批系统.doc

    工作流程审批系统的开发有效提升了工作效率,简化了审批流程,降低了管理成本。该系统在实际应用中表现出良好的稳定性和实用性,具有较高的推广价值。 10. 致谢 对指导教师、团队成员及在项目开发过程中给予支持的...

    电子政务平台方案.docx

    工作流管理是电子政务平台中不可或缺的一环,它实现了政务活动的自动化流转。通过工作流管理,可以将复杂的审批流程进行数字化,减少人为错误,提高工作效率。 1.1.2 可视化流程编辑器 可视化流程编辑器允许用户...

    工作流working.zip

    在本项目中,"工作流working.zip"是一个包含资源的压缩包,其核心目标是实现一个仿钉钉的流程图制作工具。这个工具最初基于Vue.js框架构建,但经过改造后,改用jQuery和Bootstrap来完成。以下是关于这个项目的一些...

    电子政务平台建设方案(共106页).doc

    工作流管理是平台的核心功能之一,它涉及到政府业务的审批流程自动化。通过工作流引擎,可以实现任务的自动分配、流转和监控,提高办公效率。 1.1.2 可视化流程编辑器 该编辑器允许用户通过图形界面设计和定制流程...

    WorkFlow

    - **数据管理**:处理流程中的数据流转。 - **消息监听**:监控流程事件。 - **日志与报表**:记录操作日志和生成报告。 - **组织结构与权限控制**:维护组织架构和用户权限。 - **引擎启动与关闭**:控制系统...

    力软learun最新 7.06全视频教程

    6. **工作流设计**:教学如何设计和配置工作流,包括任务节点、流转规则和审批策略。 7. **权限配置**:指导如何设置用户角色和权限,确保系统的安全运行。 8. **报表设计与发布**:演示如何设计报表,包括数据源...

    K3Cloud插件开发全套教程.rar

    5. **流程与审批节点**:K3Cloud支持工作流管理,开发者可以通过BOS构建复杂的业务流程,设置审批节点,实现自动化业务流转。 6. **事件驱动编程**:金蝶BOS支持事件驱动机制,开发者可以注册监听器,捕捉系统中的...

Global site tag (gtag.js) - Google Analytics