コード例 #1
0
        public ZCRMInventoryLineItem GetZCRMInventoryLineItem(JObject lineItemJSON)
        {
            JObject productDetails         = (JObject)lineItemJSON["product"];
            long    lineItemId             = Convert.ToInt64(lineItemJSON["id"]);
            ZCRMInventoryLineItem lineItem = ZCRMInventoryLineItem.GetInstance(lineItemId);

            ZCRMRecord product = ZCRMRecord.GetInstance("Products", Convert.ToInt64(productDetails["id"]));

            product.LookupLabel         = (string)productDetails["name"];
            lineItem.Product            = product;
            lineItem.Description        = (string)lineItemJSON["product_description"];
            lineItem.Quantity           = Convert.ToDouble(lineItemJSON["quantity"]);
            lineItem.ListPrice          = Convert.ToDouble(lineItemJSON["list_price"]);
            lineItem.UnitPrice          = Convert.ToDouble(lineItemJSON["unit_price"]);
            lineItem.Total              = Convert.ToDouble(lineItemJSON["total"]);
            lineItem.Discount           = Convert.ToDouble(lineItemJSON["Discount"]);
            lineItem.TotalAfterDiscount = Convert.ToDouble(lineItemJSON["tota_after_discount"]);
            lineItem.TaxAmount          = Convert.ToDouble(lineItemJSON["Tax"]);
            JArray lineTaxes = (JArray)lineItemJSON["line_tax"];

            foreach (JObject lineTax in lineTaxes)
            {
                ZCRMTax tax = ZCRMTax.GetInstance((string)lineTax["name"]);
                tax.Percentage = Convert.ToDouble(lineTax["percentage"]);
                tax.Value      = Convert.ToDouble(lineTax["value"]);
                lineItem.AddLineTax(tax);
            }
            lineItem.NetTotal = Convert.ToDouble(lineItemJSON["net_total"]);
            return(lineItem);
        }
コード例 #2
0
        private JObject GetZCRMInventoryLineItemAsJSON(ZCRMInventoryLineItem inventoryLineItem)
        {
            JObject lineItem = new JObject();

            if (inventoryLineItem.Id != null)
            {
                lineItem.Add("id", inventoryLineItem.Id.ToString());
            }
            if (inventoryLineItem.Product != null)
            {
                lineItem.Add("product", inventoryLineItem.Product.EntityId);
            }

            lineItem.Add("product_description", inventoryLineItem.Description);
            lineItem.Add("list_price", inventoryLineItem.ListPrice);
            lineItem.Add("quantity", inventoryLineItem.Quantity);

            if (inventoryLineItem.DiscountPercentage == null)
            {
                lineItem.Add("Discount", inventoryLineItem.Discount);
            }
            else
            {
                lineItem.Add("Discount", inventoryLineItem.DiscountPercentage + "%");
            }

            JArray         lineTaxArray = new JArray();
            List <ZCRMTax> taxes        = inventoryLineItem.LineTax;

            foreach (ZCRMTax tax in taxes)
            {
                JObject lineTax = new JObject();
                lineTax.Add("name", tax.TaxName);
                lineTax.Add("value", tax.Value);
                lineTax.Add("percentage", tax.Percentage);
                lineTaxArray.Add(lineTax);
            }
            lineItem.Add("line_tax", lineTaxArray);

            return(lineItem);
        }
コード例 #3
0
 /// <summary>
 /// To add line item of the record based on ZCRMInventoryLineItem class instance.
 /// </summary>
 /// <param name="newLineItem">ZCRMInventoryLineItem class instance</param>
 public void AddLineItem(ZCRMInventoryLineItem newLineItem)
 {
     LineItems.Add(newLineItem);
 }