Example #1
0
        public Vehicle UpdateInfo(UpsertVehicle vehicle)
        {
            TeamName          = vehicle.TeamName;
            Model             = vehicle.Model;
            ManufacturingDate = vehicle.ManufacturingDate;
            Type = vehicle.Type;

            return(this);
        }
Example #2
0
        public Race UpdateVehicleInfo(UpsertVehicle vehicle)
        {
            if (Status == RaceStatusType.Running)
                throw new Exception("Cannot update vehicle info while the race is running.");
            if (Vehicles.Any(v => v.TeamName.Equals(vehicle.TeamName)))
                throw new Exception($"Team name '{vehicle.TeamName}' is already taken.");

            Vehicles.FirstOrDefault(v => v.Id.Equals(vehicle.Id)).UpdateInfo(vehicle);

            return this;
        }
Example #3
0
        public Race AddVehicle(UpsertVehicle vehicle)
        {
            if (Status == RaceStatusType.Running)
                throw new Exception("Cannot add vehicle to the race that is running.");
            if (Vehicles.Any(v => v.TeamName.Equals(vehicle.TeamName)))
                throw new Exception($"Team name '{vehicle.TeamName}' is already taken.");

            Vehicles.Add(new Vehicle(vehicle.Id, vehicle.TeamName, vehicle.Model, vehicle.ManufacturingDate, vehicle.Type, VehicleStatus.Pending, 0, string.Empty));

            return this;
        }
Example #4
0
        public async Task UpdateVehicleInfo(UpsertVehicle vehicle)
        {
            var race = (await RaceBy(DateTime.Now.Year)).UpdateVehicleInfo(vehicle);

            await _raceRepository.Upsert(race);
        }
Example #5
0
        public async Task AddVehicle(UpsertVehicle vehicle)
        {
            var race = (await RaceBy(DateTime.Now.Year)).AddVehicle(vehicle);

            await _raceRepository.Upsert(race);
        }