public void AddCar(CarDTO car, IFormFileCollection fileCollection, string defaultWebPath) { CarDTO findCar = _mapper.Map <CarDTO>(Database.CarsRepository.GetCarsByPredicate( c => c.Name == car.Name && c.Color == car.Color && c.YearCreate == car.YearCreate) ); RepeatException ex; if (findCar != null) { ex = new RepeatException("Данный продукт уже имеется на складе.", "Желаете ли сложить количество продуктов?", false); throw ex; } if (fileCollection == null) { throw new ValidationException("Коллекция фото пуста, пожалуйста добавьте фото!", ""); } string path = defaultWebPath + @"\Images\Companies\" + findCar.CompanyName + @"\Cars\" + findCar.CarClassName + @"\" + findCar.Name; IEnumerable <ImageDTO> images = ImagesControl.AddImages(path, fileCollection); Database.CarsRepository.Add(_mapper.Map <CarEntity>(car)); Database.ImagesRepository.Add(_mapper.Map <IEnumerable <ImageEntity> >(images)); Database.Save(); }
public void UpdateCar(CarDTO car, IFormFileCollection fileCollection, string defaultWebPath) { string path = defaultWebPath + @"\Images\Companies\" + car.CompanyName + @"\Cars\" + car.CarClassName + @"\" + car.Name; IEnumerable <ImageDTO> images = ImagesControl.UpdateImages(path, fileCollection); Database.CarsRepository.Update(_mapper.Map <CarEntity>(car)); Database.ImagesRepository.Update(_mapper.Map <IEnumerable <ImageEntity> >(images)); Database.Save(); }
public void DeleteCar(int carId, string defaultWebPath) { CarEntity car = Database.CarsRepository.GetCarByID(carId); if (car != null) { Database.CarsRepository.Delete(car); string path = defaultWebPath + @"\Images\Companies\" + car.CompanyName + @"\Cars\" + car.CarClassName + @"\" + car.Name; ImagesControl.DeleteImages(path); Database.ImagesRepository.Delete(carId); } else { throw new ValidationException("Автомобиль с данным ключом отсутствует!", ""); } Database.Save(); }