Example #1
0
        public async Task <IActionResult> Edit(AdminCarBindingModel model)
        {
            const string redirectLocation = "Index";

            var serviceModel = Mapper.Map <CarServiceModel>(model);

            await this.AddPicturesToServiceModel(serviceModel, model);

            try
            {
                if (model.IsNew)
                {
                    await this.adminCarsService.EditAsync <NewCar>(serviceModel);
                }
                else
                {
                    await this.adminCarsService.EditAsync <UsedCar>(serviceModel);
                }
            }
            catch (RepositoryUpdateNoRowsAffectedException)
            {
                return(RedirectToAction(redirectLocation));
            }

            await this.cacheService.RemoveAsync(WebConstants.CacheCarsType);

            return(RedirectToAction(redirectLocation));
        }
Example #2
0
        public async Task <IActionResult> AddNew(AdminCarBindingModel model)
        {
            var serviceModel = Mapper.Map <CarServiceModel>(model);

            await this.AddPicturesToServiceModel(serviceModel, model);

            if (model.Mileage > 0)
            {
                await this.adminCarsService.CreateNewAsync <UsedCar>(serviceModel);
            }
            else
            {
                await this.adminCarsService.CreateNewAsync <NewCar>(serviceModel);
            }

            await this.cacheService.RemoveAsync(WebConstants.CacheCarsType);

            return(Redirect(WebConstants.AdminCarsUrl));
        }
Example #3
0
        public async Task <IActionResult> AddNew()
        {
            var engines = await this.adminEnginesService.GetAll().To <SelectListItem>().ToArrayAsync();

            var fuelTypes = await this.adminFuelTypesService.GetAll().To <SelectListItem>().ToArrayAsync();

            var modelTypes = await this.adminModelTypesService.GetAll().To <SelectListItem>().ToArrayAsync();

            var series = await this.adminSeriesService.GetAll().To <SelectListItem>().ToArrayAsync();

            var options = await this.adminOptionsService.GetAll().To <SelectListItem>().ToArrayAsync();

            var model = new AdminCarBindingModel()
            {
                Engines    = engines,
                FuelTypes  = fuelTypes,
                ModelTypes = modelTypes,
                Series     = series,
                Options    = options
            };

            return(View(model));
        }
Example #4
0
        private async Task AddPicturesToServiceModel(CarServiceModel serviceModel, AdminCarBindingModel model)
        {
            var publicIds = await this.cloudinaryService.UploadPicturesAsync(model.Pictures);

            serviceModel.Pictures = Mapper.Map <ICollection <PictureServiceModel> >(publicIds);
        }