78 lines
2.6 KiB
Plaintext
78 lines
2.6 KiB
Plaintext
@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 };
|
|
}
|
|
|
|
@section Scripts {
|
|
<script type="text/javascript">
|
|
var availableLogYearMonths = @Html.Raw(Json.Encode(Model.AvailableYearMonths));
|
|
@if (Model.Year != null)
|
|
{
|
|
<text>var selectedYear = "@Model.Year";</text>
|
|
<text>var selectedMonth = "@Model.Month";</text>
|
|
}
|
|
</script>
|
|
}
|
|
|
|
@Html.Partial("_StatusMessage")
|
|
|
|
<div class="btn-toolbar pull-right" style="width:400px">
|
|
@using (Html.BeginForm("Index", "VehicleService", FormMethod.Get, new { id = "filter", @class = "form" }))
|
|
{
|
|
@Html.EditorForModel()
|
|
}
|
|
</div>
|
|
|
|
<div class="pull-right" style="width:400px">
|
|
<h4>Upcoming Services</h4>
|
|
<table class="table table-striped table-bordered table-hover table-condensed">
|
|
<tr>
|
|
<th>Vehicle ID</th>
|
|
<th>ODO</th>
|
|
<th>Next Service</th>
|
|
<th>Description</th>
|
|
<th></th>
|
|
</tr>
|
|
@foreach (var sr in Model.UpcomingServiceReminders)
|
|
{
|
|
<tr>
|
|
<td>@Html.DisplayTextFor(m => sr.VehicleId)</td>
|
|
<td>@Html.DisplayTextFor(m => sr.CurrentOdometer)</td>
|
|
<td>@Html.DisplayTextFor(m => sr.TargetOdometer)
|
|
@if (sr.IsServiceOverdue)
|
|
{
|
|
<span class="badge badge-warning" title="overdue @(-sr.ServiceDueInMiles) miles">!</span>
|
|
}
|
|
</td>
|
|
<td>@Html.DisplayTextFor(m => sr.Description)</td>
|
|
<td>@Html.ActionLink("Add Service", "Create", "VehicleService", new { vehicleId = sr.VehicleId }, new { @class = "btn btn-mini" })</td>
|
|
</tr>
|
|
}
|
|
</table>
|
|
</div>
|
|
|
|
<h2 id="vehicle-title"><i class="fa fa-wrench"></i> @ViewBag.Title</h2>
|
|
|
|
<div class="btn-toolbar pull-left">
|
|
@Html.ActionLink("Add Service", "Create", null, new { @class = "btn" })
|
|
@Html.ActionLink("Export", "Export", queryParams, new { @class = "btn" })
|
|
</div>
|
|
|
|
@grid.GetHtml(columns:
|
|
grid.Columns(
|
|
grid.Column("InvoiceDate", "Invoice Date", item => item.InvoiceDate.ToString("d")),
|
|
grid.Column("VehicleID", "Vehicle Id"),
|
|
grid.Column("ServiceCenterName", "Service Center Name"),
|
|
grid.Column("Price", "Price"),
|
|
grid.Column("Description", "Description"),
|
|
grid.Column(format:
|
|
@<div class='btn-group'>
|
|
@Html.ActionLink("Details", "Details", new { id = item.VehicleServiceId }, new { @class = "btn btn-mini" })
|
|
</div>)
|
|
),
|
|
htmlAttributes: new { @class = "table table-striped table-bordered table-hover table-condensed"},
|
|
numericLinksCount: 20
|
|
) |