public ActionResult SubmitProperty(submitPropertyModel model, string place = "mp") { var temp = _productService.GetProductById(model.Product.Id); temp.ProductCategoryMappings.FirstOrDefault().ProductCategoryId = model.CategoryId; try { temp.Slug = StringConvert.ConvertShortName(model.Product.Name) + "-" + model.Product.Id; } catch (Exception) { return(RedirectToAction("SubmitProperty", new { Id = temp.Id, place = place })); } temp.ColorId = model.Product.ColorId; temp.CodeName = model.Product.CodeName; temp.OldPrice = model.CategoryId; temp.Content = model.Product.Content; temp.Description = model.Product.Description; temp.IsHomePage = true; temp.IsNew = model.Product.IsNew; temp.IsPublic = model.Product.IsPublic; temp.Name = model.Product.Name; temp.Deleted = false; temp.OrginalPrice = model.Product.OrginalPrice; foreach (var item in model.Product.ProductAttributeMappings) { if (item.Value != null) { temp.ProductAttributeMappings.Where(p => p.Id == item.Id).FirstOrDefault().Value = item.Value; } else { temp.ProductAttributeMappings.Where(p => p.Id == item.Id).FirstOrDefault().Value = "0"; } } temp.ProductAttributeMappings.Where(m => m.ProductAttributeId == 30).FirstOrDefault().Value = model.Product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 30).FirstOrDefault().Value; temp.LastEditedTime = DateTime.Now; if (!temp.ProductPictureMappings.Any()) { var pic = new Picture(); pic.IsDeleted = false; pic.Url = "/Images/vin_hom_tan_cang.jpg"; _pictureService.CreatePicture(pic); ProductPictureMapping mapping = new ProductPictureMapping(); mapping.ProductId = temp.Id; mapping.PictureId = pic.Id; temp.ProductPictureMappings.Add(mapping); } //foreach (var item in temp.ProductPictureMappings) //{ //model.Product.ProductPictureMappings.Add(item); //} try { _productService.EditProduct(temp); } catch (Exception) { return(RedirectToAction("SubmitProperty", new { Id = temp.Id, place = place })); } if (place.Equals("wp")) { return(RedirectToAction("WaitingProperty")); } else if (place.Equals("mp")) { return(RedirectToAction("MyProperty")); } else if (place.Equals("fe")) { return(Redirect("/san-pham/" + temp.Slug)); } else if (place.Equals("am")) { return(Redirect("/Admin/Product")); } else if (place != "") { return(Redirect(place)); } return(RedirectToAction("MyProperty")); }
public ActionResult SubmitProperty(int?Id, string place) { var user = GetInfo(); Product product = new Product(); submitPropertyModel model = new submitPropertyModel(); ViewBag.place = place == ""?"mp":place; if (User.IsInRole("SuperAdmin")) { model.ListColor = _colorService.GetColors().Where(p => !p.isDelete).OrderBy(h => h.Name).ToSelectListItems(-1); } else { model.ListColor = _colorService.GetColors().Where(p => !p.isDelete && p.StaffUserName.Equals(user.UserName)).OrderBy(h => h.Name).ToSelectListItems(-1); } var existed = _productAttributeMappingService.GetProductAttributeMappings().Where(p => p.Value.Equals(User.Identity.Name)).Where(p => !p.Product.IsHomePage).FirstOrDefault(); if (Id != null)//edit product { product = _productService.GetProductById(int.Parse(Id.ToString())); //model.ListColor = _colorService.GetColors().Where(p => p.StaffUserName.Equals(user.UserName)).ToSelectListItems(product.ColorId); if (User.IsInRole("SuperAdmin")) { model.ListColor = _colorService.GetColors().Where(p => !p.isDelete).OrderBy(h => h.Name).ToSelectListItems(product.ColorId); } else { model.ListColor = _colorService.GetColors().Where(p => p.StaffUserName.Equals(user.UserName)).OrderBy(h => h.Name).ToSelectListItems(product.ColorId); } model.listCategory = _productCategoryService.GetProductCategories().ToSelectListItems(product.ProductCategoryMappings.FirstOrDefault().ProductCategoryId); model.Product = product; model.Product.OrginalPrice = model.Product.OrginalPrice; model.CategoryId = product.ProductCategoryMappings.FirstOrDefault().ProductCategoryId; model.Lat = product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 26).FirstOrDefault().Value; model.Long = product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 27).FirstOrDefault().Value; return(View(model)); } if (existed != null) { model.listCategory = _productCategoryService.GetProductCategories().ToSelectListItems(existed.Product.ProductCategoryMappings.FirstOrDefault().ProductCategoryId); model.Product = existed.Product; model.Product.OrginalPrice = model.Product.OrginalPrice; model.CategoryId = model.Product.ProductCategoryMappings.FirstOrDefault().ProductCategoryId; model.Lat = model.Product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 26).FirstOrDefault().Value; model.Long = model.Product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 27).FirstOrDefault().Value; return(View(model)); } model.listCategory = _productCategoryService.GetProductCategories().ToSelectListItems(-1); product.Deleted = false; product.IsHomePage = false; //Add ProductAttribute after product created product.ProductAttributeMappings = new Collection <ProductAttributeMapping>(); var listAttributeId = _productAttributeService.GetProductAttributes().Select(p => p.Id); foreach (var id in listAttributeId) { product.ProductAttributeMappings.Add( new ProductAttributeMapping() { ProductAttributeId = id, ProductId = product.Id, Value = "0" }); } //nhap thong tin chu so huu mac dinh if (model.ListColor.ToList().FirstOrDefault() == null) { product.ColorId = 1; ViewBag.noti = "Bạn Vui Lòng Tạo Chủ sở hữu trước khi tạo Bất Động Sản"; return(RedirectToAction("Index", "Owner")); } else { product.ColorId = int.Parse(model.ListColor.ToList().FirstOrDefault().Value); } //nhap thong tin nguoi tao var users = GetInfo(); product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 19).FirstOrDefault().Value = users.UserName; product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 20).FirstOrDefault().Value = users.FirstName == null? users.UserName: users.FirstName; product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 21).FirstOrDefault().Value = users.PhoneNumber == null ? users.UserName : users.PhoneNumber; product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 22).FirstOrDefault().Value = users.Email == null ? users.UserName : users.Email; product.ProductAttributeMappings.Where(p => p.ProductAttributeId == 23).FirstOrDefault().Value = users.Skype == null ? users.UserName : users.Skype; _productService.CreateProduct(product); model.Product = product; model.Lat = "10.778557"; model.Long = "106.622344"; //tao category ProductCategoryMapping obj = new ProductCategoryMapping(); obj.ProductId = product.Id; obj.ProductCategoryId = 1; _productCategoryMappingService.CreateProductCategoryMapping(obj); return(View(model)); }