public POSTransactionSummaryViewModel GetPOSTransactionSummary(HttpContextBase httpContext)
        {
            POSTransaction posTransaction        = GetPOSTransaction(httpContext, false);
            POSTransactionSummaryViewModel model = new POSTransactionSummaryViewModel(0, 0);

            if (posTransaction != null)
            {
                int?transactionCount = (from item in posTransaction.POSTransactionItems
                                        select item.Quantity).Sum();
                decimal?transactionTotal = (from pi in posTransaction.POSTransactionItems
                                            join p in productContext.Collection() on pi.ProductId equals p.Id
                                            select pi.Quantity *p.Price).Sum();
                model.TransactionCount = transactionCount ?? 0;
                model.TransactionTotal = transactionTotal ?? decimal.Zero;

                foreach (var item in posTransaction.POSTransactionItems)
                {
                    POSSaleItem possaleItem = new POSSaleItem()
                    {
                        ProductId          = item.ProductId,
                        ProductName        = item.ProductName,
                        ProductDescription = item.ProductDescription,
                        Image    = item.Image,
                        Price    = item.Price,
                        Quantity = item.Quantity
                    };
                    model.POSSaleItems.Add(possaleItem);
                }
            }
            return(model);
        }
Exemplo n.º 2
0
        public ActionResult Checkout()
        {
            POSTransactionSummaryViewModel summaryModel = posTransactionService.GetPOSTransactionSummary(this.HttpContext);
            POSSale sale = new POSSale();

            sale.TotalAmount    = summaryModel.TransactionTotal;
            sale.TotalItemCount = summaryModel.TransactionCount;
            sale.POSSaleItems   = summaryModel.POSSaleItems;

            // request customer list
            sale.Customers = customerService.GetCustomers();

            return(View(sale));
        }