zoukankan      html  css  js  c++  java
  • 工作流

    概述

         简单点说就是对流程中的任务以不同的逻辑或者规则串联起来。其本质就是实现一个流程状态的持久化。

    为什么要使用工作流

         系统将把工作流发挥到极致,比如审批、表务工单管理等都将使用工作流引擎。使用工作流引擎后,企业员工只需将精力集中在处理自己关心的数据上,从而缩短了业务的处理周期,达到提高劳动生产率的目的。

    实现方式

         最初我们使用K2进行工作流开发,中间也使用过微软dotnet自带的WF技术。但本系统将使用公司自己开发的工作流引擎进行工作流开发。下面介绍下一些基本的操作方法:

    1.启动流程

            /// <summary>
            
    /// 启动流程,保存项目基本信息
            
    /// </summary>
            
    /// <param name="projectinfo">项目基本信息实体</param>
            
    /// <param name="login">登陆信息</param>
            
    /// <param name="service">引擎流程类型</param>
            
    /// <param name="isEnd">输出是否最后一步</param>
            
    /// <param name="tran">事务</param>
            
    /// <returns>流程实例ID</returns>
            public static int Start(WF_PROJECTINFO projectinfo, LoginInfo login, Engine_Service service, out bool isEnd, OracleTransaction tran)

    当需要启动一个流程时,需调用start方法。

    2.GoToNext(流转到下一步)

            /// <summary>
            
    /// 流程流转到下一步
            
    /// </summary>
            
    /// <param name="kid">流程实例ID</param>
            
    /// <param name="flowName">流程名称</param>
            
    /// <param name="buZhouBh">步骤编号</param>
            
    /// <param name="caoZuor">操作人</param>
            
    /// <param name="tran">事务</param>
            
    /// <returns>是否成功</returns>
            public static bool GoToNext(int kid, string flowName, string buZhouBh, string caoZuor, OracleTransaction tran)

    提交本步骤,使得流程流转到下一步

    3.IsSubmit方法

            /// <summary>
            
    /// 判断步骤是否已经提交
            
    /// </summary>
            
    /// <param name="kid">流程实例ID</param>
            
    /// <param name="buZhouBh">步骤编号</param>
            
    /// <returns>true:已提交;false:未提交;</returns>
            public static bool IsSubmit(int kid, string buZhouBh)

    判断步骤是否提交过

    4.GetWorkList(个人工作列表)

            /// <summary>
            
    /// 获得待处理项目列表
            
    /// </summary>
            
    /// <param name="account">操作人</param>
            
    /// <returns>待处理项目列表</returns>
            public static DataSet GetWorkList(string account)

    根据当前用户,返回个人工作列表。

  • 相关阅读:
    【Linux开发】Linux磁盘管理
    【Qt开发】QThread中的互斥、读写锁、信号量、条件变量
    【Qt开发】QThread中的互斥、读写锁、信号量、条件变量
    【Qt开发】设置中心窗口 setCentralWidget
    【Qt开发】设置中心窗口 setCentralWidget
    【Qt开发】QT样式表单 qss的样式优化
    【Qt开发】QT样式表单 qss的样式优化
    【Qt开发】foreach用法
    【Qt开发】foreach用法
    【Qt开发】设置Qt应用程序图标
  • 原文地址:https://www.cnblogs.com/zyizyizyi/p/2668747.html
Copyright © 2011-2022 走看看