示例#1
0
        // GET: Admin/Invoices

        /*public async Task<IActionResult> Index()
         * {
         *  var appDbContext = _context.Invoice.Include(i => i.CustomerOrder)
         *      .Include(i => i.InvoiceItem)
         *          .ThenInclude(i => i.Item);
         *  return View(await appDbContext.ToListAsync());
         * }*/

        public async Task <IActionResult> Index(int?invoiceId, int?itemId)
        {
            var viewModel = new InvoiceIndexData();

            viewModel.Invoice = await _context.Invoice
                                .Include(i => i.CustomerOrder)
                                .Include(i => i.InvoiceItem)
                                .ThenInclude(i => i.Item)
                                .ToListAsync();

            if (invoiceId != null)
            {
                ViewData["InvoiceId"] = invoiceId.Value;
                Invoice invoice = viewModel.Invoice.Where(
                    i => i.InvoiceId == invoiceId.Value).Single();
                viewModel.Item = invoice.InvoiceItem.Select(s => s.Item);
            }
            return(View(viewModel));
        }
        // GET: Invoices
        public async Task <IActionResult> Index(int?id)
        {
            var viewModel = new InvoiceIndexData();

            viewModel.Invoice = await _context.Invoice
                                .Include(i => i.Job)
                                .Include(i => i.InvoiceItem)
                                .ThenInclude(i => i.Item)
                                .ThenInclude(i => i.TestCompoent)
                                .ToListAsync();

            if (id != null)
            {
                ViewData["InvoiceID"] = id.Value;
                Invoice invoice = viewModel.Invoice.Where(
                    i => i.InvocieID == id.Value).Single();
                viewModel.Item = invoice.InvoiceItem.Select(s => s.Item);
            }
            return(View(viewModel));
        }