예제 #1
0
        public IActionResult Save(InvoiceCreateViewModel viewModel)
        {
            if (viewModel.Tax == null)
            {
                return(View("Error"));
            }
            Random rnd     = new Random();
            var    invoice = _serviceInvoice.Insert(new Invoice
            {
                DateCreation  = DateTime.Now,
                InvoiceNumber = GenerateProductNumber(10, rnd),
                RecipientName = viewModel.RecipientName,
                PaymentDate   = DateTime.Now.AddDays(7),
                UserId        = _userManager.GetUserId(HttpContext.User)
            });

            foreach (var item in viewModel.SelectedItems)
            {
                var itemInDb = _serviceItem.Get(x => x.Id == item.Id);
                _serviceInvoiceItems.Insert(new InvoiceItems
                {
                    InvoiceId       = invoice.Id,
                    ItemId          = item.Id,
                    QuantitySold    = item.Quantity,
                    PriceWithTax    = calculateService.CalculatePrice(itemInDb.Price, item.Quantity, viewModel.Tax),
                    PriceWithoutTax = calculateService.CalculatePrice(itemInDb.Price, item.Quantity),
                    Tax             = viewModel.Tax
                });
            }

            return(RedirectToAction(nameof(Index), "Home"));
        }
예제 #2
0
        public async Task <IActionResult> CalcPrice([FromBody] NamePhones phones)
        {
            double price = await _calculate.CalculatePrice(phones);

            if (price == -1)
            {
                return(NotFound("Data not found"));
            }
            return(Ok(price));
        }