public List <WorkflowHistoryEntity> GetList(int workflowRequestID) { StringBuilder strSql = new StringBuilder(); strSql.Append("select wfhis.*, u.FirstName+' '+u.LastName As ProcessedByName from WorkflowHistory wfhis, Users u "); strSql.Append(" where WorkflowRequestID=@WorkflowRequestID and wfhis.ProcessedBy=u.UserID; "); Database db = DatabaseFactory.CreateDatabase(); List <WorkflowHistoryEntity> list = new List <WorkflowHistoryEntity>(); using (DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString())) { try { db.AddInParameter(dbCommand, "WorkflowRequestID", DbType.Int32, workflowRequestID); using (IDataReader dataReader = db.ExecuteReader(dbCommand)) { while (dataReader.Read()) { list.Add(WorkflowHistoryEntity.ReaderBind(dataReader)); } } foreach (WorkflowHistoryEntity ent in list) { SealFilesRepositorySqlDataProvider sealFilesRep = new SealFilesRepositorySqlDataProvider(); ent.lstFiles = sealFilesRep.GetListByHistoryID(ent.ID); } } catch (Exception ex) { WebLogAgent.Write(string.Format("[SQLText:{0},{1}Messages:\r\n{2}]", strSql.ToString(), base.FormatParameters(dbCommand.Parameters), ex.Message)); } return(list); } }
private void InsertWorkflowHistory(int userID) { WorkflowHistoryEntity wfhisEntInsert = new WorkflowHistoryEntity(); wfhisEntInsert.WorkflowRequestID = sealRequestEntity.ID; wfhisEntInsert.CreatedTime = DateTime.Now; wfhisEntInsert.ProcessedBy = userID; wfhisEntInsert.Action = WorkflowAction.Pending; app.WorkflowHistoryInsert(wfhisEntInsert); }
private void InsertWorkflowHistory(int RequestID, int userID, WorkflowAction action) { WorkflowHistoryEntity wfhisEntInsert = new WorkflowHistoryEntity(); wfhisEntInsert.WorkflowRequestID = RequestID; wfhisEntInsert.CreatedTime = DateTime.Now; wfhisEntInsert.ProcessedBy = userID; wfhisEntInsert.Action = action; app.WorkflowHistoryInsert(wfhisEntInsert); }
public int UpdateReturnID(WorkflowHistoryEntity entity) { int resultID = -1; StringBuilder strSql = new StringBuilder(); strSql.Append("Select ID from WorkflowHistory "); strSql.Append("WHERE WorkflowRequestID=@WorkflowRequestID AND ProcessedBy=@ProcessedBy AND Action=-1; "); strSql.Append("Update WorkflowHistory Set "); strSql.Append("ProcessedTime=@ProcessedTime,Action=@Action,Comment=@Comment "); strSql.Append("WHERE WorkflowRequestID=@WorkflowRequestID AND ProcessedBy=@ProcessedBy AND Action=-1"); Database db = DatabaseFactory.CreateDatabase(); using (DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString())) { try { db.AddInParameter(dbCommand, "WorkflowRequestID", DbType.Int32, entity.WorkflowRequestID); db.AddInParameter(dbCommand, "ProcessedBy", DbType.Int32, entity.ProcessedBy); db.AddInParameter(dbCommand, "ProcessedTime", DbType.DateTime, entity.ProcessedTime); db.AddInParameter(dbCommand, "Action", DbType.Int32, (int)entity.Action); db.AddInParameter(dbCommand, "Comment", DbType.String, entity.Comment); using (IDataReader dataReader = db.ExecuteReader(dbCommand)) { if (dataReader.Read()) { resultID = (int)dataReader["ID"]; } } db.ExecuteScalar(dbCommand); } catch (Exception ex) { WebLogAgent.Write(string.Format("[SQLText:{0},{1}Messages:\r\n{2}]", strSql.ToString(), base.FormatParameters(dbCommand.Parameters), ex.Message)); } } return(resultID); }
public int InsertFirst(WorkflowHistoryEntity entity) { StringBuilder strSql = new StringBuilder(); strSql.Append("INSERT INTO WorkflowHistory"); strSql.Append("(WorkflowRequestID,CreatedTime,ProcessedBy,ProcessedTime,Action) "); strSql.Append("VALUES("); strSql.Append("@WorkflowRequestID,@CreatedTime,@ProcessedBy,@ProcessedTime,@Action)"); strSql.Append(";select ISNULL( SCOPE_IDENTITY(),0);"); Database db = DatabaseFactory.CreateDatabase(); using (DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString())) { try { db.AddInParameter(dbCommand, "WorkflowRequestID", DbType.Int32, entity.WorkflowRequestID); db.AddInParameter(dbCommand, "CreatedTime", DbType.DateTime, entity.CreatedTime); db.AddInParameter(dbCommand, "ProcessedBy", DbType.Int32, entity.ProcessedBy); db.AddInParameter(dbCommand, "ProcessedTime", DbType.DateTime, entity.ProcessedTime); db.AddInParameter(dbCommand, "Action", DbType.Int32, (int)entity.Action); int result; object obj = db.ExecuteScalar(dbCommand); if (!int.TryParse(obj.ToString(), out result)) { return(0); } return(result); } catch (Exception ex) { WebLogAgent.Write(string.Format("[SQLText:{0},{1}Messages:\r\n{2}]", strSql.ToString(), base.FormatParameters(dbCommand.Parameters), ex.Message)); return(0); } } }
public bool Update(WorkflowHistoryEntity entity) { return(true); }
public int WorkflowHistoryUpdate(WorkflowHistoryEntity entity) { return(mgr.WorkflowHistoryUpdate(entity)); }
public int WorkflowHistoryInsertFirst(WorkflowHistoryEntity entity) { return(mgr.WorkflowHistoryInsertFirst(entity)); }
protected void btnOK_Click(object sender, EventArgs e) { int wfhisEntUpdateID = 0; WorkflowAction selectedAction = (WorkflowAction)Enum.Parse(typeof(WorkflowAction), ddlAction.SelectedValue); int nextUserID = HiddenFieldUsers.Value.Length > 0 ? int.Parse(HiddenFieldUsers.Value) : -1; sealRequestEntity = CheckData(); // Update this record in WorkflowHistory table if ((ddlAction.SelectedValue == WorkflowAction.Submit.ToString() && sealRequestEntity.Status != RequestStatus.Denied) || ddlAction.SelectedValue == WorkflowAction.Save.ToString()) { } else { WorkflowHistoryEntity wfhisEntUpdate = new WorkflowHistoryEntity(); wfhisEntUpdate.ProcessedBy = UserInfo.ID; wfhisEntUpdate.WorkflowRequestID = sealRequestEntity.ID; wfhisEntUpdate.ProcessedTime = DateTime.Now; wfhisEntUpdate.Action = selectedAction; wfhisEntUpdate.Comment = txtComments.Text; wfhisEntUpdateID = app.WorkflowHistoryUpdate(wfhisEntUpdate); } // Insert files if (divUploadFiles1.Visible) { if (fileupload1.PostedFile.ContentLength > 0 && IsValidFile(fileupload1.PostedFile.FileName)) { InsertFile(fileupload1.PostedFile, sealRequestEntity.ID, wfhisEntUpdateID, 1); } if (fileupload2.PostedFile.ContentLength > 0 && IsValidFile(fileupload2.PostedFile.FileName)) { InsertFile(fileupload2.PostedFile, sealRequestEntity.ID, wfhisEntUpdateID, 2); } if (fileupload3.PostedFile.ContentLength > 0 && IsValidFile(fileupload3.PostedFile.FileName)) { InsertFile(fileupload3.PostedFile, sealRequestEntity.ID, wfhisEntUpdateID, 3); } } if (divUploadFiles2.Visible) { if (fileupload4.PostedFile.ContentLength > 0 && IsValidFile(fileupload4.PostedFile.FileName)) { InsertFile(fileupload4.PostedFile, sealRequestEntity.ID, wfhisEntUpdateID, 1); } if (fileupload5.PostedFile.ContentLength > 0 && IsValidFile(fileupload5.PostedFile.FileName)) { InsertFile(fileupload5.PostedFile, sealRequestEntity.ID, wfhisEntUpdateID, 2); } if (fileupload6.PostedFile.ContentLength > 0 && IsValidFile(fileupload6.PostedFile.FileName)) { InsertFile(fileupload6.PostedFile, sealRequestEntity.ID, wfhisEntUpdateID, 3); } } // Update status in SealRequest table if (sealRequestEntity.Type == 0) { switch (selectedAction) { case WorkflowAction.Submit: if (sealRequestEntity.Status == RequestStatus.Denied && sealRequestEntity.RequestedBy == UserInfo.UserID) { SendSubmitEmail(sealRequestEntity); } else { ChangeRequestStatus_Submitted(); } break; case WorkflowAction.ForwardApproval: ChangeRequestStatus_ForwardApproval(); break; case WorkflowAction.Approve: ChangeRequestStatus_Approved(); break; case WorkflowAction.ForwardProcess: ChangeRequestStatus_ForwardProcessing(); break; case WorkflowAction.FinishProcess: ChangeRequestStatus_Processed(); break; case WorkflowAction.ContinueProcess: ChangeRequestStatus(RequestStatus.PendingProcess); break; case WorkflowAction.Deny: ChangeRequestStatus_Denied(); break; case WorkflowAction.Complete: ChangeRequestStatus_Completed(); break; case WorkflowAction.Cancel: ChangeRequestStatus_Canceled(); break; case WorkflowAction.Save: ChangeRequestStatus_Saved(); break; } } else { switch (selectedAction) { case WorkflowAction.Submit: ChangeRequestStatus(RequestStatus.Submitted); UpdateRequestDetails(); SendEmailToRespUser(nextUserID); break; case WorkflowAction.ForwardApproval: ChangeRequestStatus(RequestStatus.PendingApproval); SendEmailToRespUser(nextUserID); break; case WorkflowAction.Approve: ChangeRequestStatus(RequestStatus.Approved); SendEmailToRespUser(nextUserID); break; case WorkflowAction.ForwardProcess: ChangeRequestStatus(RequestStatus.PendingProcess); SendEmailToRespUser(nextUserID); break; case WorkflowAction.FinishProcess: ChangeRequestStatus(RequestStatus.Processed); SendEmailToUser(true); break; case WorkflowAction.ContinueProcess: ChangeRequestStatus(RequestStatus.PendingProcess); SendEmailToRespUser(nextUserID); break; case WorkflowAction.Deny: ChangeRequestStatus(RequestStatus.Denied); SendEmailToUser(false); break; case WorkflowAction.Complete: ChangeRequestStatus(RequestStatus.Completed); break; case WorkflowAction.Cancel: ChangeRequestStatus(RequestStatus.Canceled); break; case WorkflowAction.Save: UpdateRequestDetails(); break; } } // Insert next record in WorkflowHistory table //else if (sealRequestEntity.Type == 0 && (ddlAction.SelectedValue == "Submit" || ddlAction.SelectedValue == "Approve")) //Possible multiple next responsible users //{ // string[] lstUserID = HiddenFieldUsers.Value.Split(','); // foreach (string s in lstUserID) // { // InsertWorkflowHistory(int.Parse(s)); // } //} if (nextUserID != -1) { InsertWorkflowHistory(nextUserID); } // Redirect if (sealRequestEntity != null) { if (sealRequestEntity.Status == RequestStatus.Canceled) { Response.Redirect("SealRequests.aspx"); //取消申请后,跳转到列表页 } else { Redirect(string.Format("EditSealRequest.aspx?ID={0}&returnurl={1}" , sealRequestEntity.ID, QS("returnurl")), true); //重定向一次 } } else { ShowFailMessageToClient(app.BrokenRuleMessages); } }
public int WorkflowHistoryUpdate(WorkflowHistoryEntity entity) { return(wfhisRepository.UpdateReturnID(entity)); }
public int WorkflowHistoryInsertFirst(WorkflowHistoryEntity entity) { return(wfhisRepository.InsertFirst(entity)); }