Пример #1
0
 public void Put(string id, [FromBody] ImageBO image)
 {
     if (id == image.Id)
     {
         _image.Update(image);
     }
 }
Пример #2
0
        public ImageBO Update(ImageBO image)
        {
            Image _image = imageConverter.Convert(image);

            _context.Entry(_image).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
            _context.SaveChanges();
            return(imageConverter.Convert(_image));
        }
Пример #3
0
        public ImageBO Create(ImageBO image)
        {
            Image _image = imageConverter.Convert(image);

            _context.Images.Add(_image);
            _context.SaveChanges();
            return(imageConverter.Convert(_image));
        }
Пример #4
0
        public Image Convert(ImageBO i)
        {
            if (i == null)
            {
                return(null);
            }
            Image image = new Image
            {
                Description = i.Description,
                Id          = i.Id,
                Name        = i.Name,
                Url         = i.Url
            };

            return(image);
        }
Пример #5
0
        //------------------- E.D.I.T.--------------------------------------------
        public static async Task EditEntityAsync(AuctionEditVM editVM, AuctionBO auctionBO, object userId, HttpPostedFileBase upload) //
        {
            var editBO = mapper.Map <AuctionBO>(editVM);                                                                              //1)из формы

            EditEntity(auctionBO, editBO, 0);

            //2)Product-----------------
            ProductBO productBO = DependencyResolver.Current.GetService <ProductBO>();

            productBO = productBO.LoadAll().FirstOrDefault(p => p.Title == editVM.Title);
            ProductBO productEdit = mapper.Map <ProductBO>(editVM);

            EditEntity(productBO, productEdit, 1);

            //3)BetAuction----------
            BetAuctionBO betAuctionBO = DependencyResolver.Current.GetService <BetAuctionBO>();

            betAuctionBO = betAuctionBO.LoadAll().Where(b => b.AuctionId == auctionBO.Id && b.ClientId == auctionBO.ActorId).FirstOrDefault();
            BetAuctionBO betEdit = mapper.Map <BetAuctionBO>(editVM);

            EditEntity(betAuctionBO, betEdit, 4);

            //4)Image----------------
            ImageBO imageBO = null;

            if (upload != null)
            {
                imageBO = DependencyResolver.Current.GetService <ImageBO>();
                imageBO = imageBO.LoadAll().FirstOrDefault(i => i.Id == auctionBO.Product.ImageId);
                if (imageBO != null)
                {
                    Image   image       = CreateImageEntity(editVM, upload, true); //true->edit
                    ImageBO editImageBO = mapper.Map <ImageBO>(image);
                    EditEntity(imageBO, editImageBO, 3);
                    imageBO.Save(imageBO);

                    //4)~recurs           //при редактир. нет новой записи ->переустанов. ссылок не треб.
                    //productBO.ImageId = newImageBO.Id;
                    productBO.Image = imageBO;
                }
            }
            productBO.Save(productBO);
            auctionBO.Product = productBO;
            auctionBO.Save(auctionBO);
        }
        //+Edit
        public ActionResult Create(AuctionEditVM data, int?imageId)  //data, imageId - возвр. JSON ajax-метод Detai.html->click("Edit")
        {
            var accountId = Session["accountId"] ?? 0;

            if ((int)accountId == 0)
            {  //Create
                return(RedirectToAction("Index", new { alert = "Вы сейчас не можете создать лот. Залогинтесь!" }));
            }
            //сначала надо проверить явл. ли юзер moder'om?
            var roleAccountLinks = db.RoleAccountLinks.Where(r => r.AccountId == (int)accountId && r.Role.RoleName.Contains("moder")).ToList();

            if (roleAccountLinks == null || roleAccountLinks.Count() == 0)
            {
                return(RedirectToAction("Index", new { alert = "Вы пока не можете создать лот. Проверте ваш баланс!" }));
            }
            else
            {      //Edit
                if (data != null && data.Id != 0)
                {
                    var     imageBO = DependencyResolver.Current.GetService <ImageBO>();
                    ImageVM imageVM = null;
                    if (imageId != null)
                    {
                        ImageBO image = imageBO.Load((int)imageId);
                        imageVM = mapper.Map <ImageVM>(image);
                    }
                    //подготов. данных для 2го захода->потом из ajax снова  в этот контроллер, в котор. вызвать объект из сессии
                    Session["editImg"]     = imageVM;
                    Session["auctionEdit"] = data;
                    return(new JsonResult {
                        Data = "Форма редактирования подготовлена!", JsonRequestBehavior = JsonRequestBehavior.AllowGet
                    });
                }
                //данные для 2-го захода
                var editVM = Session["auctionEdit"];
                ViewBag.editImg = Session["editImg"];
                ViewBag.Title   = "Edit";
                return(View(editVM));
            }
        }
        protected void btnDelete_Click(object sender, EventArgs e)
        {
            int vlId = int.Parse(this.hdnSelectedID.Value);

            if (vlId > 0)
            {
                using (TransactionScope ts = new TransactionScope())
                {
                    try
                    {
                        VisualLayoutBO objVisualLayout = new VisualLayoutBO(this.ObjContext);
                        objVisualLayout.ID = vlId;
                        objVisualLayout.GetObject();

                        List <ImageBO> lstVisualLayoutImages = objVisualLayout.ImagesWhereThisIsVisualLayout;

                        foreach (ImageBO image in lstVisualLayoutImages)
                        {
                            ImageBO objImage = new ImageBO(this.ObjContext);
                            objImage.ID = image.ID;
                            objImage.GetObject();

                            objImage.Delete();
                            this.ObjContext.SaveChanges();
                        }

                        List <VisualLayoutAccessoryBO> lstVisualLayoutAccessory = objVisualLayout.VisualLayoutAccessorysWhereThisIsVisualLayout;
                        foreach (VisualLayoutAccessoryBO Accessory in lstVisualLayoutAccessory)
                        {
                            VisualLayoutAccessoryBO objVisualLayoutAccessory = new VisualLayoutAccessoryBO(this.ObjContext);
                            objVisualLayoutAccessory.ID = Accessory.ID;
                            objVisualLayoutAccessory.GetObject();

                            objVisualLayoutAccessory.Delete();
                            this.ObjContext.SaveChanges();
                        }

                        // Delete from Visual Layout Fabric table records befor deleting Visual layout
                        List <VisualLayoutFabricBO> lstVisualLayoutFabrics = objVisualLayout.VisualLayoutFabricsWhereThisIsVisualLayout;
                        foreach (VisualLayoutFabricBO fabric in lstVisualLayoutFabrics)
                        {
                            VisualLayoutFabricBO objVisualLayoutFabric = new VisualLayoutFabricBO(this.ObjContext);
                            objVisualLayoutFabric.ID = fabric.ID;
                            objVisualLayoutFabric.GetObject();

                            objVisualLayoutFabric.Delete();
                            this.ObjContext.SaveChanges();
                        }

                        objVisualLayout.Delete();
                        this.ObjContext.SaveChanges();
                        ts.Complete();

                        //Delete
                        try
                        {
                            string folderLocation = IndicoConfiguration.AppConfiguration.PathToDataFolder + "\\VisualLayout\\" + vlId.ToString();
                            if (Directory.Exists(folderLocation))
                            {
                                Directory.Delete(folderLocation, true);
                            }
                        }
                        catch { }
                    }
                    catch (Exception ex)
                    {
                        IndicoLogging.log.Error("Error occured while deleting visual layout", ex);
                    }
                }

                this.PopulateVisualLayouts();
            }
        }
Пример #8
0
 public ImageBO Post([FromBody] ImageBO image)
 {
     return(_image.Create(image));
 }