public System.Data.SqlClient.SqlTransaction SaveTruck(GINTruckInfo truck, System.Data.SqlClient.SqlTransaction transaction) { IGINProcess originalGIN = new GINProcessBLL(currentGINProcess.GINProcessInformation.TransactionId); currentGINProcess.SaveTruck(truck, transaction); //ConfirmNoConcurrency(Truck, Load, Weight) var truckChanges = (from oTruck in originalGIN.GINProcessInformation.Trucks where oTruck.TruckId == truck.TruckId select new object[] { oTruck, truck, AuditTrailWrapper.ExistingRecord }); try { AuditTrailWrapper atw = new AuditTrailWrapper(AuditTrailWrapper.TruckRegistration, truckChanges.ToArray(), "GIN Process"); if (!atw.Save()) { transaction.Rollback(); throw new Exception("Failed to save audit trail!"); } } catch (Exception ex) { transaction.Rollback(); throw ex; } return(transaction); }
protected void btnAddTruck_Click(object sender, EventArgs e) { GINDataEditor2.IsNew = true; GINTruckInfo blankTruck = ginProcess.GetBlankTruck(); blankTruck.TransactionId = (string)transferedData.GetTransferedData("TransactionId"); GINDataEditor2.DataSource = blankTruck; GINDataEditor2.DataBind(); mpeTruckDataEditorExtender.Show(); }
public static void CompleteLoading(Guid truckId) { //check if page being processed outside a workflow context PageDataTransfer transferedData = new PageDataTransfer(HttpContext.Current.Request.Path); IGINProcess ginProcess = GetGINProcess(true); SqlTransaction transaction = null; try { AuditTrailWrapper auditTrail = new AuditTrailWrapper(AuditTrailWrapper.TruckLoading, "GIN Process"); //GINInfo originalGIN = new GINInfo(); //originalGIN.Copy(ginProcess.GINProcessInformation.Trucks[0].GIN); transaction = ginProcess.CompleteLoading(truckId); GINTruckInfo theTruck = ginProcess.GINProcessInformation.Trucks.Find(trk => trk.TruckId == truckId); foreach (var loadedStack in theTruck.Load.Stacks) { InventoryServices.GetInventoryService().LoadFromStack(loadedStack.StackId, loadedStack.Bags, 0, transaction); auditTrail.AddChange( new TruckLoadInfo(), new TruckLoadInfo(loadedStack.TruckId, theTruck.Load.DateLoaded, theTruck.Load.BagType, string.Empty), AuditTrailWrapper.NewRecord); if (!auditTrail.Save()) { throw new Exception("Unable to log audit trail"); } } //auditTrail.AddChange(originalGIN, ginProcess.GINProcessInformation.Trucks[0].GIN); //if (!auditTrail.Save()) // throw new Exception("Failed to save audit trail!"); CompleteWorkflowTask(ginProcess.GINProcessInformation.Trucks[0].TransactionId); //CompleteWorkflowTask(ginProcess.GINProcessInformation.Trucks[0].TransactionId); transaction.Commit(); } catch (Exception ex) { try { if (transaction != null) { transaction.Rollback(); } } catch (Exception ex2) { throw ex2; } throw ex; } }
public System.Data.SqlClient.SqlTransaction SaveScaling(Guid truckId) { IGINProcess originalGIN = new GINProcessBLL(currentGINProcess.GINProcessInformation.TransactionId); SqlTransaction transaction = currentGINProcess.SaveScaling(truckId); //ConfirmNoConcurrency(Truck) var truckChanges = (from oTruck in originalGIN.GINProcessInformation.Trucks join cTruck in currentGINProcess.GINProcessInformation.Trucks on oTruck.TruckId equals cTruck.TruckId where oTruck.TruckId == truckId select new object[] { oTruck, cTruck, AuditTrailWrapper.ExistingRecord }); GINTruckInfo origTruck = (GINTruckInfo)truckChanges.Single()[0]; GINTruckInfo currTruck = (GINTruckInfo)truckChanges.Single()[1]; try { AuditTrailWrapper atw = new AuditTrailWrapper(AuditTrailWrapper.TruckWeighing, truckChanges.ToArray(), "GIN Process"); atw.AddChange(origTruck.GIN, currTruck.GIN, AuditTrailWrapper.ExistingRecord); atw.AddChange(origTruck.Weight, currTruck.Weight, AuditTrailWrapper.ExistingRecord); //newly added returned bags and added bags var newRBs = (from cRB in currTruck.Weight.ReturnedBags where !(from oRB in origTruck.Weight.ReturnedBags select oRB.TruckId).Contains(cRB.ReturnedBagsId) select new object[] { null, cRB, AuditTrailWrapper.NewRecord }); atw.AddChange(newRBs.ToArray()); //existing returned bags and added bags var existingRBs = (from oRB in origTruck.Weight.ReturnedBags join cRB in currTruck.Weight.ReturnedBags on oRB.ReturnedBagsId equals cRB.ReturnedBagsId select new object[] { oRB, cRB, AuditTrailWrapper.ExistingRecord }); atw.AddChange(existingRBs.ToArray()); if (!atw.Save()) { transaction.Rollback(); throw new Exception("Failed to save audit trail!"); } } catch (Exception ex) { transaction.Rollback(); throw ex; } return(transaction); }
public static void NotifyGIN(Guid truckId) { IGINProcess ginProcess = GetGINProcess(true); ILookupSource lookup = ginProcess.LookupSource; GINProcessInfo ginProcessInfo = ginProcess.GINProcessInformation; GINTruckInfo truck = (from trk in ginProcessInfo.Trucks where trk.TruckId == truckId select trk).Single(); ECXCD.WR wr = new WarehouseApplication.ECXCD.WR(); wr.SaveGIN( truck.GIN.GINId, truck.GIN.GINNo, ginProcessInfo.PickupNoticeId, Convert.ToDouble(truck.GIN.GrossWeight), Convert.ToDouble(truck.GIN.NetWeight), Convert.ToDouble(truck.GIN.Quantity), truck.GIN.DateIssued, truck.GIN.SignedByClient, truck.GIN.DateApproved, truck.GIN.ApprovedBy, truck.Load.Remark + Environment.NewLine + truck.Weight.Remark, lookup.GetLookup("GINStatus")[truck.GIN.Status]); }
protected void TruckDataEditor_Ok(object sender, EventArgs e) { try { GINTruckInfo ginTruck = (GINTruckInfo)DriverDataEditor.DataSource; TruckInfo mainTruck = (TruckInfo)TruckDataEditor.DataSource; TruckInfo trailer = (TruckInfo)TrailerDataEditor.DataSource; if (mainTruck.IsNew && (mainTruck.PlateNo != string.Empty)) { if (!new TruckRegisterBLL() { Id = mainTruck.TruckId, IsTrailer = false, Status = TruckStatus.Active, TrackingNo = string.Empty, TruckModelYearId = mainTruck.TruckModelYearId, TruckNumber = mainTruck.PlateNo }.Add()) { ; } //throw new Exception("Unable to register truck"); } if (trailer.IsNew && (trailer.PlateNo != string.Empty)) { if (!new TruckRegisterBLL() { Id = trailer.TruckId, IsTrailer = true, Status = TruckStatus.Active, TrackingNo = string.Empty, TruckModelYearId = trailer.TruckModelYearId, TruckNumber = trailer.PlateNo }.Add()) { ; } // throw new Exception("Unable to register trailer"); } ginTruck.MainTruckId = mainTruck.TruckId; ginTruck.TrailerId = trailer.TruckId; ginTruck.PlateNo = mainTruck.PlateNo; ginTruck.TrailerNo = trailer.PlateNo; if (TruckDataEditor.IsNew) { ginProcess.AddTruck(ginTruck); TruckGridViewer.DataSource = ginProcess.GINProcessInformation.RegisteredTrucks; TruckGridViewer.DataBind(); updatePanel.Update(); } else { var editedTruck = from truck in ginProcess.GINProcessInformation.Trucks where truck.TruckId == ginTruck.TruckId select truck; if (editedTruck.Count() > 0) { editedTruck.ElementAt(0).Copy(ginTruck); TruckGridViewer.DataSource = ginProcess.GINProcessInformation.RegisteredTrucks; TruckGridViewer.DataBind(); updatePanel.Update(); } } } catch (Exception ex) { errorDisplayer.ShowErrorMessage(ex.Message); } mpeTruckDataEditorExtender.Hide(); }
public void AddTruck(GINTruckInfo truck) { currentGINProcess.AddTruck(truck); }
public void ValidateTruck(GINTruckInfo truck) { currentGINProcess.ValidateTruck(truck); }
public System.Data.SqlClient.SqlTransaction CreateTruck(GINTruckInfo truck) { return(currentGINProcess.CreateTruck(truck)); }
public LeavingTruck(GINTruckInfo truck) { this.truck = truck; }