麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

.net之工作流工程展示及代碼分享(二)工作流引擎

2019-11-17 02:01:13
字體:
來源:轉載
供稿:網友

.net之工作流工程展示及代碼分享(二)工作流引擎

在介紹完表單類的時候,接下來介紹工作流引擎,主要由四個類組成,分別是流程、流程步驟、流程實例、流程步驟實例類。

流程類:

 1     [Serializable] 2     public class Flow 3     { 4         [xmlAttribute] 5         public Guid FlowId { get; set; } 6         [XmlAttribute] 7         public string FlowName { get; set; } 8         public List<FlowStep> FlowSteps { get; set; } 9         [XmlAttribute]10         public string FlowCategory { get; set; }11         [XmlAttribute]12         public bool Enabled { get; set; }13         [XmlAttribute]14         public DateTime CreateDate { get; set; }15         public Person Creator { get; set; }16         17         public DateTime? CanRequestDateStart { get; set; }18         19         public DateTime? CanRequestDateEnd { get; set; }20 21         public string CreaterName22         {23             get24             {25                 if(Creator!=null)26                 return Creator.PersonName;27                 return string.Empty;28             }29         }30         [XmlAttribute]31         public Guid FormId { get; set; }32         [XmlAttribute]33         public string FormName { get; set; }34         public WorkflowConstant.accessMode AccessMode { get; set; }35         [XmlAttribute]36         public short PeriodTime { get; set; }37         [XmlAttribute]38         public string RequestRights { get; set; }39         [XmlAttribute]40         public string RequestGroup { get; set; }41         public string AccessModeDesc42         {43             get44             {45                 switch (RequestRights)46                 {47                     case "-不限-":48                         return "所有人";49                     default:50                         return RequestRights+": ";51                 }52             }53         }54 55         [XmlAttribute]56         public string RoleGroups {57             get58             {59                 if (!string.IsNullOrEmpty(RequestGroup))60                 {61                     return string.Join("、", RequestGroup.Split(',').Select(g => g.Split('|')[0]));62                 }63                 else64                 {65                     return string.Empty;66                 }67             } 68         }69     }
View Code

流程步驟類:

 1     [Serializable] 2     public class FlowStep 3     { 4         [XmlAttribute] 5         public Guid StepId { get; set; } 6         [XmlAttribute] 7         public Guid PReviousStepId { get; set; } 8         [XmlAttribute] 9         public Guid NextStepId { get; set; }10         [XmlAttribute]11         public int SequenceId { get; set; }12         [XmlAttribute]13         public string StepName { get; set; }14         [XmlAttribute]15         public string RightGroupTitle { get; set; }16         public List<Guid> CanWriteFormContolIds { get; set; }17         [XmlAttribute]18         public bool CanReturnToPreviousStep { get; set; }19         [XmlAttribute]20         public bool CanReturnToFirstStep { get; set; }21         [XmlAttribute]22         public bool AllowSelectAuditor { get; set; }23         public WorkflowConstant.CounterSignatureMode CounterSignatureMode { get; set; }24         [XmlAttribute]25         public bool IsStartStep { get; set; }26         [XmlAttribute]27         public bool IsLastStep { get; set; }28         [XmlAttribute]29         public bool CanUploadFile { get; set; }30         [XmlAttribute]31         public bool MustUploadFile { get; set; }32         [XmlAttribute]33         public int UploadFileCount { get; set; }34     }
View Code

流程實例類:

 1    [Serializable] 2     public class FlowInstance 3     { 4         [XmlAttribute] 5         public Guid FlowInstantId { get; set; } 6         public Flow Flow { get; set; } 7          8         public List<FlowInstanceStep> FlowStepInstances { get; set; }  9         public Person Creator { get; set; }10         [XmlAttribute]11         public DateTime CreateDate { get; set; }12         [XmlAttribute]13         public DateTime LastDealDate { get; set; }14         [XmlAttribute]15         public WorkflowConstant.SignatureStatus FlowStatus { get; set; }16 17         public string FlowStatusName18         {19             get20             {21                 switch (FlowStatus)22                 {23                     case WorkflowConstant.SignatureStatus.Start:24                         return "進行中";25                         break;26                     case WorkflowConstant.SignatureStatus.Undeal:27                         return "未處理";28                         break;29                     case WorkflowConstant.SignatureStatus.PartialPassed:30                         return "部分通過";31                         break;32                     case WorkflowConstant.SignatureStatus.Passed:33                         return "通過";34                         break;35                     case WorkflowConstant.SignatureStatus.OutDated:36                         return "過期";37                         break;38                     case WorkflowConstant.SignatureStatus.Canceled:39                         return "取消";40                         break;41                     case WorkflowConstant.SignatureStatus.RejectToPreviousStep:42                         return "退回上一步";43                         break;44                     case WorkflowConstant.SignatureStatus.RejectToFirstStep:45                         return "退回第一步";46                         break;47                     case WorkflowConstant.SignatureStatus.Stopped:48                         return "停止";49                         break;50                     case WorkflowConstant.SignatureStatus.Finish:51                         return "結束";52                         break;53                     default:54                         return string.Empty;55                 }56             }57         }58 59         public DateTime? EndDate60         {61             get62             {63                 if (Flow != null)64                 {65                     return CreateDate.AddDays(Flow.PeriodTime);66                 }67                 else return null;68             }69         }70 71         public string CurrentStepDisplayName { get; set; }72     }
View Code

流程步驟實例類:

 1     [Serializable] 2     public class FlowInstanceStep 3     { 4         [XmlAttribute] 5         public Guid StepInstanceId { get; set; } 6         public List<WorkflowPersonSignature> PersonSignatures { get; set; } 7  8         public SerializableDictionary<Guid, string> WriteValues { get; set; } 9
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 男女无遮挡羞羞视频 | 爱爱视频天天干 | 国产精品区一区二区三区 | 成人福利在线免费观看 | 欧美爱爱视频免费看 | 欧美亚洲综合在线 | 午夜精品视频免费观看 | 国产欧美日韩视频在线观看 | 国产精品成人av片免费看最爱 | 日韩精品中文字幕一区 | 国内精品视频饥渴少妇在线播放 | 第一区免费在线观看 | 最新av在线免费观看 | 亚欧美一区二区 | 成人 在线 | 色播亚洲| 国产99精品视频 | 国产精品免费一区二区三区四区 | 婷婷久久综合九色综合色多多蜜臀 | 国产一级一国产一级毛片 | 日本在线播放一区二区三区 | 国产午夜精品一区二区三区四区 | 免费观看三级毛片 | 欧美a级毛片 | 国产午夜免费视频 | 99在线啪 | 精品国产一区二区三区四区阿崩 | 夜添久久精品亚洲国产精品 | 黑人操穴 | 久色免费视频 | 国产亚洲欧美一区久久久在 | cosplay裸体福利写真 | 国产精品视频一区二区三区四区国 | 国产成人自拍小视频 | 国产美女做爰免费视 | 黄色男女视频 | 中文字幕在线成人 | 毛片视频网站在线观看 | 久久中文字幕在线观看 | 黄色一级电影网 | 国产一级在线免费观看 |