Ejemplo n.º 1
0
        public async Task <ActionResult> Edit(RecordViewModel recordViewModel)
        {
            if (ModelState.IsValid)
            {
                await _recordService.Edit(recordViewModel.MapToDto());

                return(RedirectToAction("Index"));
            }

            var clients = _clientService.GetItems();

            ViewBag.ClientId = new SelectList(clients, "Id", "Name", recordViewModel.ClientId);

            var procedures = _procedureService.GetItems();

            ViewBag.ProcedureId = new SelectList(procedures, "Id", "Name", recordViewModel.ProcedureId);

            var products = _productService.GetItems();

            ViewBag.ProductId = new SelectList(products, "Id", "Name", recordViewModel.ProductId);

            return(View(recordViewModel));
        }
        public void MenuLoop()
        {
            // Start MenuLoop
            while (true)
            {
                // Display Menu Selection Header
                ConsoleIO.DisplayHeader("Main Menu");

                // Display Menu Options
                ConsoleIO.DisplayMenuOptions(
                    "Load a Record",
                    "View Records by Date Range",
                    "Add Record",
                    "Edit Record",
                    "Delete Record",
                    "Exit");

                // Prompt User Choice
                int choice = ConsoleIO.GetIntInRange("Enter Choice: ", 1, 6);
                Result <DateRecord> result;

                // switch on choice
                switch (choice)
                {
                case 1:
                    // Load Record
                    result = _recordService.Get(ConsoleIO.GetDateTime("Enter the record date: "));
                    if (result.Success)
                    {
                        ConsoleIO.DisplaySuccess(result.Message);
                        ConsoleIO.DisplayDateRecord(result.Data);
                    }
                    else
                    {
                        ConsoleIO.DisplayFailure(result.Message);
                    }
                    break;

                case 2:
                    // View Records by Date Range
                    var resultList = _recordService.LoadRange(
                        ConsoleIO.GetDateTime("Enter start date: "),
                        ConsoleIO.GetDateTime("Enter end date: "));
                    if (resultList.Success)
                    {
                        ConsoleIO.DisplaySuccess(resultList.Message);

                        foreach (var record in resultList.Data)
                        {
                            ConsoleIO.DisplayDateRecord(record);
                        }
                    }
                    else
                    {
                        ConsoleIO.DisplayFailure(resultList.Message);
                    }
                    break;

                case 3:
                    // Add Record
                    result = _recordService.Add(ConsoleIO.GetDateRecord());
                    if (result.Success)
                    {
                        ConsoleIO.DisplaySuccess(result.Message);
                    }
                    else
                    {
                        ConsoleIO.DisplayFailure(result.Message);
                    }
                    break;

                case 4:
                    // Edit Record
                    result = _recordService.Edit(ConsoleIO.GetDateTime("Enter Date to be Edited: "), ConsoleIO.GetDateRecord());
                    if (result.Success)
                    {
                        ConsoleIO.DisplaySuccess(result.Message);
                    }
                    else
                    {
                        ConsoleIO.DisplayFailure(result.Message);
                    }
                    break;

                case 5:
                    // Delete Record
                    result = _recordService.Remove(ConsoleIO.GetDateTime("Enter the date to remove: "));
                    if (result.Success)
                    {
                        ConsoleIO.DisplaySuccess(result.Message);
                    }
                    else
                    {
                        ConsoleIO.DisplayFailure(result.Message);
                    }
                    break;

                case 6:
                    // Quit
                    return;
                }

                // Prompt Continue so user can see printed output before clear
                ConsoleIO.PromptContinue();
            }
        }