public ActionResult GetProductPrice(ProductPriceRequestModel model)
        {
            var productPriceData = _priceService.GetProductPriceThresholdByAccountId(model.ProductId, model.AccountId);
            var product          = _productServices.GetProductMasterById(model.ProductId);

            return(Json(new { productPriceData.MinimumThresholdPrice, productPriceData.SellPrice, ProductTaxID = product.GlobalTax.TaxID, product.AllowModifyPrice }, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
        public JsonResult _SaveDetail(OrderDetail model, ProductDetailRequest productRequest)
        {
            if (productRequest != null && productRequest.IsNewProduct && productRequest.ProductName != null)
            {
                var product = StockTakeApiService.CreateProductOnStockTake(productRequest);
                model.ProductId = product.Result.ProductId;
            }

            model = _commonDbServices.SetDetails(model, productRequest.AccountId, Request.UrlReferrer.AbsolutePath, productRequest.ProcessByType);

            if (Request.UrlReferrer.AbsolutePath.Contains("SalesOrder") && model.ProductId > 0 && model.OrderDetailID < 1)
            {
                var minPrice = _productPriceService.GetProductPriceThresholdByAccountId(model.ProductId, productRequest != null ? productRequest.AccountId : 0);
                if (model.Price < minPrice.MinimumThresholdPrice)
                {
                    minPrice.Success          = false;
                    model.OrderDetailStatusId = (int)OrderStatusEnum.AwaitingAuthorisation;
                    if (productRequest.ThresholdAcknowledged)
                    {
                        UpdatedOrderDetails(model, productRequest.CaseQuantity, productRequest.PageSessionToken);
                        return(Json(new { error = "" }, JsonRequestBehavior.AllowGet));
                    }
                    return(Json(new { error = minPrice.FailureMessage, Threshold = minPrice }, JsonRequestBehavior.AllowGet));
                }
            }

            UpdatedOrderDetails(model, productRequest.CaseQuantity, productRequest.PageSessionToken, productRequest.IsTransferAdd);
            return(Json(new { error = "" }, JsonRequestBehavior.AllowGet));
        }