testcontrol.cs

来自「基于微软WF开发的工作流全套实例源码」· CS 代码 · 共 71 行

CS
71
字号
using System;
using System.Collections.Generic;
using System.Text;
using wxwinter.wf.SystemTable;
using System.Data;
using System.ServiceModel;

namespace wxwinter.wf.WCFCommunication
{
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
    public class testControl : ItestControl
    {
        public wxwinter.wf.SystemTable.InstanceMessage InstanceMessageTable = new wxwinter.wf.SystemTable.InstanceMessage();
        public wxwinter.wf.ExchangeService.ExternalEvent exchangeEvent;
        public wxwinter.wf.Service.EngineManager WFEM;
        public string TempletName;
        public testControl()
        {

        }
        public bool NextStep(string gid, string userResult, System.Data.DataSet dataForm, string message)
        {
            string s = string.Format("GUID='{0}' and State = '等待处理'", gid);
            System.Data.DataView v = new System.Data.DataView(InstanceMessageTable.InstanceState);
            v.RowFilter = s;
            if (v.Count != 0)
            {
                exchangeEvent.NextStep(gid, userResult, dataForm, message);
                return true;
            }
            return false;
        }

        public System.Data.DataSet GetCurrentlyTaskList(string user)
        {
            string s = string.Format("NextUserName='{0}' and State = '等待处理'", user);
            System.Data.DataView v = new System.Data.DataView(InstanceMessageTable.InstanceState);
            v.RowFilter = s;
            System.Data.DataSet ds = new System.Data.DataSet();
            ds.Tables.Add(v.ToTable("task"));
            return ds;
        }

        public System.Data.DataSet GetDataForm(string gid)
        {
            string s = string.Format("GUID='{0}' and State = '等待处理'", gid);
            System.Data.DataView v = new DataView(InstanceMessageTable.InstanceState);
            v.RowFilter = s;
            if (v.Count != 0)
            {
                InstanceMessage.InstanceStateRow r = (InstanceMessage.InstanceStateRow)v[0].Row;
                return r.DataForm;
            }
            return null;
        }
        /// <summary>
        /// 新建任务
        /// </summary>
        /// <param name="templetName">工作流模板名</param>
        /// <returns>实例ID</returns>
        public string CreateTask(string templetName)
        {
            string gid = WFEM.CreateWorkflowFromXomlFile(this.TempletName);
            WFEM.StartInstance(gid);
            return gid;
        }


    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?