public HttpResponseMessage Create(HttpRequestMessage request, List <FileImageViewModel> fileImageVm) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; foreach (var item in fileImageVm) { _fileImageService.DeleteMutiImage(item.ProductImageID); if (!String.IsNullOrEmpty(item.FileName)) { var image = ConvertData.Base64ToImage(item.FileName); string extension = GetFileExtension.GetExtension(item.FileName); Guid id = Guid.NewGuid(); string time = DateTime.Now.Millisecond.ToString(); string fileName = id.ToString() + time + "." + extension; string filePath = Path.Combine(HttpContext.Current.Server.MapPath("~/fileman/Uploads/") + CommonConstants.PathProduct + "/" + fileName); image.Save(filePath, ImageFormat.Jpeg); //_fileImageService.DeleteMutiImage(item.ProductImageID); var fileImage = new FileImage(); fileImage.FileName = fileName; fileImage.Extension = "." + extension; fileImage.ProductImageID = item.ProductImageID; _fileImageService.Add(fileImage); response = request.CreateResponse(HttpStatusCode.OK, fileImage); } } _fileImageService.Save(); return response; })); }
public HttpResponseMessage Update(HttpRequestMessage request) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; if (!ModelState.IsValid) { request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } else { var productJson = HttpContext.Current.Request.Unvalidated.Form["product"]; if (productJson == null) { response = request.CreateErrorResponse(HttpStatusCode.BadRequest, "Vui lòng cung cấp dữ liệu."); } var productVm = new JavaScriptSerializer { MaxJsonLength = Int32.MaxValue, RecursionLimit = 100 }.Deserialize <ProductViewModel>(productJson); var product = new Product(); product.UpdateProduct(productVm); // Xử lý tag. if (productVm.TagsVm != null) { string[] mylist = productVm.TagsVm.Select(x => x.Name).ToArray(); var checkDuplicate = new HashSet <string>(mylist); product.Tags = string.Join(",", checkDuplicate); } // Convert chuỗi image. if (!String.IsNullOrEmpty(productVm.Image)) { string extension = GetFileExtension.GetExtension(productVm.Image); var image = ConvertData.Base64ToImage(productVm.Image); product.Image = product.ID + "_" + product.Name + "." + extension; string filePath = Path.Combine(HttpContext.Current.Server.MapPath("~/fileman/Uploads/") + CommonConstants.PathProduct + "/" + product.Image); image.Save(filePath, ImageFormat.Jpeg); } product.UpdatedDate = DateTime.Now; product.UpdatedBy = User.Identity.Name; _productService.Update(product); _productService.Save(); // Xử lý nhóm sản phẩm. if (productVm.Groups != null) { var lstProductGroup = new List <ProductGroup>(); foreach (var group in productVm.Groups) { lstProductGroup.Add(new ProductGroup() { ProductID = product.ID, GroupID = group.ID }); } _groupService.AddProductToGroups(lstProductGroup, product.ID); _groupService.Save(); } //if (productVm.MoreImages != null) //{ // foreach (var item in productVm.MoreImages) // { // if (!String.IsNullOrEmpty(item)) // { // var image = ConvertData.Base64ToImage(item); // string extension = GetFileExtension.GetExtension(item); // Guid id = Guid.NewGuid(); // string fileName = id.ToString() + "_" + product.Name + "." + extension; // string filePath = Path.Combine(HttpContext.Current.Server.MapPath("~/fileman/Uploads/") // + CommonConstants.PathProduct + "/" + fileName); // image.Save(filePath, ImageFormat.Jpeg); // _fileImageService.DeleteMutiImage(product.ID); // var fileImage = new FileImage() // { // FileName = fileName, // Extension = "." + extension, // ProdutImageID = product.ID // }; // _fileImageService.Add(fileImage); // } // } //} //_fileImageService.Save(); var responseData = Mapper.Map <Product, ProductViewModel>(product); response = request.CreateResponse(HttpStatusCode.OK, responseData); } return response; })); }
public void GetExtension_FileNameStringArrayInput_ReturnSringArrayOfExtensionNames(string[] arr, string[] expected) { var actual = GetFileExtension.GetExtension(arr); Assert.Equal(expected, actual); }