private void CreateFillups(Vehicle vehicle, FillupData data) { int odometer = data.Mileage; DateTime date = data.Date; Double unitsModifier = data.Units; Double distanceModifier = data.Distance; int[] randomArray = RandomizeArray(new[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }); int currentIndex = 0; var random = new Random(); bool isFirst = true; while (date < DateTime.Now) { int dataIndex = randomArray[currentIndex]; var distance = (int)(_distance[dataIndex] * distanceModifier); var fillup = new FillupEntry { Date = date, Odometer = odometer, PricePerUnit = _price[dataIndex], TotalUnits = _units[dataIndex] * unitsModifier, TransactionFee = _fee[dataIndex], VehicleId = vehicle.VehicleId, Vendor = _vendor[dataIndex] }; if (isFirst) { isFirst = false; fillup.Distance = null; } else { fillup.Distance = distance; } odometer += distance; currentIndex += 1; if (currentIndex > 11) { currentIndex = 0; } date = date.AddDays(random.Next(3, 14)); _fillups.Create(vehicle.UserId, vehicle.VehicleId, fillup); } }
private void CreateFillups(Vehicle vehicle, FillupData data) { int odometer = data.Mileage; DateTime date = data.Date; Double unitsModifier = data.Units; Double distanceModifier = data.Distance; int[] randomArray = RandomizeArray(new[] {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}); int currentIndex = 0; var random = new Random(); bool isFirst = true; while (date < DateTime.Now) { int dataIndex = randomArray[currentIndex]; var distance = (int) (_distance[dataIndex]*distanceModifier); var fillup = new FillupEntry { Date = date, Odometer = odometer, PricePerUnit = _price[dataIndex], TotalUnits = _units[dataIndex]*unitsModifier, TransactionFee = _fee[dataIndex], VehicleId = vehicle.VehicleId, Vendor = _vendor[dataIndex] }; if (isFirst) { isFirst = false; fillup.Distance = null; } else { fillup.Distance = distance; } odometer += distance; currentIndex += 1; if (currentIndex > 11) { currentIndex = 0; } date = date.AddDays(random.Next(3, 14)); _fillups.Create(vehicle.UserId, vehicle.VehicleId, fillup); } }