protected void ctlConfirmPopup_OnNotifyPopup(object sender, PopUpReturnArgs args) { int intWorkFlowStateEventID = 0; try { if (args.Type == PopUpReturnType.OK) { WorkFlowStateEvent workFlowStateEvent = WorkFlowQueryProvider.WorkFlowStateEventQuery.GetSendDraftStateEvent(WorkFlowTypeID.FixedAdvanceWorkFlow); intWorkFlowStateEventID = workFlowStateEvent.WorkFlowStateEventID; object eventData = new SubmitResponse(intWorkFlowStateEventID); WorkFlowService.NotifyEvent(this.WorkflowID, workFlowStateEvent.Name, eventData); Response.Redirect("SubmitResult.aspx?wfid=" + this.WorkflowID); } } catch (ServiceValidationException ex) { this.ValidationErrors.MergeErrors(ex.ValidationErrors); ctlUpdatePanelValidation.Update(); } if (this.ValidationErrors.IsEmpty) { Response.Redirect("DocumentView.aspx?wfid=" + this.WorkflowID.ToString()); } }
private void WorkFlowApprove(string DocKind) { string wfid = System.Web.HttpContext.Current.Request.QueryString["wfid"].ToString(); if (DocKind == DocumentKind.Advance.ToString()) { IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Approve, WorkFlowStatEventNameConst.WaitApproveVerify, WorkFlowTypeName.Advance); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(int.Parse(wfid), WorkFlowEventNameConst.Approve, eventData); } else if (DocKind == DocumentKind.Remittance.ToString()) { IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Approve, WorkFlowStatEventNameConst.WaitApproveRemittance, WorkFlowTypeName.Remittance); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(int.Parse(wfid), WorkFlowEventNameConst.Approve, eventData); } else if (DocKind == DocumentKind.Expense.ToString()) { IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Approve, WorkFlowStatEventNameConst.WaitApproveVerify, WorkFlowTypeName.Expense); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(int.Parse(wfid), WorkFlowEventNameConst.Approve, eventData); } else if (DocKind == DocumentKind.ExpenseRemittance.ToString()) { IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Pay, WorkFlowStatEventNameConst.WaitRemittance, WorkFlowTypeName.Expense); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(int.Parse(wfid), WorkFlowEventNameConst.Pay, eventData); } }
protected void ctlConfirmPopup_OnNotifyPopup(object sender, PopUpReturnArgs args) { try { if (args.Type == PopUpReturnType.OK) { WorkFlowStateEvent workFlowStateEvent = WorkFlowQueryProvider.WorkFlowStateEventQuery.GetSendDraftStateEvent(WorkFlowTypeID.RemittanceWorkFlow); int intWorkFlowStateEventID = workFlowStateEvent.WorkFlowStateEventID; object eventData = new SubmitResponse(intWorkFlowStateEventID); WorkFlowService.NotifyEvent(this.WorkFlowID, workFlowStateEvent.Name, eventData); Response.Redirect("SubmitResult.aspx?wfid=" + this.WorkFlowID); } } catch (ServiceValidationException ex) { this.ValidationErrors.MergeErrors(ex.ValidationErrors); ctlUpdatePanelValidation.Update(); } // if No error then redirect to SubmitResult.aspx if (this.ValidationErrors.IsEmpty) { //Page.RegisterStartupScript("comfirm", "<script>return confirm('Do you want to send your document to WorkFlow')</script>"); Response.Redirect("DocumentView.aspx?wfid=" + this.WorkFlowID.ToString()); } }
public void MultipleApproveVerify() { IList <long> workflowList = GetWorkflowIDForMultipleApprove(); ApproveVerifyStatus approveVerifyStatus = null; List <ApproveVerifyStatus> approveVerifyStatusList = new List <ApproveVerifyStatus>(); foreach (long workflowId in workflowList) { try { SS.Standard.WorkFlow.DTO.WorkFlow workFlow = WorkFlowQueryProvider.WorkFlowQuery.FindByIdentity(workflowId); SCGDocument document = ScgeAccountingQueryProvider.SCGDocumentQuery.GetSCGDocumentByDocumentID(workFlow.Document.DocumentID); approveVerifyStatus = new ApproveVerifyStatus(); approveVerifyStatus.DocumentNo = document.DocumentNo; approveVerifyStatus.Subject = document.Subject; int workFlowStateEventID = ScgeAccountingQueryProvider.SCGDocumentQuery.GetWorkStateEvent(workFlow.CurrentState.WorkFlowStateID, WorkFlowEventNameConst.Approve); if (workFlow.WorkFlowType.WorkFlowTypeID == WorkFlowTypeID.AdvanceWorkFlowType) { AvAdvanceDocument advDocument = ScgeAccountingQueryProvider.AvAdvanceDocumentQuery.GetAvAdvanceByDocumentID(workFlow.Document.DocumentID); approveVerifyStatus.Amount = advDocument.Amount; IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Approve, WorkFlowStatEventNameConst.WaitApproveVerify, WorkFlowTypeName.Advance); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(workflowId, WorkFlowEventNameConst.Approve, eventData); } else if (workFlow.WorkFlowType.WorkFlowTypeID == WorkFlowTypeID.ExpenseWorkFlow) { FnExpenseDocument expDocument = ScgeAccountingQueryProvider.FnExpenseDocumentQuery.GetExpenseDocumentByDocumentID(workFlow.Document.DocumentID); approveVerifyStatus.Amount = expDocument.DifferenceAmount; IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Approve, WorkFlowStatEventNameConst.WaitApproveVerify, WorkFlowTypeName.Expense); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(workflowId, WorkFlowEventNameConst.Approve, eventData); } else if (workFlow.WorkFlowType.WorkFlowTypeID == WorkFlowTypeID.RemittanceWorkFlow) { FnRemittance rmtDocument = ScgeAccountingQueryProvider.FnRemittanceQuery.GetFnRemittanceByDocumentID(workFlow.Document.DocumentID); approveVerifyStatus.Amount = rmtDocument.TotalAmount; IList <WorkFlowStateEvent> workFlowState = WorkFlowQueryProvider.WorkFlowStateEventQuery.FindWorkFlowStateEvent(WorkFlowEventNameConst.Approve, WorkFlowStatEventNameConst.WaitApproveRemittance, WorkFlowTypeName.Remittance); object eventData = new SubmitResponse(workFlowState[0].WorkFlowStateEventID); WorkFlowService.NotifyEvent(workflowId, WorkFlowEventNameConst.Approve, eventData); } approveVerifyStatus.Status = "Success"; } catch (ServiceValidationException ex) { approveVerifyStatus.Status = "Error"; approveVerifyStatus.Reason = new List <string>(); foreach (Spring.Validation.ErrorMessage errorMsg in ex.ValidationErrors.GetErrors("WorkFlow.Error")) { approveVerifyStatus.Reason.Add(errorMsg.Id); } //ctlApproveStatusSummary.ValidationErrors.MergeErrors(ex.ValidationErrors); } approveVerifyStatusList.Add(approveVerifyStatus); } if (approveVerifyStatusList.Count > 0) { ctlApproveStatusSummary.DataList = approveVerifyStatusList.OrderBy(x => x.Status).ThenBy(x => x.DocumentNo).ToList(); ctlApproveStatusSummary.BindGridView(); ctlApproveResultSummaryModalPopupExtender.Show(); } }