Get export working for Vehicle Service

This commit is contained in:
2015-10-12 20:11:02 -04:00
parent e008bc2242
commit d87f654a20
5 changed files with 30 additions and 8 deletions
+2 -1
View File
@@ -60,7 +60,7 @@ namespace MileageTraker.Web.Controllers
var vm = new FuelLogViewModel(fuelLog) { VehicleId = DataService.GetVehicleIdByTag(fuelLog.TagNumber) };
return View(vm);
}
public ViewResult Match(int id)
{
var fuelLog = DataService.GetFuelLog(id);
@@ -89,6 +89,7 @@ namespace MileageTraker.Web.Controllers
return View(matchViewModel);
}
[ActionLog]
[HttpPost]
public ActionResult Match(int fuelLogId, int logId)
{
@@ -31,6 +31,26 @@ namespace MileageTraker.Web.Controllers
return View(viewModel);
}
[ActionLog]
public ActionResult Export(VehicleServiceQueryViewModel query)
{
var validVehicleServiceYearMonths = DataService.GetValidVehicleServiceMonths();
if (!validVehicleServiceYearMonths.Any()) // this means no logs in DB
return View("Empty");
// default parameter processing
query.SetDefaultParameters(validVehicleServiceYearMonths);
var vehicleServices = DataService.FilterVehicleServices(DataService.GetVehicleServices(), query).ToList();
var filteredServices = vehicleServices.Select(vs => new VehicleServiceViewModel(vs));
var name = string.Format("VehicleServices_{0}", query);
var export = ExcelWriter<VehicleServiceViewModel>.WriteXls(filteredServices, name, name);
return File(export, "application/ms-excel", name + ".xls");
}
public ViewResult Details(int id)
{
var vehicleService = DataService.GetVehicleService(id);