public ProductTotal GetData_ProductTotal(int id) { ProductTotal p = new ProductTotal(); p.SetData("Product" + id, Random.Range(10000, 100000), Random.Range(1000, 10000), Random.Range(100, 1000), Random.Range(10, 100)); return(p); }
private void GetTotal(IDataIO dataIO) { productTotal = dataIO.GetData_ProductTotal(this.ID); var field = typeof(ProductTotal).GetFields(); for (int i = 0; i < field.Length; i++) { if (field[i].Name == "productName") { string s = field[i].GetValue(productTotal).ToString(); //textNodes[i].title.text = s + "生产统计分析"; } else { int b = (int)field[i].GetValue(productTotal); //textNodes[i].data.DOText(b.ToString(), 0.6f, true, ScrambleMode.Numerals, ""); } } }
public async Task <ActionResult <ProductPrice> > GetProductsTotal([FromBody] AddCartItem[] items) { var currency = _workContextAccessor.WorkContext.CurrentCurrency; var productTotal = new ProductTotal(currency); // Based on https://github.com/VirtoCommerce/vc-module-cart/blob/05dac9453f375f015bbea57e3f95f4c87a62ec74/src/VirtoCommerce.CartModule.Data/Services/DefaultShoppingCartTotalsCalculator.cs#L57-L68 if (!items.IsNullOrEmpty()) { var products = await _catalogService.GetProductsAsync(items.Select(x => x.ProductId).ToArray(), ItemResponseGroup.ItemWithPrices); if (products != null && products.Any()) { var productsById = products.ToDictionary(x => x.Id, x => x); foreach (var item in items) { item.Product = productsById[item.ProductId]; } // Original price without rounding stored in InternalAmount var subTotal = items.Sum(x => x.Product.Price.ListPrice.InternalAmount * x.Quantity); var subTotalWithTax = items.Sum(x => x.Product.Price.ListPriceWithTax.InternalAmount * x.Quantity); var discountTotal = items.Sum(x => x.Product.Price.DiscountAmount.InternalAmount); var discountTotalWithTax = items.Sum(x => x.Product.Price.DiscountAmountWithTax.InternalAmount); var taxTotal = items.Sum(x => x.Product.TaxTotal.InternalAmount); productTotal.SubTotal = new Money(Math.Round(subTotal, 2, MidpointRounding.AwayFromZero), currency); productTotal.SubTotalWithTax = new Money(Math.Round(subTotalWithTax, 2, MidpointRounding.AwayFromZero), currency); productTotal.DiscountTotal = new Money(Math.Round(discountTotal, 2, MidpointRounding.AwayFromZero), currency); productTotal.DiscountTotalWithTax = new Money(Math.Round(discountTotalWithTax, 2, MidpointRounding.AwayFromZero), currency); productTotal.TaxTotal = new Money(Math.Round(taxTotal, 2, MidpointRounding.AwayFromZero), currency); productTotal.Total = new Money(productTotal.SubTotal.Amount - productTotal.DiscountTotal.Amount, currency); productTotal.TotalWithTax = new Money(productTotal.Total.Amount + productTotal.TaxTotal.Amount, currency); } } return(Ok(productTotal)); }