public ActionResult InsertPicture() { Picture picture = new Picture(); _pictureService.CreatePicture(picture); ProductPictureMapping pictureMapping = new ProductPictureMapping(); pictureMapping.DisplayOrder = 0; pictureMapping.IsMainPicture = false; pictureMapping.PictureId = picture.Id; pictureMapping.ProductId = 50; _productPictureMappingService.CreateProductPictureMapping(pictureMapping); Product product = _productService.GetPhoto(); AlbumPhotoFormModel photo = Mapper.Map <Product, AlbumPhotoFormModel>(product); return(PartialView("_NewPhoto", photo)); }
public static List <ProductPictureMapping> GenerateProductPictureMappings(string pictureSeoFileName, List <Picture> pictures, Product product) { if (!string.IsNullOrEmpty(pictureSeoFileName)) { List <ProductPictureMapping> productPictureMappingList = new List <ProductPictureMapping>(); int displayOrder = 0; Picture picture = pictures.Where(p => p.SeoFilename == pictureSeoFileName).FirstOrDefault(); if (picture == null) { picture = new Picture() { PictureBinary = null, MimeType = "image/jpeg", SeoFilename = pictureSeoFileName, IsNew = false, }; } ProductPictureMapping productPictureMapping = productPictureMappingList .Where(ppm => ppm.PictureId == picture.Id && ppm.ProductId == product.Id).FirstOrDefault(); if (productPictureMapping == null) { productPictureMappingList.Add(new ProductPictureMapping() { ProductId = product.Id, PictureId = picture.Id, DisplayOrder = displayOrder, Product = product, Picture = picture }); } else { productPictureMappingList.Add(productPictureMapping); } displayOrder++; return(productPictureMappingList); } else { return(null); } }
public ActionResult ProductPictureAdd(string productId, string pictureDisplayorder, string pictureTitle, string pictureAlt, string pictureId) { if (string.IsNullOrEmpty(productId) && string.IsNullOrEmpty(pictureId)) { throw new Exception(string.Format("PictureId >> {0} and Produt >> {1}", pictureId, productId)); } Picture _pic = _pictureService.GetById(Convert.ToInt32(pictureId)); _pic.Alt = pictureAlt; _pic.Id = Convert.ToInt32(pictureId); _pic.Title = pictureTitle; _pic.OrderNo = Convert.ToInt32(pictureDisplayorder); if (_pictureService.Update(_pic)) { ProductPictureMapping _map = new ProductPictureMapping(); _map.PictureId = _pic.Id; _map.ProductId = Convert.ToInt32(productId); _productPictureMappingService.Insert(_map); } return(Json("1", JsonRequestBehavior.AllowGet)); }
public IEnumerable <ValidationResult> CanAddProductPictureMapping(ProductPictureMapping productPictureMapping) { // yield return new ValidationResult("ProductPictureMapping", "ErrorString"); return(null); }
public void EditProductPictureMapping(ProductPictureMapping productPictureMappingToEdit) { productPictureMappingRepository.Update(productPictureMappingToEdit); SaveProductPictureMapping(); }
public void CreateProductPictureMapping(ProductPictureMapping productPictureMapping) { productPictureMappingRepository.Add(productPictureMapping); SaveProductPictureMapping(); }
public JsonResult UploadImage(FormCollection collection) { bool isSavedSuccessfully = true; var id = collection["Product.Id"]; string fName = ""; try { foreach (string fileName in Request.Files) { HttpPostedFileBase file = Request.Files[fileName]; //Save file content goes here fName = file.FileName; if (file != null && file.ContentLength > 0) { var originalDirectory = new DirectoryInfo(string.Format("{0}Images\\Product\\" + User.Identity.Name.ToString() + id, Server.MapPath(@"\"))); string pathString = originalDirectory.ToString();// System.IO.Path.Combine(originalDirectory.ToString(), User.Identity.Name.ToString()); var fileName1 = Path.GetFileName(file.FileName); bool isExists = System.IO.Directory.Exists(pathString); if (!isExists) { System.IO.Directory.CreateDirectory(pathString); } var path = string.Format("{0}\\{1}", pathString, file.FileName); // file.SaveAs(path); #region [chinh sua hinh anh de khong bi xoay hinh] var bmp = new Bitmap(path); var exif = new EXIFextractor(ref bmp, "n"); // get source from http://www.codeproject.com/KB/graphics/exifextractor.aspx?fid=207371 if (exif["Orientation"] != null) { RotateFlipType flip = OrientationToFlipType(exif["Orientation"].ToString().Substring(0, 1).Trim(), path); if (flip != RotateFlipType.RotateNoneFlipNone) // don't flip of orientation is correct { bmp.RotateFlip(flip); exif.setTag(0x112, "1"); // Optional: reset orientation tag if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } bmp.Save(path, System.Drawing.Imaging.ImageFormat.Jpeg); // Dispose of the image files. bmp.Dispose(); } } #endregion } } } catch (Exception ex) { isSavedSuccessfully = false; } if (isSavedSuccessfully) { var product = _productService.GetProductById(int.Parse(id)); var pic = new Picture(); pic.IsDeleted = false; pic.Url = "/Images/Product/" + User.Identity.Name.ToString() + product.Id + "/" + fName; _pictureService.CreatePicture(pic); ProductPictureMapping mapping = new ProductPictureMapping(); mapping.ProductId = product.Id; mapping.PictureId = pic.Id; product.ProductPictureMappings.Add(mapping); _productService.EditProduct(product); return(Json(new { Message = "/Images/Product/" + User.Identity.Name.ToString() + product.Id + "/" + fName, Id = mapping.Id })); } else { return(Json(new { Message = "Error in saving file" })); } }
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")); }