Esempio n. 1
0
 public ProductQuantity(ProductQuantityViewModel productQuantityVm)
 {
     ProductId = productQuantityVm.ProductId;
     SizeId    = productQuantityVm.SizeId;
     ColorId   = productQuantityVm.ColorId;
     Quantity  = productQuantityVm.Quantity;
 }
 public HttpResponseMessage Create(HttpRequestMessage request, ProductQuantityViewModel productQuantityVm)
 {
     return(CreateHttpResponse(request, () =>
     {
         HttpResponseMessage response = null;
         if (!ModelState.IsValid)
         {
             response = request.CreateResponse(HttpStatusCode.BadRequest, ModelState);
         }
         else
         {
             var newQuantity = new ProductQuantity();
             if (_productQuantityService.CheckExist(productQuantityVm.ProductId, productQuantityVm.SizeId, productQuantityVm.ColorId))
             {
                 return request.CreateErrorResponse(HttpStatusCode.BadRequest, "Màu sắc kích thước cho sản phẩm này đã tồn tại");
             }
             else
             {
                 newQuantity.UpdateProductQuantity(productQuantityVm);
                 _productQuantityService.Add(newQuantity);
                 _productQuantityService.Save();
             }
         }
         return response;
     }));
 }
        public IActionResult UpdateStock(ProductQuantityViewModel model)
        {
            var response = _product.QuantityUpdate(model);

            if (!response.IsSuccess)
            {
                return(UnprocessableEntity(response.Message));
            }
            return(Json(response));
        }
Esempio n. 4
0
        public ActionResult EditQuantity(ProductQuantityViewModel obj)
        {
            obj.IsEdit     = true;
            obj.ListColors = ListColors();
            obj.ListSizes  = ListSizes();
            var content = _viewRenderService.RenderToStringAsync("Product/_AddEditQuantityModal", obj);

            return(Json(new JsonResponse
            {
                Success = true,
                Message = Constants.GetDataSuccess,
                StatusCode = Utilities.Constants.StatusCode.GetDataSuccess,
                Data = content.Result,
            }));
        }
        public async Task <IActionResult> Update([FromBody] ProductQuantityViewModel productQuantityVm)
        {
            var hasPermission = await _authorizationService.AuthorizeAsync(User, "PRODUCT", Operations.Update);

            if (hasPermission.Succeeded == false)
            {
                return(new BadRequestObjectResult(CommonConstants.Forbidden));
            }
            if (ModelState.IsValid)
            {
                _productQuantityService.Update(productQuantityVm);
                _productQuantityService.SaveChanges();
                return(new OkObjectResult(productQuantityVm));
            }
            return(new BadRequestObjectResult(ModelState));
        }
Esempio n. 6
0
        public IActionResult ProductDetails(int id, int quantity = 1)
        {
            Product product = _shopService.GetProduct(id);

            if (String.IsNullOrEmpty(product.Name))
            {
                return(NotFound());
            }
            ProductQuantityViewModel model = new ProductQuantityViewModel()
            {
                Product  = product,
                Quantity = quantity
            };

            return(View(model));
        }
Esempio n. 7
0
        public DbResponse <ProductQuantitySetUpdateReturnModel> QuantityUpdate(ProductQuantityViewModel model)
        {
            try
            {
                _db.Product.QuantityUpdate(model);
                _db.SaveChanges();

                _db.Product.UpdateMainQuantity(model.ProductId);

                var quantitySet = _db.Product.GetQuantitySetById(model.ProductQuantitySetId);

                var data = _mapper.Map <ProductQuantitySetUpdateReturnModel>(quantitySet);
                data.StockQuantity = _db.Product.GetStock(model.ProductId);

                return(new DbResponse <ProductQuantitySetUpdateReturnModel>(true, "Success", data));
            }
            catch (Exception e)
            {
                return(new DbResponse <ProductQuantitySetUpdateReturnModel>(false, e.Message));
            }
        }
Esempio n. 8
0
        public IActionResult AddQuantity()
        {
            var lstColors = ListColors();
            var lstSizes  = ListSizes();
            var model     = new ProductQuantityViewModel()
            {
                IsEdit     = false,
                ListColors = lstColors,
                ListSizes  = lstSizes
            };

            var content = _viewRenderService.RenderToStringAsync("Product/_AddEditQuantityModal", model);

            return(Json(new JsonResponse
            {
                Success = true,
                Message = Constants.GetDataSuccess,
                StatusCode = Utilities.Constants.StatusCode.GetDataSuccess,
                Data = content.Result,
            }));
        }
Esempio n. 9
0
        public HttpResponseMessage Create(HttpRequestMessage request, ProductQuantityViewModel productQuantityVm)
        {
            if (ModelState.IsValid)
            {
                var newQuantity            = new ProductQuantity();
                var identity               = (ClaimsIdentity)User.Identity;
                IEnumerable <Claim> claims = identity.Claims;
                try
                {
                    if (_productQuantityService.CheckExist(productQuantityVm.ProductId, productQuantityVm.SizeId, productQuantityVm.ColorId))
                    {
                        return(request.CreateErrorResponse(HttpStatusCode.BadRequest, "Màu sắc kích thước cho sản phẩm này đã tồn tại"));
                    }
                    else
                    {
                        newQuantity.UpdateProductQuantity(productQuantityVm);

                        _productQuantityService.Add(newQuantity);
                        _productQuantityService.Save();
                        Log log = new Log()
                        {
                            AppUserId = claims.FirstOrDefault().Value,
                            Content   = Notification.CREATE_PRODUCTQUANTITY,
                            Created   = DateTime.Now
                        };
                        _logService.Create(log);
                        _logService.Save();
                        return(request.CreateResponse(HttpStatusCode.OK, productQuantityVm));
                    }
                }
                catch (Exception dex)
                {
                    return(request.CreateErrorResponse(HttpStatusCode.BadRequest, dex.Message));
                }
            }
            else
            {
                return(request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }
        }
Esempio n. 10
0
 public async Task <IActionResult> SaveItemQuantity(ProductQuantityViewModel model)
 {
     if (ModelState.IsValid)
     {
         model.Size  = _sizeService.GetAll().FirstOrDefault(m => m.Id == model.SizeId);
         model.Color = _colorService.GetAll().FirstOrDefault(m => m.Id == model.ColorId);
         return(Json(new JsonResponse()
         {
             Success = true,
             Message = Constants.SaveDataSuccess,
             Data = await _viewRenderService.RenderToStringAsync("Product/_TableQuantity", model)
         }));
     }
     return(Json(new JsonResponse
     {
         Success = false,
         Message = Constants.SaveDataFailed,
         Errors = ModelState.Where(modelState => modelState.Value.Errors.Count > 0).ToDictionary(
             kvp => kvp.Key,
             kvp => kvp.Value.Errors.Select(e => e.ErrorMessage).FirstOrDefault()
             )
     }));
 }
Esempio n. 11
0
 public void Add(ProductQuantityViewModel productQuantityVm)
 {
     _produtQuantityRepository.Add(_mapper.Map <ProductQuantity>(productQuantityVm));
 }
Esempio n. 12
0
 public void Update(ProductQuantityViewModel productQuantityVm)
 {
     _produtQuantityRepository.Update(_mapper.Map <ProductQuantity>(productQuantityVm));
 }