// GET: ItemForSale/Delete/5
        public ActionResult Delete(int id)
        {
            Items_for_sale item  = null;
            Car            car   = null;
            House          house = null;

            try { item = Db.Items_for_sale.Single(i => i.item_id == id); }
            catch (Exception e) { }

            try { car = Db.Cars.Single(i => i.car_id == id); }
            catch (Exception e) { }

            try { house = Db.Houses.Single(i => i.house_id == id); }
            catch (Exception e) { }

            if (item != null)
            {
                sale                          sale            = Db.sales.Single(s => s.sales_id == item.sales_id);
                List <Comment>                itemComments    = Db.Comments.Where(c => c.sales_id == item.sales_id).ToList();
                List <Likes_for_sale_item>    likesComments   = Db.Likes_for_sale_item.Where(c => c.sales_id == item.sales_id).ToList();
                List <Dislikes_for_sale_item> dislikeComments = Db.Dislikes_for_sale_item.Where(c => c.sales_id == item.sales_id).ToList();

                foreach (var comment in itemComments)
                {
                    Db.Comments.Remove(comment);
                }
                foreach (var like in likesComments)
                {
                    Db.Likes_for_sale_item.Remove(like);
                }
                foreach (var dislike in dislikeComments)
                {
                    Db.Dislikes_for_sale_item.Remove(dislike);
                }
                Db.sales.Remove(sale);
                Db.Items_for_sale.Remove(item);
            }
            else if (house != null)
            {
                sale sale = Db.sales.Single(s => s.sales_id == house.sales_id);
                Db.sales.Remove(sale);
                Db.Houses.Remove(house);
            }
            else if (car != null)
            {
                sale sale = Db.sales.Single(s => s.sales_id == car.sales_id);
                Db.sales.Remove(sale);
                Db.Cars.Remove(car);
            }

            Db.SaveChanges();
            return(RedirectToAction("FindItemForSale"));
        }
        public ActionResult PostItemForSale(Items_for_sale item)
        {
            try
            {
                string extension = Path.GetExtension(item.ImageFile.FileName);
                if (item.ImageFile != null)
                {
                    string filename = Path.GetFileNameWithoutExtension(item.ImageFile.FileName);
                    filename             = filename + DateTime.Now.ToString("yymmssfff") + extension;
                    item.item_image_path = "~/UploadedPictures/Items_Pictures/" + filename;
                    filename             = Path.Combine(Server.MapPath("~/UploadedPictures/Items_Pictures/"), filename);
                    item.ImageFile.SaveAs(filename);
                }
                else
                {
                    var            types = Db.Item_type.ToList();
                    Items_for_sale mItem = new Items_for_sale();
                    mItem.item_Types = types;
                    PostItemViewModel model = new PostItemViewModel
                    {
                        User = (User)Session["user"],
                        Item = mItem
                    };
                    return(View(model));
                }

                sale newSale = new sale();
                sale added   = Db.sales.Add(newSale);
                User user    = (User)Session["user"];
                item.user_id      = user.user_id;
                item.availability = true;
                item.sales_id     = added.sales_id;
                item.date_added   = DateTime.UtcNow.Date;
                Db.Items_for_sale.Add(item);
                Db.SaveChanges();
                ModelState.Clear();
                return(RedirectToAction("UserDashboard", "User"));
            }
            catch (Exception e)
            {
                var            types = Db.Item_type.ToList();
                Items_for_sale mItem = new Items_for_sale();
                mItem.item_Types = types;
                PostItemViewModel model = new PostItemViewModel
                {
                    User = (User)Session["user"],
                    Item = mItem
                };
                return(View(model));
            }
        }
        // GET: ItemForSale/Edit/5
        public ActionResult Edit(int id)
        {
            var            types = Db.Item_type.ToList();
            Items_for_sale mItem = Db.Items_for_sale.Single(i => i.item_id == id);

            mItem.item_Types = types;
            PostItemViewModel model = new PostItemViewModel
            {
                User = (User)Session["user"],
                Item = mItem
            };

            return(View(model));
        }
        // GET: ItemForSale/Create
        public ActionResult PostItemForSale()
        {
            if (Session["UserId"] != null)
            {
                var            types = Db.Item_type.ToList();
                Items_for_sale item  = new Items_for_sale();
                item.item_Types = types;
                PostItemViewModel model = new PostItemViewModel
                {
                    User = (User)Session["user"],
                    Item = item
                };
                return(View(model));

                ;
            }

            return(RedirectToAction("Login", "User"));
        }
        public ActionResult Edit(int id, Items_for_sale item)
        {
            Items_for_sale myItem = Db.Items_for_sale.Single(i => i.item_id == id);

            try
            {
                if (item.ImageFile != null)
                {
                    string filename  = Path.GetFileNameWithoutExtension(item.ImageFile.FileName);
                    string extension = Path.GetExtension(item.ImageFile.FileName);
                    filename = filename + DateTime.Now.ToString("yymmssfff") + extension;
                    myItem.item_image_path = "~/UploadedPictures/Items_Pictures/" + filename;
                    filename = Path.Combine(Server.MapPath("~/UploadedPictures/Items_Pictures/"), filename);
                    item.ImageFile.SaveAs(filename);
                }
                myItem.availability     = item.availability;
                myItem.item_name        = item.item_name;
                myItem.item_description = item.item_description;
                myItem.item_type_id     = item.item_type_id;
                myItem.price_per_item   = item.price_per_item;

                Db.SaveChanges();
                ModelState.Clear();
                return(RedirectToAction("FindItemForSale", "ItemForSale"));
            }
            catch (Exception e)
            {
                var            types = Db.Item_type.ToList();
                Items_for_sale mItem = new Items_for_sale();
                mItem.item_Types = types;
                PostItemViewModel model = new PostItemViewModel
                {
                    User = (User)Session["user"],
                    Item = mItem
                };
                return(View(model));
            }
        }
コード例 #6
0
        public ActionResult ViewComment(int id, int type)
        {
            try
            {
                CommentViewModel cm   = new CommentViewModel();
                User             user = (User)Session["user"];
                if (type == 1)
                {
                    Items_for_sale item = Db.Items_for_sale.Single(i => i.sales_id == id);
                    cm.item = item;
                    cm.User = user;
                    Comment comment = new Comment();
                    cm.comment = comment;
                }
                else if (type == 2)
                {
                    Car item = Db.Cars.Single(i => i.sales_id == id);
                    cm.item = item;
                    cm.User = user;
                    Comment comment = new Comment();
                    cm.comment = comment;
                }
                else
                {
                    House item = Db.Houses.Single(i => i.sales_id == id);
                    cm.item = item;
                    cm.User = user;
                }

                return(View(cm));
            }
            catch (Exception e)
            {
                return(RedirectToAction("Login", "User"));
            }
        }