public static void CompleteWorkflowTask(string transactionId) { ECXWF.ECXEngine eng = new WarehouseApplication.ECXWF.ECXEngine(); ECXWF.CMessage msg = (ECXWF.CMessage)HttpContext.Current.Session["msg"]; msg.IsCompleted = true; eng.Response(transactionId, msg); }
private string PageFactory(ECXWF.CMessage msg, string TranNo, object[] par) { if (msg.Name == "AddCommodityDepositeRequest") { return("AddCommodityDepositRequest.aspx"); } else if (msg.Name == "AddDriverInformation") { return("AddDriverInformation.aspx?TranNo=" + TranNo + "&id=" + par[0].ToString()); } else if (msg.Name == "AddVoucherInfo") { return("AddVoucherInformation.aspx?TranNo=" + TranNo + "&id=" + par[0].ToString()); } else if (msg.Name == "GetSampleTicket") { return("GetSampleTicket.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddSamplingResult") { return("AddSamplingResult.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddSampleCoding") { return("AddSampleCoding.aspx"); } else if (msg.Name == "AddGradingResult") { return("AddGradingResult.aspx"); } else { return(""); } }
public bool CancelGRN(Guid GRNId, string TrackingNo, RequestforApprovedGRNCancelationStatus status) { bool isSaved = false; GRNBLL objGRN = new GRNBLL(); objGRN = objGRN.GetbyGRN_Number(GRNId); GRNStatus GRNstatus = (GRNStatus)objGRN.Status; if (status == RequestforApprovedGRNCancelationStatus.Cancelled) { GRNstatus = GRNStatus.Cancelled; } if (objGRN != null) { if (GRNstatus == GRNStatus.Cancelled) { isSaved = objGRN.Update(objGRN.GRN_Number, GRNstatus, objGRN, TrackingNo, DateTime.Now); } if (isSaved == true) { ECXWF.CMessage mess = WFTransaction.Request(TrackingNo); WFTransaction.WorkFlowManager(TrackingNo, mess); isSaved = true; } } else { throw new Exception("Unable to find GRN"); } return(isSaved); }
public static void WorkFlowManager(string TransactionNo) { if (String.IsNullOrEmpty(TransactionNo) == true) { throw new InvalidTransactionNumber("Invalid Tracking Number"); } try { if (HttpContext.Current.Session["msg"] != null) { ECXWF.ECXEngine eng = new WarehouseApplication.ECXWF.ECXEngine(); ECXWF.CMessage mess = (ECXWF.CMessage)HttpContext.Current.Session["msg"]; mess.IsCompleted = true; eng.Response(TransactionNo.Trim(), mess); } else { throw new Exception("Session Expired"); } } catch (Exception ex) { throw new Exception("Work Flow Exception.", ex); } }
protected void Page_Load(object sender, EventArgs e) { this.Page.DataBind(); if (IsPostBack != true) { Nullable <Guid> GRN_number = null; if (Session["GRNID"] != null) { try { //Get Commodity deposite Request Id from the GRN; GRN_number = new Guid(Session["GRNID"].ToString()); if (Session["GRNTrackingNo"] != null) { this.lblCurrentTrackingNo.Text = Session["GRNTrackingNo"].ToString(); } else { GRNBLL objGRN = new GRNBLL(); objGRN = objGRN.GetbyGRN_Number((Guid)GRN_number); if (objGRN != null) { GradingBLL objGrading = new GradingBLL(); objGrading = objGrading.GetById(objGRN.GradingId); this.lblCurrentTrackingNo.Text = objGrading.TrackingNo; } } LoadGRNInformation((Guid)GRN_number); LoadStatus(); Session["GRNID"] = null; Session["GRNTrackingNo"] = null; } catch (Exception ex) { throw ex; } LoadServices(); } this.btnAdd.Attributes.Add("btnGRNService_Click", "ValidateGRNService"); if (Session["msg"] != null) { ECXWF.CMessage mess = (ECXWF.CMessage)Session["msg"]; if (mess.Name == "EditGRN") { this.pnl.Visible = false; } } } }
protected void btnNext_Click(object sender, EventArgs e) { if (ViewState["vsTranNo"] != null) { ECXWF.CMessage msg = WFTransaction.Request(ViewState["vsTranNo"].ToString().Trim()); if (msg != null) { if (msg.Name == "AddVoucherInfo") { WFTransaction.WorkFlowManager(ViewState["vsTranNo"].ToString().Trim(), msg); } } } Response.Redirect("ListInbox.aspx"); }
private void IsEditable() { string TransactionNo = ""; TransactionNo = Request.QueryString["TranNo"]; ECXWF.CMessage msg = (ECXWF.CMessage)HttpContext.Current.Session["msg"]; if (msg != null) { if (msg.Name != "AddDriverInformation") { //this.pnlDriverInfo.Enabled = false; this.btnComplete.Enabled = false; //this.lblMessage.Text = "You can't make modification as this data is used in other tasks."; } } else { this.btnComplete.Enabled = false; } }
private string PageFactory(ECXWF.CMessage msg, string TranNo, object[] par) { if (Enum.GetNames(typeof(WorkflowTaskType)).Contains(msg.Name)) { InitiateWorkflowTask(msg.Name); } if (msg.Name == "AddCommodityDepositeRequest") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddCommodityDepositRequest.aspx"); } else if (msg.Name == "AddDriverInformation") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddDriverInformation.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddVoucherInfo") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddVoucherInformation.aspx?TranNo=" + TranNo); } else if (msg.Name == "GetSampleTicket") { return("GetSampleTicket.aspx"); } else if (msg.Name == "AddSamplingResult") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddSamplingResult.aspx?TranNo=" + TranNo); } else if (msg.Name == "GenerateGradingCode") { WFTransaction.LoadVariables(msg.Name, TranNo); return("GenerateGradingCode.aspx"); } else if (msg.Name == "AddGradingResult") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddGradingResult.aspx?TranNo=" + TranNo); } else if (msg.Name == "GradingResultCA") { WFTransaction.LoadVariables(msg.Name, TranNo); return("GradingResultClientAcceptance.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddUnloadingInfo") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddUnloadingInformation.aspx?TranNo=" + TranNo); } else if (msg.Name == "PreWeighTruck") { WFTransaction.LoadVariables(msg.Name, TranNo); return("PreWeighTruck.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddUnloadingInfo") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddUnloadingInformation.aspx?TranNo=" + TranNo); } else if (msg.Name == "PostWeighTruck") { WFTransaction.LoadVariables(msg.Name, TranNo); return("PostWeighTruck.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddScalingInfo") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddScalingInformation.aspx?TranNo=" + TranNo); } else if (msg.Name == "AddGRN") { WFTransaction.LoadVariables(msg.Name, TranNo); return("AddGRN.aspx?TranNo=" + TranNo); } else if (msg.Name == "GRNAcceptance") { WFTransaction.LoadVariables(msg.Name, TranNo); return("GRNAcceptance.aspx?TranNo=" + TranNo); } else if (msg.Name == "ClientAcceptance") { WFTransaction.LoadVariables(msg.Name, TranNo); return("GRNAcceptance.aspx?TranNo=" + TranNo); } else if (msg.Name == "WarehouseManagerAppr") { WFTransaction.LoadVariables(msg.Name, TranNo); return("ViewGRN.aspx?TranNo=" + TranNo); } else if (msg.Name == "WarehouseManagerApproval") { WFTransaction.LoadVariables(msg.Name, TranNo); return("ViewGRN.aspx?TranNo=" + TranNo); } else if (msg.Name == "EditGRN") { WFTransaction.LoadVariables(msg.Name, TranNo); return("ViewGRN.aspx?TranNo=" + TranNo); } else if (msg.Name == "EditGradeDispute") { WFTransaction.LoadVariables(msg.Name, TranNo); return("EditGradeDispute.aspx?TranNo=" + TranNo); } else if (msg.Name == "ApproveReSampling") { WFTransaction.LoadVariables(msg.Name, TranNo); return("EditReSampling.aspx?TranNo=" + TranNo); } else if (msg.Name == "OpenGRNForEdit") { WFTransaction.LoadVariables(msg.Name, TranNo); return("OpenGRNEdit.aspx"); } else if (msg.Name == "EditWHR") { WFTransaction.LoadVariables(msg.Name, TranNo); return("ReCreateGRN.aspx"); } else if (msg.Name == "CancelGRN" || msg.Name.Trim() == "ApproveCancelationRequest") { WFTransaction.LoadVariables(msg.Name, TranNo); return("CancelGRN.aspx"); } else if (msg.Name == "GetTrucksReadyForSam") { return("GetTrucksReadyForSampling.aspx"); } else if (msg.Name == "ConfirmTrucksForSamp") { return("ConfirmTrucksForSampling.aspx"); } else if (msg.Name == "Test") { return("Test1.aspx?Tran=" + TranNo); } else if (msg.Name.Trim() == "CodeSampRec") { WFTransaction.LoadVariables(msg.Name, TranNo); return("ReceiveSampleCode.aspx"); } else if (msg.Name.Trim() == "EditGradingResult") { WFTransaction.LoadVariables(msg.Name, TranNo); return("EditGradingReceived.aspx?TrackingNo=" + TranNo.ToString()); } else if (msg.Name.Trim() == "WHAppGRNEdit") { WFTransaction.LoadVariables(msg.Name, TranNo); return("EditApprovedGRNEditRequest.aspx"); } else if (msg.Name.Trim() == "OpenGRNForEdit") { WFTransaction.LoadVariables(msg.Name, TranNo); return("OpenGRNEdit.aspx"); } else if (msg.Name.Trim() == "UpdateGRNNo") { //GRN number edit WFTransaction.LoadVariables(msg.Name, TranNo); return("UpdateGRNNumber.aspx"); } else if (msg.Name.Trim() == "UpdateClientNo") { //NoClient WFTransaction.LoadVariables(msg.Name, TranNo); string id = HttpContext.Current.Session["CommodityRequestId"].ToString(); return("EditCommodityDepositRequest.aspx?id=" + id); } else { return(""); } }
public bool Update(string GRN_number, GRNStatus Status, GRNBLL objGRN, string TrackingNo, DateTime ManagerApprovedDateTime) { bool isSaved = false; SqlTransaction trans; SqlConnection conn = new SqlConnection(); conn = Connection.getConnection(); trans = conn.BeginTransaction(); GRNStatus PreviousStatus; PreviousStatus = (GRNStatus)objGRN.Status; if (objGRN == null) { throw new Exception("Unable to Load GRN Data"); } else { if (objGRN.Id == null || objGRN.Id == Guid.Empty) { throw new Exception("Invalid Grading Information "); } } GradingBLL objGrading = new GradingBLL(); objGrading = objGrading.GetById(objGRN.GradingId); objGrading.TrackingNo = TrackingNo; if (Status != GRNStatus.Cancelled) { if (objGrading == null) { throw new Exception("Unable to Load GRN Data"); } else { if (objGrading.TrackingNo == "") { throw new Exception("Unable to Load GRN Data"); } else { TrackingNo = objGrading.TrackingNo; } } } try { if (Status == GRNStatus.ManagerApproved) { isSaved = GRNDAL.SetGRNStatus(GRN_number, Status, trans, ManagerApprovedDateTime); if (isSaved == true) { int At = -1; AuditTrailBLL objAt = new AuditTrailBLL(); string oldVal = "(GRNNo-" + GRN_number + ") , (Status-" + PreviousStatus.ToString() + ")"; string NewVal = "(GRNNo-" + GRN_number + ") , (Status-" + Status.ToString() + ")"; At = objAt.saveAuditTrailStringFormat(oldVal, NewVal, WFStepName.EditGRN.ToString(), UserBLL.GetCurrentUser(), "Change GRN Status"); if (At == 1) { WarehouseRecieptBLL objWarehouseReciept = new WarehouseRecieptBLL(objGRN); if (objWarehouseReciept.Save() == true) { WFTransaction.WorkFlowManager(TrackingNo); isSaved = true; } else { isSaved = false; } } else { isSaved = false; } } else { isSaved = false; } } else if (Status == GRNStatus.Cancelled) { //Canceling Update isSaved = false; isSaved = GRNDAL.SetGRNStatus(GRN_number, Status, trans, ManagerApprovedDateTime); if (isSaved == true) { int At = -1; AuditTrailBLL objAt = new AuditTrailBLL(); string oldVal = "(GRNNo-" + GRN_number + ") , (Status-" + PreviousStatus.ToString() + ")"; string NewVal = "(GRNNo-" + GRN_number + ") , (Status-" + Status.ToString() + ")"; At = objAt.saveAuditTrailStringFormat(oldVal, NewVal, WFStepName.EditGRN.ToString(), UserBLL.GetCurrentUser(), "Change GRN Status"); if (At == 1) { ECXWF.CMessage msg = WFTransaction.Request(TrackingNo); if (msg == null) { throw new Exception("Unable to get WF Data."); } else if (msg.Name.Trim() == "EditGRN") { WFTransaction.WorkFlowManager(TrackingNo, msg); isSaved = true; } } } } else { isSaved = false; } #region Depricatedcode //// Cancel Implemented by web service. //if (Status == GRNStatus.Cancelled) //{ // WarehouseRecieptBLL objWarehouseReciept = new WarehouseRecieptBLL(); // isSaved = GRNDAL.UpdateGRN(GRN_number, Status, trans); // if (isSaved == true) // { // //isSaved = objWarehouseReciept.Cancel(this.Id); // if (isSaved == true) // { // int At = -1; // AuditTrailBLL objAt = new AuditTrailBLL(); // string oldVal = "(GRNNo-" + GRN_number + ") , (Status-" + PreviousStatus.ToString() + ")"; // string NewVal = "(GRNNo-" + GRN_number + ") , (Status-" + Status.ToString() + ")"; // At = objAt.saveAuditTrailStringFormat(oldVal, NewVal, WFStepName.EditGRN.ToString(), UserBLL.GetCurrentUser(), "Change GRN Status"); // if (At == 1) // { // isSaved = true; // } // else // { // isSaved = false; // } // } // } // else // { // throw new Exception("Unable to Cancel GRN."); // } // if (isSaved == true) // { // WFTransaction.WorkFlowManager(TrackingNo); // } //} #endregion if (isSaved == true) { trans.Commit(); trans.Dispose(); conn.Close(); return(true); } else { trans.Rollback(); trans.Dispose(); conn.Close(); } } catch (Exception ex) { trans.Rollback(); throw ex; } finally { trans.Dispose(); conn.Close(); } return(false); }
public Boolean UpdateManagerApproval(SamplingResultBLL oldObj) { // TODO : Check Sampling is Completed - check if Code is generated. bool isSaved = false; SqlTransaction tran = null; SqlConnection conn = null; AuditTrailBLL objat = new AuditTrailBLL(); int at = -1; try { conn = Connection.getConnection(); tran = conn.BeginTransaction(); this.LastModifiedBy = UserBLL.GetCurrentUser(); isSaved = SamplingResultDAL.UpdateManagerApproval(this, tran); if (isSaved == true) { if (oldObj == null) { throw new Exception("Invalid Old object-UpdateManagerApproval Method."); } string strOld = "(Id-" + oldObj.Id.ToString() + ")," + "(Status-" + oldObj.Status.ToString() + "),(LastModifiedBy-" + oldObj.LastModifiedBy.ToString() + ")"; string strNew = "(Id-" + this.Id.ToString() + ")," + "(Status-" + this.Status.ToString() + "),(LastModifiedBy-" + this.LastModifiedBy.ToString() + ")"; strNew += "(ManagerApprovalRemark-" + this.ManagerApprovalRemark + "),(LastModifiedTimestamp-" + this.LastModifiedTimestamp.ToString() + ")"; at = objat.saveAuditTrailStringFormat(strOld, strNew, WFStepsName.EditSamplingResult.ToString(), UserBLL.GetCurrentUser(), "Edit Sampling Result"); if (at == 1) { if ((oldObj.Status == SamplingResultStatus.New) && (this.Status == SamplingResultStatus.Approved)) { ECXWF.CMessage mess = WFTransaction.Request(this.TrackingNo); HttpContext.Current.Session["msg"] = mess; if (mess.Name.Trim().ToUpper() == "AddSamplingResult".ToUpper()) { WFTransaction.WorkFlowManager(this.TrackingNo); } else { throw new Exception("The Task has already been done."); } } else if ((oldObj.Status == SamplingResultStatus.New) && (this.Status == SamplingResultStatus.Cancelled)) { ECXWF.CMessage mess = WFTransaction.Request(this.TrackingNo); HttpContext.Current.Session["msg"] = mess; if (mess.Name.Trim().ToUpper() == "AddSamplingResult".ToUpper()) { WFTransaction.Close(this.TrackingNo); } else { throw new Exception("The Task has already been done."); } } } else { objat.RoleBack(); tran.Rollback(); isSaved = false; } if (at == 1) { tran.Commit(); } else { isSaved = false; tran.Rollback(); } } return(isSaved); } catch (Exception ex) { if (at == 1) { objat.RoleBack(); } tran.Rollback(); throw ex; } finally { tran.Dispose(); conn.Close(); } }
public Boolean Add(List <SamplingResultBLL> list, Guid SamplingId) { if (list == null) { throw new Exception("No sampling Result to save."); } SamplingBLL objSampling = new SamplingBLL(); objSampling = objSampling.GetSampleDetail(SamplingId); if (objSampling == null) { throw new Exception("Invalid Tracking No.Plase Tray Again."); } if (String.IsNullOrEmpty(objSampling.TrackingNo) == true) { throw new Exception("Invalid Tracking No.Plase Tray Again."); } string OldTrackingNo = String.Empty; int count = 0; count = list.Count; bool isSaved = false; SqlTransaction tran = null; SqlConnection conn = null; List <string> tranlist = new List <string>(); try { conn = Connection.getConnection(); tran = conn.BeginTransaction(); foreach (SamplingResultBLL i in list) { if (count == 1) { i.Id = Guid.NewGuid(); i.TrackingNo = objSampling.TrackingNo; i.ResultReceivedDateTime = this.ResultReceivedDateTime; i.IsPlompOk = this.IsPlompOk; if (this.IsPlompOk == true) { i.Status = SamplingResultStatus.Approved; } else { i.Status = SamplingResultStatus.New; } isSaved = SamplingResultDAL.InsertSamplingResult(i, tran); int at = -1; if (isSaved == true) { AuditTrailBLL objAt = new AuditTrailBLL(); at = objAt.saveAuditTrail(i, WFStepsName.AddSamplingResult.ToString(), UserBLL.GetCurrentUser(), "Add Sampling Result"); if (at == 1) { if (i.Status == SamplingResultStatus.Approved) { WFTransaction.WorkFlowManager(objSampling.TrackingNo); } } else { tran.Rollback(); isSaved = false; } } } else if (count > 1) { //Close previous Tracking No. OldTrackingNo = objSampling.TrackingNo; Guid TransactionTypeId = Guid.Empty; i.ResultReceivedDateTime = this.ResultReceivedDateTime; try { TransactionTypeId = TransactionTypeProvider.GetTransactionTypeId("RegularCoffeeMixed"); } catch (InvalidTransactionType ex) { throw new Exception("Can Not open Mixed Transaction Type please Contact the Administrator.", ex); } string tranNo = WFTransaction.GetTransaction(TransactionTypeId, tran); if (string.IsNullOrEmpty(tranNo) == true) { throw new Exception("Can Not get Transaction Number please Contact the Administrator."); } else { i.Id = Guid.NewGuid(); i.TrackingNo = tranNo; i.IsPlompOk = this.IsPlompOk; i.ResultReceivedDateTime = this.ResultReceivedDateTime; tranlist.Add(tranNo); isSaved = SamplingResultDAL.InsertSamplingResult(i, tran); int at = -1; if (i.IsPlompOk == true) { i.Status = SamplingResultStatus.Approved; } else { i.Status = SamplingResultStatus.New; } if (i.Status == SamplingResultStatus.Approved) { //Move One Step ECXWF.CMessage mess = null; mess = WFTransaction.Request(tranNo); if (mess == null) { throw new Exception("Can Not get Message for the Tracking No."); } else { if (WFStepName.AddSamplingResult.ToString().Trim().ToUpper() == mess.Name.Trim().ToUpper()) { WFTransaction.WorkFlowManager(tranNo, mess); } else { throw new Exception("Can Not get Message for the Tracking No."); } } } AuditTrailBLL objAt = new AuditTrailBLL(); at = objAt.saveAuditTrail(i, WFStepsName.AddSamplingResult.ToString(), UserBLL.GetCurrentUser(), "Add Sampling Result"); if (at == -1) { isSaved = false; break; } if (isSaved == false) { break; } } } } if (string.IsNullOrEmpty(OldTrackingNo) != true) { if ((isSaved == true) && (list.Count > 0)) { WFTransaction.Close(OldTrackingNo); } } if (isSaved == true) { tran.Commit(); return(true); } else { tran.Rollback(); return(false); } } catch (Exception ex) { RemoveTransaction(tranlist); tran.Rollback(); throw ex; } finally { if (tran != null) { tran.Dispose(); } if (conn.State == ConnectionState.Open) { conn.Close(); } } }
protected void btnComplete_Click(object sender, EventArgs e) { this.lblMessage.Text = ""; Nullable <Guid> Id = null; string TransactionNo = ""; TransactionNo = Request.QueryString["TranNo"]; if (string.IsNullOrEmpty(TransactionNo)) { return; } if (Session["CommodityRequestId"] == null) { CommodityDepositeRequestBLL objCDR = new CommodityDepositeRequestBLL(); objCDR = objCDR.GetCommodityDepositeDetailByTrackingNo(TransactionNo); Id = objCDR.Id; Session["CommodityRequestId"] = Id.ToString(); } else { Id = new Guid(Session["CommodityRequestId"].ToString()); } // if the Step is in Driver Info. //if (WFTransaction.GetMessage(TransactionNo) == "AddDriverInformation") //{ // WFTransaction.WorkFlowManager(TransactionNo); //} //Check if Driver Information is Added. List <DriverInformationBLL> listDriverInfo = null; DriverInformationBLL objDriverInfo = new DriverInformationBLL(); if (Session["CommodityRequestId"] != null) { Guid CdrId = new Guid(Session["CommodityRequestId"].ToString()); listDriverInfo = objDriverInfo.GetActiveDriverInformationByReceivigRequestId(CdrId); if (listDriverInfo == null) { this.btnComplete.Enabled = false; } else { if (listDriverInfo.Count <= 0) { this.btnComplete.Enabled = false; } else { if (Id != null) { ECXWF.CMessage msg = (ECXWF.CMessage)HttpContext.Current.Session["msg"]; if (msg != null) { if (msg.Name == "AddDriverInformation") { WFTransaction.WorkFlowManager(TransactionNo); Response.Redirect("ListInbox.aspx"); } } } } } } }
public static List <TrucksForSamplingBLL> GetRandomSample(Guid WarehouseId, int NumberOfTrucks) { List <TrucksForSamplingBLL> list = null; List <TrucksForSamplingBLL> listAll = null; List <TrucksForSamplingBLL> filteredList = new List <TrucksForSamplingBLL>(); list = TrucksForSamplingDAL.GetRandomSamplingIdWithin2Hours(WarehouseId, NumberOfTrucks); if (list == null) { list = new List <TrucksForSamplingBLL>(); } if (list.Count < NumberOfTrucks) { int numberofRandomRequired = 0; numberofRandomRequired = NumberOfTrucks - list.Count; listAll = TrucksForSamplingDAL.GetRandomTrucksForSamplingId(WarehouseId, NumberOfTrucks * 3); if (listAll != null) { if (listAll.Count <= numberofRandomRequired) { foreach (TrucksForSamplingBLL i in listAll) { list.Add(i); } } else { while (list.Count < NumberOfTrucks) { System.Random rnd = new Random(); int myRnd = rnd.Next(0, numberofRandomRequired); list.Add(listAll[myRnd]); } } } } if (list != null) { } else { list = TrucksForSamplingDAL.GetRandomTrucksForSamplingId(WarehouseId, NumberOfTrucks); } bool isSaved = false; SqlTransaction tran; SqlConnection connect = Connection.getConnection(); tran = connect.BeginTransaction(); AuditTrailBLL objAt = new AuditTrailBLL(); if (list == null) { return(null); } try { int i = 0; foreach (TrucksForSamplingBLL obj in list) { if (string.IsNullOrEmpty(obj.TrackingNo) == true) { break; } bool curSaved = false; obj.Id = Guid.NewGuid(); WFTransaction.UnlockTask(obj.TrackingNo); ECXWF.CMessage msg = WFTransaction.Request(obj.TrackingNo); if (msg == null) { // list.RemoveAt(i); } else { if (msg.Name == "GetTrucksReadyForSam") { curSaved = TrucksForSamplingDAL.InsertTruksForSampling(obj, tran); if (curSaved == true) { int at = -1; at = objAt.saveAuditTrail(obj, WFStepsName.GetTrucksReadyForSam.ToString(), UserBLL.GetCurrentUser(), "Add Trucks For sampling"); if (at == 1) { curSaved = true; } else { curSaved = false; } } if (curSaved == true) { // ECXWF.CMessage msg = WFTransaction.Request(obj.TrackingNo); if (msg != null) { if (msg.Name != "GetTrucksReadyForSam") { isSaved = false; throw new Exception("Invalid Task"); } else { HttpContext.Current.Session["msg"] = msg; WFTransaction.WorkFlowManager(obj.TrackingNo); filteredList.Add(obj); } } else { objAt.RoleBack(); //list.RemoveAt(i); } } else { // list.RemoveAt(i); } if (isSaved == false) { if (i == 0) { isSaved = curSaved; } else { isSaved = false; } } else { isSaved = curSaved; } i++; } else { // list.RemoveAt(i); } } } if (isSaved == true) { tran.Commit(); } else { filteredList = null; tran.Rollback(); } } catch (Exception ex) { objAt.RoleBack(); tran.Rollback(); filteredList = null; throw ex; } finally { tran.Dispose(); connect.Close(); } return(filteredList); }
public bool Confirm(List <TrucksForSamplingBLL> list) { SqlTransaction tran; SqlConnection conn; conn = Connection.getConnection(); tran = conn.BeginTransaction(); //List<MesseageTracking> msgList = new List<MesseageTracking>(); //msgList = (List<MesseageTracking>)HttpContext.Current.Session["msgList"]; try { bool isSaved = false; foreach (TrucksForSamplingBLL obj in list) { if (obj.Status == TrucksForSamplingStatus.Confirmed) { ECXWF.CMessage msg = null; try { msg = WFTransaction.Request(obj.TrackingNo.ToString().Trim()); } catch { msg = null; } if (msg != null) { if (msg.Name.Trim().ToUpper() == "ConfirmTrucksForSamp".ToUpper().Trim()) { isSaved = TrucksForSamplingDAL.UpdateConfirmation(obj, tran); if (isSaved == true) { string strNew = "(Id=" + obj.Id.ToString() + "),(Status-" + obj.Status.ToString() + "),(Remark-" + obj.Remark.ToString() + "),(LastModifiedBy-" + UserBLL.GetCurrentUser().ToString() + "),(LastModifiedTimeStamp-" + DateTime.Now.ToString() + ")"; int at = -1; AuditTrailBLL objAt = new AuditTrailBLL(); at = objAt.saveAuditTrailStringFormat("Truck Ready For Sampling Confirmed", strNew, WFStepsName.ConfirmTrucksForsamp.ToString(), UserBLL.GetCurrentUser(), "Confirm Trucks for sampling"); if (at == 1) { #region depricatedcode //var xmsg = (from c in msgList // where c.trackingNo == obj.TrackingNo // select c.message).Single(); //ECXWF.CMessage msg = (ECXWF.CMessage)xmsg; //foreach (MesseageTracking i in msgList) //{ // if (i.trackingNo.Trim().ToUpper() == obj.TrackingNo.Trim().ToUpper()) // { // msg = i.message; // } //} //if (msg == null) //{ // throw new Exception("Invalid Message Exception"); //} #endregion WFTransaction.WorkFlowManager(obj.TrackingNo.Trim(), msg); } else { isSaved = false; } } else { isSaved = false; } } else { WFTransaction.UnlockTask(obj.TrackingNo.Trim()); } } } else { TrucksMissingOnSamplingBLL objTM = new TrucksMissingOnSamplingBLL(); objTM.Id = Guid.NewGuid(); objTM.TrucksForSamplingId = obj.Id; objTM.DateTimeReported = DateTime.Now; objTM.Remark = obj.Remark; objTM.Status = TrucksMissingOnSamplingStatus.New; objTM.CreatedBy = UserBLL.GetCurrentUser(); objTM.CreatedTimestamp = DateTime.Now; objTM.WarehouseId = UserBLL.GetCurrentWarehouse(); objTM.TrackingNo = obj.TrackingNo; isSaved = objTM.Save(tran); } if (isSaved == false) { tran.Rollback(); return(false); } } tran.Commit(); } catch (Exception ex) { tran.Rollback(); throw ex; } finally { tran.Dispose(); conn.Close(); } return(true); }
public bool UpdateGradingResult(List <GradingResultDetailBLL> list, Nullable <Guid> Id, string TrackingNo) { bool isSaved = false; SqlConnection conn = Connection.getConnection(); SqlTransaction tran = conn.BeginTransaction(); this.WarehouseId = UserBLL.GetCurrentWarehouse(); if (Id != null) { try { this.ID = (Guid)Id; if (GradingResultDAL.InactivateGradingResultDetails(this.ID, tran) == true) { int at = -1; AuditTrailBLL objAt = new AuditTrailBLL(); string strNew = "(Grading Result Id -" + this.ID.ToString() + "),(LastModifiedby-" + UserBLL.GetCurrentUser().ToString() + "),(LastModifiedTimeStamp-" + DateTime.Now.ToString() + ")"; at = objAt.saveAuditTrailStringFormat("Grading Factor Details Cancelled", strNew, WFStepsName.EditGradingResultDet.ToString(), UserBLL.GetCurrentUser(), "Cancel Grading Result Detail"); if (at == -1) { tran.Rollback(); isSaved = false; } else { GradingResultBLL objGR = new GradingResultBLL(); objGR = objGR.GetGradingResultById(this.ID); if (GradingResultDAL.UpdateGradingResult(this, tran) == true) { AuditTrailBLL objAtGR = new AuditTrailBLL(); at = objAtGR.saveAuditTrail(objGR, this, WFStepsName.EditGradingResult.ToString(), UserBLL.GetCurrentUser(), "Updating Grading Result"); if (at == -1) { tran.Rollback(); isSaved = false; return(isSaved); } GradingResultDetailBLL objDetail = new GradingResultDetailBLL(); isSaved = objDetail.Add(list, tran, Id); if (isSaved == true) { //Request ECXWF.CMessage msg = WFTransaction.Request(TrackingNo); if (msg != null) { if (msg.Name == "EditGradingResult") { WFTransaction.WorkFlowManager(TrackingNo, msg); } } } if (isSaved == false) { tran.Rollback(); isSaved = false; } else { tran.Commit(); isSaved = true; } } else { tran.Rollback(); isSaved = false; } } } else { tran.Rollback(); isSaved = false; } } catch (Exception ex) { tran.Rollback(); throw ex; } finally { tran.Dispose(); conn.Close(); } } return(isSaved); }
public Nullable <Guid> InsertSample(SamplingBLL objSampling, SamplerBLL objSampler, bool isMoisture) { bool issaved = false; SqlConnection conn = null; SqlTransaction trans = null; int at = -1; Nullable <Guid> DepositeRequestId = null; try { conn = Connection.getConnection(); trans = conn.BeginTransaction(); //using (TransactionScope scope = new TransactionScope()) //{ DepositeRequestId = new Guid(SamplingDAL.InsertSample(objSampling, trans).ToString()); if (DepositeRequestId == null) { trans.Rollback(); return(null); //throw new Exception("Invalid Sample Id."); } objSampling.Id = (Guid)DepositeRequestId; AuditTrailBLL objAt = new AuditTrailBLL(); at = objAt.saveAuditTrail(objSampling, WFStepsName.AddSampleCoding.ToString(), UserBLL.GetCurrentUser(), "Get Sample Ticket"); if (at == 1) { at = -1; objSampler.SampleingTicketId = (Guid)DepositeRequestId; objSampler.Id = Guid.NewGuid(); issaved = SamplerDAL.InsertSampler(objSampler, trans); if (issaved == true) { HttpContext.Current.Session["msg"] = null; WFTransaction.UnlockTask(objSampling.TrackingNo); ECXWF.CMessage mess = WFTransaction.Request(objSampling.TrackingNo); HttpContext.Current.Session["msg"] = mess; if (mess.Name.Trim() == "GetSampleTicket".Trim()) { WFTransaction.WorkFlowManager(objSampling.TrackingNo); trans.Commit(); } else { objAt.RoleBack(); trans.Rollback(); DepositeRequestId = null; } } else { objAt.RoleBack(); trans.Rollback(); DepositeRequestId = null; } } else { trans.Rollback(); DepositeRequestId = null; throw new Exception("Unable to log Audit Trail"); } // scope.Complete(); // } } catch (Exception ex) { trans.Rollback(); DepositeRequestId = null; throw ex; } finally { trans.Dispose(); conn.Close(); } return(DepositeRequestId); }