Пример #1
0
        public void Update(string Id, OwnedCarModel updatedModel)
        {
            var car = Context.OwnedCars.FirstOrDefault(x => x.Vin == Id);

            car.Nickname = updatedModel.Nickname;
            Context.SaveChanges();
        }
Пример #2
0
        public OwnedCarModel Get(string Vin)
        {
            var userId   = this.currentUserService.UserId();
            var ownedCar = Context.OwnedCars.FirstOrDefault(x => x.Vin == Vin /* && x.UserId == userId*/);

            if (ownedCar == null)
            {
                throw new KeyNotFoundException("Coult not find Car");
            }
            var carModel = this.vinService.GetCar(ownedCar.Vin);

            ownedCar.MileageRecordings = Context.MileageRecordings.Where(x => x.OwnedCarId == ownedCar.Id).ToList();

            var result = new OwnedCarModel()
            {
                Base     = carModel,
                Vin      = ownedCar.Vin,
                Mileage  = ownedCar.MileageRecordings?.OrderByDescending(x => x.RecordingDate).FirstOrDefault()?.Mileage ?? "0",
                Nickname = ownedCar.Nickname ?? ""
            };

            return(result);
        }
Пример #3
0
        public Page <OwnedCarModel> GetForUser(string UserId)
        {
            var userCars = Context.OwnedCars
                           .Where(x => x.UserId == UserId)
                           .ToList();
            var results = userCars
                          .Select(x =>
            {
                var car      = new OwnedCarModel();
                car.Base     = this.vinService.GetCar(x.Vin);
                car.Vin      = x.Vin;
                car.Mileage  = x.MileageRecordings?.OrderByDescending(z => z.RecordingDate)?.FirstOrDefault()?.Mileage ?? "0";
                car.Nickname = x.Nickname ?? "";
                car.EstimatedCurrentMileage = this.mileageService.EstimateCurrent(x.Vin);
                return(car);
            })
                          .ToList();

            return(new Page <OwnedCarModel>()
            {
                Count = results.Count(),
                Items = results
            });
        }
Пример #4
0
 public IActionResult UpdateCar(string Id, [FromBody] OwnedCarModel model) =>
 ReturnResult(() => this.carService.Update(Id, model));