@using MileageTraker.Web.ViewModels @model MileageTraker.Web.ViewModels.VehicleService.VehicleServiceResultsViewModel @{ ViewBag.Title = "Vehicle Service"; var grid = new WebGrid(Model.ServiceItems, rowsPerPage: 45); var queryParams = new { Model.Year, Model.Month, Model.MonthRange, Model.VehicleId }; var serviceOverdueBadge = Model.UpcomingServiceReminders.Any(sr => sr.IsServiceOverdue) ? "badge-warning" : ""; } @section Scripts { } @Html.Partial("_StatusMessage")
@using (Html.BeginForm("Index", "VehicleService", FormMethod.Get, new { id = "filter", @class = "form" })) { @Html.EditorForModel() }

@ViewBag.Title

@Html.ActionLink("Add Service", "SelectVehicle", null, new { @class = "btn" }) @Html.ActionLink("Export", "Export", queryParams, new { @class = "btn" }) Upcoming Services @Model.UpcomingServiceReminders.Count
@grid.GetHtml(columns: grid.Columns( grid.Column("InvoiceDate", "Invoice Date", item => item.InvoiceDate.ToString("d")), grid.Column("VehicleId", "Vehicle ID", item => Html.ActionLink((string)item.VehicleId, "DetailsPartial", "Vehicle", new { id = item.VehicleId }, new { @class = "qtip-modal" })), grid.Column("ServiceCenterName", "Service Center Name"), grid.Column("Price", "Price", @@String.Format("{0:C}", item.Price)), grid.Column("Description", "Description"), grid.Column("VehicleRecall", "Vehicle Recall", item => Recall(item.VehicleRecall)), grid.Column(format: @
@Html.ActionLink("Details", "Details", new { id = item.VehicleServiceId }, new { @class = "btn btn-mini" }) @Html.ActionLink("Delete", "Delete", new { id = item.VehicleServiceId }, new { @class = "btn btn-mini" })
) ), htmlAttributes: new { @class = "table table-striped table-bordered table-hover table-condensed" }, numericLinksCount: 20 ) @helper Recall(SelectListViewModel selectList) { if (selectList != null && selectList.Selected > 0) { var selected = selectList.Available.FirstOrDefault(i => i.Value == selectList.Selected.ToString()); if (selected != null) { @Html.ActionLink(selected.Text, "Details", "VehicleRecall", new { id = selected.Value }, null) } } else { (Not a recall) } }