public override DataSet Approve(object objEntityp) { clsDirectInsurerPayment objEntity = (clsDirectInsurerPayment)(objEntityp); EntityProcesses objProcess = base.getProcessObject(objEntity.UserId.ToString(), EntityType.JOURNAL, objEntity.Status, objEntity.JournalNo, "1"); try { base.BeginTransaction(); if (base.StartProcess(objProcess)) { DataSet ds = ApproveReceipt(objEntity); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0 && ds.Tables[0].Rows[0] != null && ds.Tables[0].Rows[0]["Result"] != null) { objProcess.EntityCurrentStatus = objEntity.Status; objProcess.EntityID = ds.Tables[0].Rows[0]["Result"].ToString(); } base.CommitProcess(objProcess); base.CommitTransaction(); return(ds); } else { // base.RollbackProcess(objProcess, EntityType.RECEIPT.ToString()); throw (new Exception("Receipt Can not be approved. Error: Process is not eligible on this entity status.")); } } catch (Exception ex) { base.RollbackProcess(objProcess, EntityType.RECEIPT.ToString()); throw (new Exception("Receipt Can not be approved. Error: " + ex.Message)); } }
/// <summary> /// Rollback the process specified in model object /// </summary> /// <param name="objProcessInfo">Process information</param> /// <returns>True if sucessfull else false</returns> public virtual bool RollbackProcess(EntityProcesses objProcessInfo, string strCalledFor) { try { //Checking the Entity Process Elegibility. int returnResult = 0; if (OnCheckProcessEligibility()) { //returnResult = CheckProcessEligibility(, objProcessInfo.PROCESS_ID); if (returnResult != 1) { // TransactionDescription.Append("\n" + ClsCommon.FetchGeneralMessage("1376", "") + ";");//Process eligibility is false. return(false); //Entity not valid for the specified process } else { //TransactionDescription.Append("\n " + ClsCommon.FetchGeneralMessage("1377", "") + ";");//Process eligibility is true. } } //int iResult = 0; //iResult = SetDiaryEntryStatus(objProcessInfo, "N"); //if (strCalledFor == "NEWVERSION") // iResult = SetDiaryEntryStatus(objProcessInfo, "N", strCalledFor); ////TransactionDescription.Append("\n Update the Diary Entry Status.;"); //if (iResult > 0) // TransactionDescription.Append("\n" + ClsCommon.FetchGeneralMessage("1919", "") + ";");//Diary entry status has been updated. //if (OnSetEntitytatus() == true) //{ // //Updating the status of Entuty on which process has been launched. // string EntityStatusDesc, NewEntityStatus; // SetEntityStatus(, objProcessInfo.PROCESS_ID, out EntityStatusDesc, out NewEntityStatus); // TransactionDescription.Append("\n " + ClsCommon.FetchGeneralMessage("1488", "") + EntityStatusDesc + ".;");//Entity Status has been updated to //} ////Update the Process table Information DataTable result = UpdateProcessInformation(objProcessInfo); //Sets the Entity Status on which the process has been launched. //SetProcessStatus(, objProcessInfo.ROW_ID, PROCESS_STATUS_ROLLBACK); //TransactionDescription.Append("\n " + ClsCommon.FetchGeneralMessage("1918", "") + ";");//("\n Process Status has been updated.;"); if (OnWriteTransactionLog()) { //Updating the transaction log //WriteTransactionLog(, // GetTransactionLogDesc(objProcessInfo.PROCESS_ID), objProcessInfo.COMPLETED_BY, TransactionDescription.ToString()); } return(true); } catch (Exception objExp) { throw (new Exception("Error occured while rollbacking process \n" + objExp.Message)); } }
/// <summary> /// Saves the information passed in model object to database. /// </summary> /// <param name="objProcessInfo">Model class object.</param> /// <returns>No of records effected.</returns> public DataTable AddProcessInformation(EntityProcesses objProcesses) { string strStoredProc = "Proc_InsertTM_EntityProcesses"; DateTime RecordDate = DateTime.Now; DataTable returnResult; //DataAccessLayer.DatabaseInteraction objWrapper = new DataAccessLayer.DatabaseInteraction(CommandType.StoredProcedure); try { objWrapper.ClearParameteres(); objWrapper.AddParameter("@EntityID", objProcesses.EntityID); objWrapper.AddParameter("@EntityTypeID", objProcesses.EntityTypeID); objWrapper.AddParameter("@EntityVersionID", objProcesses.EntityVersionID); objWrapper.AddParameter("@EntityNewVersionID", objProcesses.EntityNewVersionID); objWrapper.AddParameter("@EntityPreviousStatus", objProcesses.EntityPreviousStatus); objWrapper.AddParameter("@EntityCurrentStatus", objProcesses.EntityCurrentStatus); objWrapper.AddParameter("@ProcessID", objProcesses.ProcessID); objWrapper.AddParameter("@ProcessType", ""); objWrapper.AddParameter("@ProcessStatus", objProcesses.ProcessStatus); objWrapper.AddParameter("@ProcessEffectiveDate", objProcesses.ProcessEffectiveDate); objWrapper.AddParameter("@SentTo", objProcesses.SentTO); objWrapper.AddParameter("@Remarks", objProcesses.Remarks); objWrapper.AddParameter("@Reason", objProcesses.Reason); objWrapper.AddParameter("@FollowUpId", objProcesses.FollowupIds); objWrapper.AddParameter("@CreatedBy", objProcesses.CreatedBy); string[] tbls = { "ProcessTable" }; returnResult = objWrapper.GetDataset(strStoredProc, tbls).Tables[0]; if (returnResult.Rows[0]["ProcessRowId"] != null) { objProcesses.ProcessRowId = int.Parse(returnResult.Rows[0]["ProcessRowId"].ToString()); } objWrapper.ClearParameteres(); return(returnResult); } catch (Exception ex) { throw (ex); } }
public override DataSet Approve(object objEntity) { clsUnApprovedInfo objXmlEntity = (clsUnApprovedInfo)(objEntity); EntityProcesses objProcess = base.getProcessObject(objXmlEntity.LoginUserId, EntityType.CLIENT, objXmlEntity.AppStatus, objXmlEntity.RecForId.ToString(), "1"); //{ // EntityCurrentStatus = "", // EntityNewVersionID ="", // EntityPreviousStatus = "", // EntityVersionID ="", // ProcessID =1, // ProcessRowId =-1, // Reason ="", // Remarks ="", // SentTO = "" //}; try { base.BeginTransaction(); if (base.StartProcess(objProcess)) { DataSet dsClient = ApproveClient(objEntity); base.CommitProcess(objProcess); base.CommitTransaction(); return(dsClient); } else { // base.RollbackProcess(objProcess, EntityType.RECEIPT.ToString()); throw (new Exception("Client Can not be approved. Error: Process is not eligible on this entity status.")); } } catch (Exception ex) { base.RollbackProcess(objProcess, EntityType.CLIENT.ToString()); throw (new Exception("Client Can not be approved. Error: " + ex.Message)); } }
private DataSet RejectReceipt(clsReciept objEntity) { DataSet dsApprove = new DataSet(); clsReciept objReceiptEntity = (clsReciept)(objEntity); EntityProcesses objProcess = base.getProcessObject(objReceiptEntity.UserId.ToString(), EntityType.RECEIPT, objReceiptEntity.Status, objReceiptEntity.ReceiptNo, "1"); try { base.BeginTransaction(); if (base.StartProcess(objProcess)) { //DataSet dsReciept = ApproveReceipt(objReceiptEntity); //if (dsReciept != null && dsReciept.Tables.Count > 0 && dsReciept.Tables[0] != null && dsReciept.Tables[0].Rows.Count > 0 && dsReciept.Tables[0].Rows[0] != null && dsReciept.Tables[0].Rows[0]["Result"] != null) //{ // objProcess.EntityCurrentStatus = objReceiptEntity.Status; // objProcess.EntityID = dsReciept.Tables[0].Rows[0]["Result"].ToString(); //} base.CommitProcess(objProcess); base.CommitTransaction(); return(dsApprove); } else { // base.RollbackProcess(objProcess, EntityType.RECEIPT.ToString()); throw (new Exception("Receipt Can not be approved. Error: Process is not eligible on this entity status.")); } } catch (Exception ex) { base.RollbackProcess(objProcess, EntityType.RECEIPT.ToString()); throw (new Exception("Receipt Can not be approved. Error: " + ex.Message)); } return(dsApprove); }
public virtual bool CommitProcess(EntityProcesses objProcessInfo, string strCalledFrom) { try { int returnResult = 0; if (OnCheckProcessEligibility()) { //returnResult = CheckProcessEligibility(); if (returnResult != 1) { //TransactionDescription.Append("\n " + ClsCommon.FetchGeneralMessage("1376", "") + ";");//Process eligibility is false.;"); return(false); //Entity not valid for the specified process } else { //TransactionDescription.Append("\n" + ClsCommon.FetchGeneralMessage("1377", "") + ";");// Process eligibility is true.;"); } } int iResult = 0, iResult1 = 0; //iResult = SetDiaryEntryStatus(objProcessInfo, "N"); //if (strCalledFrom == "NEWVERSION") // iResult1 = SetDiaryEntryStatus(objProcessInfo, "N", strCalledFrom); // TransactionDescription.Append(Cms.BusinessLayer.BlCommon.ClsCommon.FetchGeneralMessage("1378", ""));//Diary entry status has been marked completed.;"); if (OnSetEntityStatus()) { //Updating the status of Entity on which process has been launched. string EntityStatusDesc, NewEntityStatus = ""; SetEntityStatus(objProcessInfo.EntityID, objProcessInfo.EntityTypeID, objProcessInfo.EntityVersionID, objProcessInfo.ProcessID, objProcessInfo.EntityCurrentStatus, out EntityStatusDesc, out NewEntityStatus); //TransactionDescription.Append("\n " + ClsCommon.FetchGeneralMessage("1339", "") + EntityStatusDesc + ".;"); if (NewEntityStatus != "") { objProcessInfo.EntityCurrentStatus = NewEntityStatus; } } objProcessInfo.ProcessStatus = "COMPLETE"; objProcessInfo.RequestedDate = DateTime.Now.ToLongDateString(); //Update the Process table Information DataTable result = UpdateProcessInformation(objProcessInfo); //Sets the Process Status on which the process has been launched. //SetProcessStatus(, objProcessInfo.ROW_ID, PROCESS_STATUS_COMPLETE); //TransactionDescription.Append(ClsCommon.FetchGeneralMessage("1379", ""));//Process Status has been updated.;"); if (OnWriteTransactionLog()) { //Updating the transaction log // WriteTransactionLog(, // GetTransactionLogDesc(objProcessInfo.PROCESS_ID), objProcessInfo.COMPLETED_BY, TransactionDescription.ToString()); } return(true); } catch (Exception objExp) { throw (new Exception("Error occured while committing process \n" + objExp.Message)); } }
/// <summary> /// Commits the process specified in model object /// </summary> /// <param name="objProcessInfo">Process information</param> /// <returns>True if sucessfull else false</returns> //Overloaded virtual function public virtual bool CommitProcess(EntityProcesses objProcessInfo) { return(CommitProcess(objProcessInfo, "")); }
/// <summary> /// Starts the specified process, passed in model object /// </summary> /// <param name="objProcessInfo">Process info into model</param> /// <returns>True if sucessfull else false</returns> public virtual bool StartProcess(EntityProcesses objProcessInfo) { try { //Checking the Entity Process Elegibility. int returnResult = 0; if (OnCheckProcessEligibility()) { //returnResult = CheckProcessEligibility(objProcessInfo.EntityID, objProcessInfo.EntityVersionID, objProcessInfo.EntityTypeID, objProcessInfo.PROCESS_ID); if (returnResult != 1) { return(false); //Entity not valid for the specified process } } EntityProcesses objRunningProcess = GetRunningProcess(objProcessInfo.EntityID, objProcessInfo.EntityTypeID, objProcessInfo.EntityVersionID); if (objRunningProcess != null) { objProcessInfo.ProcessRowId = objRunningProcess.ProcessRowId; objProcessInfo.ProcessID = objRunningProcess.ProcessID; objProcessInfo.Reason = objRunningProcess.Reason; objProcessInfo.Remarks = objRunningProcess.Remarks; objProcessInfo.SentTO = objRunningProcess.SentTO; objProcessInfo.FollowupIds = objRunningProcess.FollowupIds; } else { //At start process status should be pending objProcessInfo.ProcessStatus = PROCESS_STATUS_PENDING; //Adding the record into Entity process table (TM_ENTITY_PROCESS) AddProcessInformation(objProcessInfo); //TransactionDescription.Append("\n" + FetchGeneralMessage("1124", ";")); //Process has been added in process log.;"); } #region DIARY/Followup ENTRY #endregion if (OnSetEntityStatus() == true) { //Sets the Entity Status on which the process has been launched. string EntityStatusDesc, NewEntityStatus; //SetEntityStatus( objProcessInfo.PROCESS_ID, out EntityStatusDesc, out NewEntityStatus); //TransactionDescription.Append("\n" + FetchGeneralMessage("1339", ";") + "" + EntityStatusDesc + ".;"); } //Transaction log entry will be done. if (OnWriteTransactionLog()) { //WriteTransactionLog( // , GetTransactionLogDesc(objProcessInfo.PROCESS_ID), objProcessInfo.CREATED_BY, TransactionDescription.ToString()); } return(true); } catch (Exception objExp) { //throw (new Exception(FetchGeneralMessage("1338", ";") + "\n" + objExp.Message)); throw (new Exception("Error while starting Process." + "\n" + objExp.Message)); } }