public ActionResult EditProductSubCategory(ProductSubCategoryModel productSubCategoryModel, HttpPostedFileBase ImageFile) { ViewBag.BindProductCategory = _productCategoryRepository.FindBy(x => x.Status == (int)Status.Active && x.IsDeleted == false).ToList(); ResponseModel _response = new ResponseModel(); if (ModelState.IsValid) { try { // Image byte converter if (ImageFile != null) { productSubCategoryModel.DocProductSubCategory = new DocumentModel(); using (var memoryStream = new MemoryStream()) { ImageFile.InputStream.CopyTo(memoryStream); byte[] imageBytes = memoryStream.ToArray(); productSubCategoryModel.DocProductSubCategory.Filebytes = imageBytes; productSubCategoryModel.DocProductSubCategory.FileName = ImageFile.FileName; productSubCategoryModel.DocProductSubCategory.FileExtenstion = Path.GetExtension(ImageFile.FileName); } } using (var client = new HttpClient()) { // Get UserId productSubCategoryModel.ModifiedBy = UserAuthenticate.UserId; productSubCategoryModel.ModifiedDate = DateTime.Now; string apiURL = BaseUrl + "api/ApiProduct/EditProductSubCategory"; client.BaseAddress = new Uri(apiURL); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = client.PostAsJsonAsync(apiURL, productSubCategoryModel).Result; if (response.IsSuccessStatusCode) { _response = (new JavaScriptSerializer()).Deserialize <ResponseModel>(response.Content.ReadAsStringAsync().Result); // Return error message if (_response.Type.ToLower() == "error") { ViewBag.Error = _response.Message; return(View(productSubCategoryModel)); } ViewBag.Success = _response.Message; ModelState.Clear(); } else { ViewBag.Error = "Error:" + _response.Message; } } } catch (Exception ex) { ViewBag.Error = "Error:" + ex.Message; } } return(View()); }
// POST: api/Product public async Task <ActionResult <ProductModel> > PostProducts([FromBody] ProductModel model) { //string userId = User.Claims.First(c => c.Type == "UserID").Value; //var user = await _userManager.FindByIdAsync(userId);await _context.ProductSubCategories.ToListAsync(); /* * var ProductSubCategory = new ProductSubCategory() * { * ProductSubCategoryID = model.ProductSubCategoryID, * SubCategoryName = "Lotion" * }; */ //ProductSubCategory addProductSubCategory = await _context.ProductSubCategories.Single(SubC => SubC.ProductSubCategoryID == //model.ProductSubCategoryID); ProductSubCategory addProductSubCategory = await _context.ProductSubCategories.FirstOrDefaultAsync(SubC => SubC.ProductSubCategoryID == model.ProductSubCategoryID); // IList<ProductSubCategory> subCategories = await _context.ProductSubCategories.Include(SubC => SubC.ProductSubCategoryID) // .Where(SubC => SubC.ProductSubCategoryID == model.ProductSubCategoryID); var ProductSubCategoryModel = new ProductSubCategoryModel() { ProductSubCategoryID = addProductSubCategory.ProductSubCategoryID, SubCategoryName = addProductSubCategory.SubCategoryName }; //Convert.ToInt32() var Product = new Product() { Barcode = model.Barcode, ProductName = model.ProductName, ProductType = model.ProductType, Quantity = model.Quantity, Description = model.Description, UnitPrice = model.UnitPrice, Features = model.Features, Usage = model.Usage, BillingAddress = model.BillingAddress, TC = model.TC, ImageUrl = model.ImageUrl, Category = model.Category, ProductSubCategoryID = model.ProductSubCategoryID, ProductSubCategory = addProductSubCategory }; try { await _context.Products.AddAsync(Product); await _context.SaveChangesAsync(); return(Ok(new JsonResult("The Product was Added Successfully"))); } catch (Exception ex) { throw ex; } }
public HttpResponseMessage CreateProductSubCategory(ProductSubCategoryModel productSubCategoryModel) { ResponseModel _response = new ResponseModel(); var _getSubCategory = _productSubCategoryRepository.FindBy(x => x.ProductSubCategoryName.Trim().ToLower() == productSubCategoryModel.ProductSubCategoryName.Trim().ToLower() && x.ProductCategoryId == productSubCategoryModel.ProductCategoryId && x.Status == (int)Status.Active && x.IsDeleted == false).FirstOrDefault(); if (_getSubCategory != null) { _response.Type = "error"; _response.Message = "Brand already Exist"; return(Request.CreateResponse(HttpStatusCode.OK, _response)); } var model = Mapper.Map <ProductSubCategoryModel, ProductSubCategory>(productSubCategoryModel); model.CreatedDate = DateTime.Now; model.Status = 1; model.IsDeleted = false; var Result = _productSubCategoryRepository.CreateProductSubCategory(model); if (Result != null) { // For Uploading image ---- if (productSubCategoryModel.DocProductSubCategory != null) { UploadDocumentModel UploadDocument = new UploadDocumentModel(); UploadDocument.documents = new List <DocumentModel>(); UploadDocument.ImageSize = 250; UploadDocument.ImageQuality = 250; UploadDocument.documents.Add(productSubCategoryModel.DocProductSubCategory); List <string> uploadedFileName = SavePicture(UploadDocument); if (uploadedFileName.Count > 0) { ProductSubCategory _productSubCategory = _productSubCategoryRepository.FindBy(x => x.ProductSubCategoryId == Result.ProductSubCategoryId).FirstOrDefault(); if (_productSubCategory != null) { _productSubCategory.ProductSubCategoryImagePath = uploadedFileName[0].ToString(); _productSubCategoryRepository.Update(_productSubCategory); _productSubCategoryRepository.SaveChanges(); } } } _response.Type = "success"; _response.Message = "Brand created successfully"; return(Request.CreateResponse(HttpStatusCode.OK, _response)); } else { _response.Type = "error"; _response.Message = "Something went wrong"; return(Request.CreateResponse(HttpStatusCode.OK, _response)); } }
public HttpResponseMessage EditProductSubCategory(ProductSubCategoryModel productSubCategoryModel) { ResponseModel _response = new ResponseModel(); var _getSubCategory = _productSubCategoryRepository.FindBy(x => x.ProductSubCategoryId != productSubCategoryModel.ProductSubCategoryId && x.ProductCategoryId == productSubCategoryModel.ProductCategoryId && x.ProductSubCategoryName.Trim().ToLower() == productSubCategoryModel.ProductSubCategoryName.Trim().ToLower() && x.Status == (int)Status.Active && x.IsDeleted == false).FirstOrDefault(); if (_getSubCategory != null) { _response.Type = "error"; _response.Message = "Brand already Exist"; return(Request.CreateResponse(HttpStatusCode.OK, _response)); } // var model = Mapper.Map<ProductSubCategoryModel, ProductSubCategory>(productSubCategoryModel); var _productSubCategory = _productSubCategoryRepository.FindBy(x => x.ProductSubCategoryId == productSubCategoryModel.ProductSubCategoryId).FirstOrDefault(); _productSubCategory.ProductSubCategoryId = productSubCategoryModel.ProductSubCategoryId; _productSubCategory.ProductCategoryId = productSubCategoryModel.ProductCategoryId; _productSubCategory.ProductSubCategoryName = productSubCategoryModel.ProductSubCategoryName; _productSubCategory.ModifiedBy = productSubCategoryModel.ModifiedBy; _productSubCategory.ModifiedDate = DateTime.Now; var IsResponse = _productSubCategoryRepository.EditProductSubCategory(_productSubCategory); if (IsResponse) { // For Uploading image ---- if (productSubCategoryModel.DocProductSubCategory != null) { UploadDocumentModel UploadDocument = new UploadDocumentModel(); UploadDocument.documents = new List <DocumentModel>(); UploadDocument.ImageSize = 250; UploadDocument.ImageQuality = 250; UploadDocument.documents.Add(productSubCategoryModel.DocProductSubCategory); List <string> uploadedFileName = SavePicture(UploadDocument); if (uploadedFileName.Count > 0) { if (_productSubCategory != null) { // delete exiting images string ImgPath = System.Web.Hosting.HostingEnvironment.MapPath("~/Images/UploadImg/" + _productSubCategory.ProductSubCategoryImagePath); if (System.IO.File.Exists(ImgPath)) { System.IO.File.Delete(ImgPath); } string ImgOriginalPath = System.Web.Hosting.HostingEnvironment.MapPath("~/Images/UploadImg/" + "Original_" + _productSubCategory.ProductSubCategoryImagePath); if (System.IO.File.Exists(ImgOriginalPath)) { System.IO.File.Delete(ImgOriginalPath); } string TImgPath = System.Web.Hosting.HostingEnvironment.MapPath("~/Images/UploadImg/" + "T" + _productSubCategory.ProductSubCategoryImagePath); if (System.IO.File.Exists(TImgPath)) { System.IO.File.Delete(TImgPath); } //------------------------------ _productSubCategory.ProductSubCategoryImagePath = uploadedFileName[0].ToString(); _productSubCategoryRepository.Update(_productSubCategory); _productSubCategoryRepository.SaveChanges(); } } } _response.Type = "success"; _response.Message = "Brand updated successfully"; return(Request.CreateResponse(HttpStatusCode.OK, _response)); } else { _response.Type = "error"; _response.Message = "Something went wrong"; return(Request.CreateResponse(HttpStatusCode.OK, _response)); } }