private WageRate GetActualRate(WageRateTypes wageRateType) { if (source.DriverOfOurCar) { return(wageParameterItem.GetRateForOurs(source.RouteListDate, wageRateType)); } else { return(wageParameterItem.GetRateForMercenaries(source.RouteListDate, wageRateType)); } }
private WageRate GetActualRate(List <WageRateNode> rateNodes, DateTime date, WageRateTypes wageRateType) { var lastestRate = rateNodes.Where(x => x.Rate.WageRateType == wageRateType) .First(x => x.Date == null); var actualRate = (rateNodes .Where(x => x.Rate.WageRateType == wageRateType) .Where(x => x.Date != null) .Where(x => x.Date > date) .OrderBy(x => x.Date) .FirstOrDefault() ?? lastestRate).Rate; return(actualRate); }
public WageRateNode(WageRateTypes wageRateType, decimal forDriverWithForwarder, decimal forDriverWithoutForwarder, decimal forForwarder) { Date = null; Rate = new WageRate(wageRateType, forDriverWithForwarder, forDriverWithoutForwarder, forForwarder); }
public WageRateNode(DateTime date, WageRateTypes wageRateType, decimal forDriverWithForwarder, decimal forDriverWithoutForwarder, decimal forForwarder) { Date = date; Rate = new WageRate(wageRateType, forDriverWithForwarder, forDriverWithoutForwarder, forForwarder); }
public virtual WageRate GetRateForOurs(DateTime date, WageRateTypes wageRateType) { return(GetActualRate(wageRatesOur, date, wageRateType)); }
public virtual WageRate GetRateForMercenaries(DateTime date, WageRateTypes wageRateType) { return(GetActualRate(wageRatesMercenaries, date, wageRateType)); }
public virtual WageRate GetRateForRaskat(DateTime date, WageRateTypes wageRateType) { return(GetActualRate(_wageRatesRaskat, date, wageRateType)); }