Exemple #1
0
        public async Task <IActionResult> Insert(FeatureInsertViewModel model, FeatureItemsViewModel vm)
        {
            if (model.FeatureType != DataLayer.SSOT.FeatureTypeSSOT.Fssot)
            {
                TempData.AddResult(await _featureRepository.Insert(model));
                return(Redirect(IndexUrlWithQueryString));
            }

            var featureId = await _featureRepository.InsertFeature(model);

            vm.FeatureId = featureId.Value;
            TempData.AddResult(await _featureItemRepository.InsertFeatureItem(vm));
            return(Redirect(IndexUrlWithQueryString));
        }
        public async Task <SweetAlertExtenstion> InsertFeatureItem(FeatureItemsViewModel vm)
        {
            var lst = new List <FeatureItem>();

            foreach (var item in vm.Items)
            {
                lst.Add(new FeatureItem()
                {
                    FeatureId = vm.FeatureId,
                    Value     = item
                });
            }

            await AddRangeAsync(lst);

            return(SweetAlertExtenstion.Ok());
        }
Exemple #3
0
        public async Task <IActionResult> Update(FeatureUpdateViewModel model, FeatureItemsViewModel vm)
        {
            TempData.AddResult(await _featureRepository.UpdateAsync(model, vm));

            return(Redirect(IndexUrlWithQueryString));
        }
        /// <summary>
        /// ویرایش یک ویژگی
        /// </summary>
        /// <param name="model"></param>
        /// <param name="vmItems"></param>
        /// <returns></returns>
        public async Task <SweetAlertExtenstion> UpdateAsync(FeatureUpdateViewModel model, FeatureItemsViewModel vmItems)
        {
            try
            {
                var entity = await GetByIdAsync(model.Id);

                entity = (Feature)Mapper.Map(model, entity, typeof(FeatureUpdateViewModel), typeof(Feature));

                if (vmItems != null && vmItems.Items.Count > 0)
                {
                    //ویرایش آیتم‌‌ها
                    await _featureItemRepository.UpdateAsync(model.Id, vmItems.Items);

                    // حذف این ویژگی برای تمام محصولات
                    await _productFeatureRepository.DeleteAsync(model.Id);
                }

                await DbContext.SaveChangesAsync();

                return(SweetAlertExtenstion.Ok());
            }
            catch (Exception e)
            {
                return(SweetAlertExtenstion.Error());
            }
        }