//Interface static FinanceFactory() { _TerminalConfigs = new DriverCompDS(); _DriverEquip = new DriverCompDS(); _AdjustmentTypes = new DriverCompDS(); _LastRoutes = new DriverCompDS(); }
public DataSet ToDataSet() { //Return a dataset containing values for this object DriverCompDS ds = new DriverCompDS(); ds.TerminalConfigurationTable.AddTerminalConfigurationTableRow(this.mAgentNumber, this.mAgentName, this.mGLNumber, this.mAdminGLNumber, this.mAdminFee, this.mFSBase); ds.AcceptChanges(); return(ds); }
private DriverCompDS readDriverRoutes() { //Get a list of all driver routes for this terminal and date range DriverCompDS routes = null; try { routes = new DriverCompDS(); DataSet ds = this.mMediator.FillDataset(App.USP_DRIVERROUTES, App.TBL_DRIVERROUTES, new object[] { this.AgentNumber, this.StartDate.ToString("yyyy-MM-dd"), this.EndDate.ToString("yyyy-MM-dd") }); ds.Tables[App.TBL_DRIVERROUTES].Columns.Add("IsNew", typeof(bool), "IsNewRoute=1"); if (ds.Tables[App.TBL_DRIVERROUTES].Rows.Count > 0) { routes.Merge(ds); } } catch (ApplicationException ex) { throw ex; } catch (Exception ex) { throw new ApplicationException("Unexpected error while reading driver routes...", ex); } return(routes); }
public DriverComp(string terminalID, string terminal, DateTime start, DateTime end, Mediator mediator) { //Constructor try { this.mMediator = mediator; this.mAgentNumber = terminalID; this.mAgentName = terminal; this.mStart = start; this.mEnd = end; this.mRoutesDS = new DriverCompDS(); this.mCompDS = new DriverCompDS(); this.mRates = new DriverRates(this.mEnd, this.mAgentNumber, this.mAgentName); this.mTerminalConfig = FinanceFactory.GetTerminalConfiguration(this.mAgentNumber); RefreshDriverRoutes(); RefreshRoadshowRoutes(); } catch (ApplicationException ex) { throw ex; } catch (Exception ex) { throw new ApplicationException("Failed to instantiate a new ship schedule.", ex); } }
public void RefreshDriverRoutes() { //Add all driver routes (from database) to the compensation try { this.mCompDS.Clear(); this.mCompDS.DriverRouteTable.BeginLoadData(); DriverCompDS routes = readDriverRoutes(); for (int i = 0; i < routes.DriverRouteTable.Rows.Count; i++) { //Iterate through each saved route and build the viewable dataset (this.mCompDS) DriverCompDS.DriverRouteTableRow _route = (DriverCompDS.DriverRouteTableRow)routes.DriverRouteTable.Rows[i]; if (this.mCompDS.DriverCompTable.Select("Operator='" + _route.Operator + "'").Length == 0) { //Operator not added yet- add the summary record for this operator DriverCompDS.DriverCompTableRow sumComp = this.mCompDS.DriverCompTable.NewDriverCompTableRow(); #region Set members sumComp.Select = _route.IsExportedNull(); sumComp.IsNew = sumComp.IsCombo = sumComp.IsAdjust = false; sumComp.AgentNumber = _route.AgentNumber; sumComp.FinanceVendorID = _route.FinanceVendorID; sumComp.FinanceVendor = _route.Payee; sumComp.Operator = _route.Operator; //sumComp.EquipmentTypeID = _route.EquipmentTypeID; sumComp.Miles = sumComp.Trip = sumComp.Stops = sumComp.Cartons = sumComp.Pallets = sumComp.PickupCartons = 0; sumComp.MilesAmount = sumComp.DayAmount = sumComp.TripAmount = sumComp.StopsAmount = sumComp.CartonsAmount = sumComp.PalletsAmount = sumComp.PickupCartonsAmount = sumComp.Amount = 0.0M; sumComp.FSCMiles = 0; sumComp.FuelCost = sumComp.FSCGal = sumComp.FSCBaseRate = sumComp.FSC = 0.0M; sumComp.MinimunAmount = sumComp.AdminCharge = sumComp.AdjustmentAmount1 = sumComp.AdjustmentAmount2 = sumComp.TotalAmount = 0.0M; #endregion this.mCompDS.DriverCompTable.AddDriverCompTableRow(sumComp); //Add all routes for this operator DriverCompDS.DriverRouteTableRow[] _routes = (DriverCompDS.DriverRouteTableRow[])routes.DriverRouteTable.Select("AgentNumber=" + _route.AgentNumber + " AND Operator='" + _route.Operator + "'"); for (int j = 0; j < _routes.Length; j++) { DriverCompDS.DriverRouteTableRow dayComp = this.mCompDS.DriverRouteTable.NewDriverRouteTableRow(); #region Set members dayComp.ID = _routes[j].ID; dayComp.IsNew = _routes[j].IsNew; dayComp.IsCombo = (routes.DriverRouteTable.Select("Operator='" + _route.Operator + "' AND RouteDate='" + _routes[j].RouteDate + "'").Length > 1); dayComp.IsAdjust = _routes[j].RouteName.Contains("ADJUST"); dayComp.AgentNumber = _routes[j].AgentNumber; dayComp.FinanceVendorID = _routes[j].FinanceVendorID; dayComp.EquipmentTypeID = _routes[j].EquipmentTypeID; dayComp.RouteDate = _routes[j].RouteDate; dayComp.RouteName = _routes[j].RouteName; dayComp.Operator = _routes[j].Operator; dayComp.Payee = _routes[j].Payee; dayComp.RateTypeID = _routes[j].RateTypeID; dayComp.Miles = _routes[j].Miles; dayComp.MilesBaseRate = _routes[j].MilesBaseRate; dayComp.MilesRate = _routes[j].MilesRate; dayComp.MilesAmount = _routes[j].MilesAmount; dayComp.DayRate = _routes[j].DayRate; dayComp.DayAmount = _routes[j].DayAmount; dayComp.Trip = _routes[j].Trip; dayComp.TripRate = _routes[j].TripRate; dayComp.TripAmount = _routes[j].TripAmount; dayComp.Stops = _routes[j].Stops; dayComp.StopsRate = _routes[j].StopsRate; dayComp.StopsAmount = _routes[j].StopsAmount; dayComp.Cartons = _routes[j].Cartons; dayComp.CartonsRate = _routes[j].CartonsRate; dayComp.CartonsAmount = _routes[j].CartonsAmount; dayComp.Pallets = _routes[j].Pallets; dayComp.PalletsRate = _routes[j].PalletsRate; dayComp.PalletsAmount = _routes[j].PalletsAmount; dayComp.PickupCartons = _routes[j].PickupCartons; dayComp.PickupCartonsRate = _routes[j].PickupCartonsRate; dayComp.PickupCartonsAmount = _routes[j].PickupCartonsAmount; dayComp.FSCMiles = _routes[j].IsFSCMilesNull() ? 0 : _routes[j].FSCMiles; dayComp.FuelCost = _routes[j].FuelCost; dayComp.FSCGal = _routes[j].FSCGal; dayComp.FSCBaseRate = _routes[j].FSCBaseRate; dayComp.FSC = _routes[j].FSC; dayComp.MinimunAmount = _routes[j].MinimunAmount; dayComp.AdminCharge = _routes[j].AdminCharge; dayComp.AdjustmentAmount1 = _routes[j].AdjustmentAmount1; dayComp.AdjustmentAmount1TypeID = _routes[j].AdjustmentAmount1TypeID; dayComp.AdjustmentAmount2 = _routes[j].AdjustmentAmount2; dayComp.AdjustmentAmount2TypeID = _routes[j].AdjustmentAmount2TypeID; dayComp.TotalAmount = _routes[j].TotalAmount; dayComp.Imported = _routes[j].Imported; if (!_routes[j].IsExportedNull()) { dayComp.Exported = _routes[j].Exported; } dayComp.LastUpdated = _routes[j].LastUpdated; dayComp.UserID = _routes[j].UserID; #endregion this.mCompDS.DriverRouteTable.AddDriverRouteTableRow(dayComp); } //Compute summary compensation UpdateSummary(_route.Operator); } } this.mCompDS.AcceptChanges(); this.mCompDS.DriverRouteTable.EndLoadData(); } catch (ApplicationException ex) { throw ex; } catch (Exception ex) { throw new ApplicationException("Unexpected error...", ex); } finally { if (this.DriverRoutesChanged != null) { this.DriverRoutesChanged(this, EventArgs.Empty); } } }
public bool Update() { //Update bool result = false; try { //Updated routes DriverCompDS routes = (DriverCompDS)this.mCompDS.GetChanges(DataRowState.Modified); if (routes != null && routes.DriverRouteTable.Rows.Count > 0) { //Update all modified routes foreach (DriverCompDS.DriverRouteTableRow route in routes.DriverRouteTable.Rows) { try { result = updateDriverRoute(route); if (result) { route.AcceptChanges(); } else { route.RejectChanges(); } } catch (Exception) { route.RejectChanges(); System.Windows.Forms.MessageBox.Show("Failed to update route (" + route.RouteDate.ToShortDateString() + ", " + route.Operator, "Route Update", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); } } } //Deleted routes routes = (DriverCompDS)this.mCompDS.GetChanges(DataRowState.Deleted); if (routes != null && routes.DriverRouteTable.Rows.Count > 0) { //Delete all deleted routes DriverCompDS.DriverRouteTableRow route = null; for (int i = routes.DriverRouteTable.Rows.Count - 1; i >= 0; i--) { try { route = (DriverCompDS.DriverRouteTableRow)routes.DriverRouteTable.Rows[i]; route.RejectChanges(); if (!route.IsImportedNull()) { result = deleteDriverRoute(route); } else { result = true; } if (result) { route.Delete(); route.AcceptChanges(); } } catch (Exception) { System.Windows.Forms.MessageBox.Show("Failed to update route (" + route.RouteDate.ToShortDateString() + ", " + route.Operator, "Route Update", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); } } } this.mCompDS.AcceptChanges(); RefreshRoadshowRoutes(); } catch (Exception ex) { this.mCompDS.RejectChanges(); throw new ApplicationException("Unexpected error while updating driver route...", ex); } return(result); }