From 848cb5777705b53e2049a2b9ef3041b31fc19839 Mon Sep 17 00:00:00 2001 From: James Kolpack Date: Thu, 28 Feb 2013 14:00:50 -0500 Subject: [PATCH] Refactor Miles into log output --- Web/Controllers/LogController.cs | 6 +++--- Web/ViewModels/Log/LogIndexViewModel.cs | 15 ++++++++++++++- Web/Views/Log/Index.cshtml | 4 ++-- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/Web/Controllers/LogController.cs b/Web/Controllers/LogController.cs index 60e0e08..239123f 100644 --- a/Web/Controllers/LogController.cs +++ b/Web/Controllers/LogController.cs @@ -53,9 +53,9 @@ namespace MileageTraker.Web.Controllers { var logs = DataService.GetLogs(); var filteredLogs = - DataService.FilterLogs(logs, query) - .ToList() - .Select(log => new LogViewModel(log)); + DataService.GetLogIndexViewModels( + DataService.FilterLogs(logs, query) + ).ToList(); var name = string.Format( "MileageLogs{0}-{1}{2}", diff --git a/Web/ViewModels/Log/LogIndexViewModel.cs b/Web/ViewModels/Log/LogIndexViewModel.cs index 2ee1cc0..417ddf6 100644 --- a/Web/ViewModels/Log/LogIndexViewModel.cs +++ b/Web/ViewModels/Log/LogIndexViewModel.cs @@ -1,4 +1,5 @@ using System; +using System.ComponentModel.DataAnnotations; using AutoMapper; using MileageTraker.Web.Models; @@ -11,20 +12,31 @@ namespace MileageTraker.Web.ViewModels.Log public int LogId { get; set; } + [Display(Name = "Vehicle ID")] public string VehicleId { get; set; } + [Display(Name = "End Odometer")] public int EndOdometer { get; set; } + public int Miles { get; set; } + + [Display(Name = "Type")] public MileageLogTypeWrapper LogType { get; set; } + [Display(Name = "City Name")] public string CityName { get; set; } - public virtual Models.User User { get; set; } + [Display(Name = "Driver Name")] + public string UserFullName { get; set; } + [Display(Name = "Gas Purchased")] + [DisplayFormat(DataFormatString = "{0:0.000}", ApplyFormatInEditMode = true)] public double GasPurchased { get; set; } public DateTime Date { get; set; } + [Display(Name = "Time Created")] + [DisplayFormat(DataFormatString = @"{0:MM/dd/yyyy h:mm tt}")] public DateTime Created { get; set; } static LogIndexViewModel() @@ -39,6 +51,7 @@ namespace MileageTraker.Web.ViewModels.Log { PreviousLogId = previousLog.LogId; PreviousLogEndOdometer = previousLog.EndOdometer; + Miles = EndOdometer - previousLog.EndOdometer; } } } diff --git a/Web/Views/Log/Index.cshtml b/Web/Views/Log/Index.cshtml index 1af13cf..b95f505 100644 --- a/Web/Views/Log/Index.cshtml +++ b/Web/Views/Log/Index.cshtml @@ -47,7 +47,7 @@ { if (item.PreviousLogId != null) { - string miles = (item.EndOdometer - item.PreviousLogEndOdometer).ToString(); + string miles = (item.Miles).ToString(); return Html.ActionLink(miles, "DetailsPartial", new { id = item.PreviousLogId }, new { @class = "qtip-modal" }); } return Html.Raw("?"); @@ -56,7 +56,7 @@ grid.Column("GasPurchased", "Gas", item => item.GasPurchased > 0 ? String.Format("{0:0.000}", item.GasPurchased) : string.Empty), grid.Column("Date", format: item => item.Date.ToString("d")), grid.Column("CityName", "City Name"), - grid.Column("Driver Name", format: item => item.User != null ? item.User.FullName : ""), + grid.Column("Driver Name", format: item => item.UserFullName), grid.Column(format: @
@Html.ActionLink("Edit", "Edit", new { id = item.LogId }, new { @class = "btn btn-mini" })