基于.Net工作流的公务出差审批系统的实现

2022-02-14 20:02李毅王新军李振王飞超
科技创新导报 2022年20期
关键词:热备双机公务

李毅 王新军 李振 王飞超

(1.山东省计量科学研究院 山东济南 250014;2.齐鲁师范学院 山东济南 250200)

随着计算机、数据库、网络与通信等现代信息技术的飞速发展,极大地改变了传统的管理体制和机制。计量技术机构利用信息化技术加强管理的要求越来越高,而公务出差的信息化管理在机构管理体系中是不可或缺的,如何用信息化的手段管理公务出差审批流程,实时跟踪每一条审批进度,从而提高办公效率,实现无纸化办公,建立电子化档案,达到数字化计量的目标,具有重要的现实意义。本文就对如何实现这个目标进行了详细的分析和研究。

1 系统应用技术分析

1.1.Net工作流

.Net工作流引擎问世以来,经过多年的发展,它已经成为应用系统重要的一部分,目前的应用范围也相当宽泛,不仅包括流程管理,甚至还有助于解决算法流程控制等。它主要包括数据模型和控制模型两大部分,可以分为嵌入式和非嵌入式两种类型。其目的是通过将任务分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控[1],从而可以规范工作流程,极大地提高工作效率,节省单位运行成本。

1.2 Ofiice VBA

VBA 是Visual Basic for Applications 的简称,是微软公司在1993年发布的一种通用的自动化编程语言,它的主要功能是用来拓展人们日常办公软件的各种功能,它基于VB,是指VBA 中的编程规范要符合VB 的语法要求,但VBA 中的已有自己独有的各种对象,而不是所有VB 都有的。Office VBA 编程能够使文档的编辑工作自动化[2],从而提高文档的使用效率。本系统采用VBA技术,结合Office内部自带的书签、窗体域等工具,来实现文档中的签名、审批意见、审批日期等数据信息的在线自动生成功能。

1.3 双机热备

公务出差系统里包含大量重要的、敏感的业务数据,所以如何保证数据的安全性和系统的稳定性是一个需要认真考虑的问题。本系统采用双机热备的方式进行部署,双机热备具有实时数据热备、迅速找回丢失的数据、实时异地容灾、数据完整复制等功能。双机热备按照工作方式进行分类,可以分为磁盘阵列方式、全冗余方式和复制方式3 种类型[3]。目前应用最广、最标准的方案是第一种,即基于磁盘阵列的双机热备。双机热备的工作原理主要包含心跳工作过程和IP 工作过程两个方面,主机和备机之间通过IP 做心跳检测,通过一定的心跳路径,发出周期性的相互检测的数据包,如果一旦主机出现系统故障,备机在连续丢失相应数量的检测包后,认为主机发生了故障,这时备机会自动启动相关的服务,完成双机热备容错的切换工作。

2 系统的整体结构

2.1 系统整体框架

根据实际需求调研,公务出差审批主要包括出差申请、出差审批、出差确认、出差报销、出差归档、出差查阅等六大模块。本系统将审批流程设计成一个通用的工作流,然后从系统中单独提取出来,作为一个核心工作模块,此模块主要包括流程启动、流程调度、流程审批等功能。具体实现原理是通过创建流程实例、管理流程清单、执行流程步骤及实时监控工作流的各种运行状态来实现流程的平稳运行[4]。其中各模块的组成部分有信息输入模块、工作流执行模块、信息输出模块等。各个模块的基本信息在工作流模块之间高效地传递,每一级流程信息的输入为上一级流程信息的输出,各种信息相互关联,紧密联系,从而实现了数据共享功能,使得系统审批流程更加清晰、高效,同时极大地方便了系统的后期升级。系统审批流程如图1所示。

图1 公务出差审批流程示意图

2.2 工作流模块框架

为了使用户能够自由、便捷地配置流程信息,本系统采用了表单信息填写驱动流程的工作流设计方案。工作流服务器由可视化的工作流构造器、工作流解释器及组件库等三部分组成。Web服务器在接收到客户端发送的出差申请或者审批信息后,将客户端提交的请求信息,根据自定义表单模型解析并持久化后,将处理后的数据传递给工作流引擎服务器[5]。工作流引擎获取控制流需要的表单数据,然后根据执行结果和相应规则,执行审批流程的调度,并生成任务列表,任务列表再根据相应的操作选择触发事件来调用相应的处理流程。工作流模块如图2所示。

图2 工作流示意图

3 系统的实现

通过网上公务出差审批系统,院领导和员工能够实时跟踪每一条申请记录的相关审批和办理进度,查阅全院及个人的出差统计和明细数据,审阅相关的公务出差调研报告及其他附件信息,并根据审批情况和汇总统计结果及时沟通反馈。出差人员登录系统,进入出差申请填报界面,填写出差日期、地点、单位和住宿等信息并提交后,该申请将自动进入待领导审批环节,按照系统预先设定的工作流程和审批条件,流转至相关部门审批或者确认、报销,由相关人员在线进行数据和流程处理,并自动生成电子签名和签名日期,按照审批流程各级部门审批完成后,相关人员可以打印、归档、查阅及统计汇总数据和各业务部门的公务出差申请情况。系统分为以下几部分。

3.1 用户信息管理模块

本模块主要管理系统的登录用户相关信息,如姓名、性别、籍贯、所属部门,给登录用户分配相应的用户名、密码、电子签名等。

3.2 角色权限设置模块

本模块主要服务于系统管理员。管理员配置出差审批系统的全部角色,定义每个角色所对应的菜单权限和数据权限,再将角色分配给每一个登录用户,从而控制各个登录用户的申请、审批、确认、查询、打印、统计及归档等权限。

3.3 流程定义及控制模块

在流程定义模块中,工作流有过程、活动及工作项等3种对象,每个对象的工作状态是各不相同的,各个对象的状态跃迁在相互之间进行影响。具体来说,工作流引擎就类似一台有限的状态机,工作流对象的瞬时状态在有限机中占据了大部分内容,而且对象状态之间的变迁也会相互影响,各个对象及其状态就组成了公务出差审批系统的流程定义清单。工作流过程实例状态变化设计如图3所示。

图3 过程实例状态图

其中,工作流控制模块的主要作用是,在工作流中各种活动的串行或并行执行过程中,引导业务流程按照预先设定的方向进行流转,从而实现业务流程的事务性处理,如果活动在执行过程中出现了异常状态,将及时进行挂起或者关闭处理。在公务出差审批系统中,主要使用了串行控制策略[6]。任务执行者从新建的公务出差Web页面中,获取流程定义清单,选择相应的流程,从而进入启动流程的Web 页面,输入文件编号、备注等信息后,点击提交按钮,流程启动。流程控制的序列图如图4所示。

图4 流程控制序列图

本模块运用图形化设计工具,对工作流中的流程进行定义,并对控制模块进行了设计,同时定义了公务出差申请的模板及其对应的审批流程和入口条件,确定执行各项审批任务的角色、人员以及相应的审批动作,对有分支的审批流程,则同样设置相应的审批条件。系统审批流程设计界面如5所示。

3.4 统计查询模块

本模块主要用来统计查询所有的公务出差的实时状态,并及时跟踪审批进度。

4 结语

本系统采用了跨平台的开发语言,集成了先进的技术架构,充分保证了系统的运行稳定性、数据安全性和流程规范性,并紧密集成到省级法定检定机构的综合办公系统中,实现了公务出差的网上申请、审批、打印、归档及查阅等功能,极大地提高了工作效率,节省了办公的费用,解决了多园区审批流程慢、效率低的问题。本系统采用双机热备的方式进行部署,保证了数据安全可靠地运行,在实际使用中获得了良好的应用效果。

图5 审批流程设计界面

猜你喜欢
热备双机公务
乌程汉简 公务简选
热备动车组配置方案优化模型
东海区实时海洋观测数据库双机热备系统解决方案
双机、双桨轴系下水前的安装工艺
双机牵引ZDJ9道岔不同步问题的处理
Loader轴在双机桁架机械手上的应用
八项规定精神
———公务接待
妨害公务罪谨防滥用
妨害公务案件的侦查要领和证据收集要求
热备冗余技术在焦化设备上的应用