Add vehicle service controller and view

This commit is contained in:
2015-10-07 23:29:10 -04:00
parent 306381b3c6
commit b962ecb119
11 changed files with 269 additions and 2 deletions
@@ -0,0 +1,47 @@
using System;
using System.Linq;
using System.Web.Mvc;
using MileageTraker.Web.Attributes;
using MileageTraker.Web.ViewModels.VehicleService;
namespace MileageTraker.Web.Controllers
{
[Authorize(Roles = "Administrator, Developer")]
public class VehicleServiceController : ControllerBase
{
public ActionResult Index(VehicleServiceQueryViewModel query)
{
var vehicleServices = DataService.GetVehicleServices();
var viewModel = new VehicleServiceResultsViewModel
{
ServiceItems = vehicleServices.Select(s => new VehicleServiceViewModel(s))
};
return View(viewModel);
}
public ActionResult Create()
{
return View();
}
[HttpPost]
[ActionLog]
public ActionResult Create(VehicleServiceViewModel viewModel)
{
if (ModelState.IsValid)
{
var vehicleService = viewModel.GetVehicleService();
vehicleService.Vehicle = DataService.GetVehicle(viewModel.VehicleId);
DataService.AddVehicleService(vehicleService);
TempData["StatusMessage-Type"] = "alert-success";
TempData["StatusMessage"] =
string.Format("Vehicle Service for vehicle {0} created", viewModel.VehicleId);
return RedirectToAction("Index");
}
return View(viewModel);
}
}
}