public void Release(WfReleaseType releaseType)
 {
     this.abnormalAuditInst.ReleaseTime = new DateTime?(DateTimeHelper.GetNow());
     this.abnormalAuditInst.ReleaseType = releaseType;
     SmIdentity smIdentity = SecurityUtil.GetSmIdentity();
     if (smIdentity != null)
     {
         this.abnormalAuditInst.ReleaseStaffId = smIdentity.UserId;
         this.abnormalAuditInst.ReleaseStaffName = smIdentity.UserName;
     }
     this.Store();
 }
 private void ReleaseAbnormal(IDictionary<string, WorkItem> workItems, WfReleaseType type)
 {
     IList<IWfAbnormalAudit> abnormalAudits = this.GetAbnormalAudits(workItems);
     foreach (IWfAbnormalAudit audit in abnormalAudits)
     {
         if (!audit.Released)
         {
             if (type == WfReleaseType.Resumed)
             {
                 WfFactory.GetWfProcess(audit.ProcessKey).Resume();
             }
             audit.Release(type);
         }
     }
 }