コード例 #1
0
        protected void NewLevelImageButton_Click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            int quantity = 0;
            decimal amount = 0m;
            if (!int.TryParse(QuantityTextBox.Text, out quantity))
            {
                MessageBox1.ShowError("Quantity must be numeric.");
            }

            if (!decimal.TryParse(PriceTextBox.Text, out amount))
            {
                MessageBox1.ShowError("Price must be a monetary amount.");
            }

            List<ProductVolumeDiscount> volumeDiscounts = MTApp.CatalogServices.VolumeDiscounts.FindByProductId((string)ViewState["id"]);
            ProductVolumeDiscount volumeDiscount = null;
            foreach (ProductVolumeDiscount item in volumeDiscounts)
            {
                if (item.Qty == quantity)
                {
                    volumeDiscount = item;
                }
            }
            if (volumeDiscount == null)
            {
                volumeDiscount = new ProductVolumeDiscount();
            }

            volumeDiscount.DiscountType = ProductVolumeDiscountType.Amount;
            volumeDiscount.Amount = amount;
            volumeDiscount.Qty = quantity;
            volumeDiscount.ProductId = (string)ViewState["id"];

            bool result = false;
            if (volumeDiscount.Bvin == string.Empty)
            {
                result = MTApp.CatalogServices.VolumeDiscounts.Create(volumeDiscount);
            }
            else
            {
                result = MTApp.CatalogServices.VolumeDiscounts.Update(volumeDiscount);
            }
            if (result)
            {
                MessageBox1.ShowOk("Volume Discount Updated");
                QuantityTextBox.Text = "";
                PriceTextBox.Text = "";
            }
            else
            {
                MessageBox1.ShowError("Error occurred while inserting new volume discount");
            }
            BindGridViews();
        }
コード例 #2
0
        // Create or Update
        public override string PostAction(string parameters, System.Collections.Specialized.NameValueCollection querystring, string postdata)
        {
            string data = string.Empty;
            string bvin = FirstParameter(parameters);
            ApiResponse<ProductVolumeDiscountDTO> response = new ApiResponse<ProductVolumeDiscountDTO>();

            ProductVolumeDiscountDTO postedItem = null;
            try
            {
                postedItem = MerchantTribe.Web.Json.ObjectFromJson<ProductVolumeDiscountDTO>(postdata);
            }
            catch (Exception ex)
            {
                response.Errors.Add(new ApiError("EXCEPTION", ex.Message));
                return MerchantTribe.Web.Json.ObjectToJson(response);
            }

            ProductVolumeDiscount item = new ProductVolumeDiscount();
            item.FromDto(postedItem);

            if (bvin == string.Empty)
            {
                if (MTApp.CatalogServices.VolumeDiscounts.Create(item))
                {
                    bvin = item.Bvin;
                }
            }
            else
            {
                MTApp.CatalogServices.VolumeDiscounts.Update(item);
            }
            ProductVolumeDiscount resultItem = MTApp.CatalogServices.VolumeDiscounts.Find(bvin);
            if (resultItem != null) response.Content = resultItem.ToDto();

            data = MerchantTribe.Web.Json.ObjectToJson(response);
            return data;
        }