@model Disco.Web.Models.Job.ShowModel @if (Model.Job.Device != null) { } @if (Model.Job.User != null) { } @if (Model.Job.Device != null) { } @if (Model.Job.User != null) { }
@if (!Model.Job.ClosedDate.HasValue || Model.Job.ExpectedClosedDate.HasValue) { } @if (Model.Job.ClosedDate.HasValue) { }
Opened: @CommonHelpers.FriendlyDateAndTitleUser(Model.Job.OpenedDate, Model.Job.OpenedTechUser)
Expected: @Html.TextBoxFor(m => m.Job.ExpectedClosedDate, new { @class = "small discreet" }) @AjaxHelpers.AjaxSave() @AjaxHelpers.AjaxLoader()
Closed: @CommonHelpers.FriendlyDateAndTitleUser(Model.Job.ClosedDate, Model.Job.ClosedTechUser)

@Model.Job.JobType.Description

@{ var jobSubTypeFirst = (int)Math.Ceiling((double)(Model.Job.JobSubTypes.Count + 1) / 2); }
    @foreach (var jobSubType in Model.Job.JobSubTypes.Take(jobSubTypeFirst)) {
  • @jobSubType.Description
  • }
    @foreach (var jobSubType in Model.Job.JobSubTypes.Skip(jobSubTypeFirst)) {
  • @jobSubType.Description
  • }
@if (!Model.Job.ClosedDate.HasValue) { Update Sub Types }

@Model.Job.JobType.Description

@using (Html.BeginForm(MVC.API.Job.UpdateSubTypes(Model.Job.Id, redirect: true), FormMethod.Post, new { id = "formUpdateJobTypes" })) { @CommonHelpers.CheckBoxList("SubTypes", Model.UpdatableJobSubTypes.ToSelectListItems(Model.Job.JobSubTypes.ToList()), 3)
}
@Html.DropDownList("Job_Show_GenerateDocument", Model.DocumentTemplatesSelectListItems)

@Html.ActionLink(Model.Job.DeviceSerialNumber, MVC.Device.Show(Model.Job.DeviceSerialNumber))

Model Image
@Model.Job.Device.ComputerName
@Html.ActionLink(Model.Job.Device.DeviceModel.ToString(), MVC.Config.DeviceModel.Index(Model.Job.Device.DeviceModelId))
@if (Model.Job.Device.DeviceBatch != null) {
@Html.ActionLink(Model.Job.Device.DeviceBatch.Name, MVC.Config.DeviceBatch.Index(Model.Job.Device.DeviceBatchId))
}
@if (Model.Job.JobTypeId == JobType.JobTypeIds.HWar) {
DEVICE WARRANTY
Until: @Model.Job.Device.DeviceBatch.WarrantyValidUntil.ToFuzzy("Unknown")
@if (!string.IsNullOrWhiteSpace(Model.Job.Device.DeviceBatch.WarrantyDetails)) { Show Details
@(new HtmlString(Model.Job.Device.DeviceBatch.WarrantyDetails))
}
} @if (Model.Job.JobTypeId == JobType.JobTypeIds.HNWar) {
INSURANCE
@Model.Job.Device.DeviceBatch.InsuranceSupplier
Until: @Model.Job.Device.DeviceBatch.InsuredUntil.ToFuzzy("Unknown")
@if (!string.IsNullOrWhiteSpace(Model.Job.Device.DeviceBatch.InsuranceDetails)) { Show Details
@(new HtmlString(Model.Job.Device.DeviceBatch.InsuranceDetails))
}
}
@if (Model.Job.DeviceHeld.HasValue) {
@if (Model.Job.DeviceReadyForReturn.HasValue) { } @if (Model.Job.DeviceReturnedDate.HasValue) { }
Location: @Html.TextBoxFor(m => m.Job.DeviceHeldLocation, new { @class = "small discreet" }) @AjaxHelpers.AjaxSave() @AjaxHelpers.AjaxLoader()
Held Since: @CommonHelpers.FriendlyDateAndTitleUser(Model.Job.DeviceHeld, Model.Job.DeviceHeldTechUser)
Ready: @CommonHelpers.FriendlyDateAndTitleUser(Model.Job.DeviceReadyForReturn, Model.Job.DeviceReadyForReturnTechUser)
Returned: @CommonHelpers.FriendlyDateAndTitleUser(Model.Job.DeviceReturnedDate, Model.Job.DeviceReturnedTechUser)
}

@Html.ActionLink(Model.Job.User.DisplayName, MVC.User.Show(Model.Job.UserId))

@Model.Job.UserId [@(Model.Job.User.Type)]
@if (!string.IsNullOrWhiteSpace(Model.Job.User.PhoneNumber)) {
Phone: @Model.Job.User.PhoneNumber
} @if (!string.IsNullOrWhiteSpace(Model.Job.User.EmailAddress)) {} @if (Model.Job.WaitingForUserAction.HasValue) {

Awaiting Action

Since: @Model.Job.WaitingForUserAction.ToFuzzy()
}
@if (Model.Job.CanClose()) { @Html.ActionLinkSmallButton("Close Job", MVC.API.Job.Close(Model.Job.Id, true), "Job_Show_Job_Actions_Close_Button")

Are you sure?

} @if (Model.Job.CanReopen()) { @Html.ActionLinkSmallButton("Reopen Job", MVC.API.Job.Reopen(Model.Job.Id, true), "Job_Show_Job_Actions_Reopen_Button")

Are you sure?

} @if (Model.Job.CanDelete()) { @Html.ActionLinkSmallButton("Delete Job", MVC.API.Job.Delete(Model.Job.Id, true), "Job_Show_Job_Actions_Delete_Button")

This item will be permanently deleted and cannot be recovered. Are you sure?

} @if (Model.Job.CanLogWarranty()) { @Html.ActionLinkSmallButton("Log Warranty", MVC.Job.LogWarranty(Model.Job.Id, null, null), "Job_Show_Job_Actions_LogWarranty_Button") } @if (Model.Job.CanWarrantyCompleted()) { @Html.ActionLinkSmallButton("Warranty Complete", MVC.API.Job.UpdateWarrantyExternalCompletedDate(Model.Job.Id, "Now", true), "Job_Show_Job_Actions_WarrantyComplete_Button", "alert") } @if (Model.Job.CanInsuranceClaimFormSent()) { @Html.ActionLinkSmallButton("Insurance Claim Form Sent", MVC.API.Job.UpdateInsuranceClaimFormSentDate(Model.Job.Id, "Now", true), "Job_Show_Job_Actions_InsuranceClaimFormSent_Button", "alert") } @if (Model.Job.CanLogRepair()) { @Html.ActionLinkSmallButton("Repairs Logged", MVC.API.Job.LogRepair(Model.Job.Id, null, null, true), "Job_Show_Job_Actions_LogRepair_Button")
@using (Html.BeginForm(MVC.API.Job.LogRepair(Model.Job.Id, null, null, true))) {

Repairer Name:

Repairer Reference:

}
} @if (Model.Job.CanRepairComplete()) { @Html.ActionLinkSmallButton("Repairs Complete", MVC.API.Job.UpdateNonWarrantyRepairerCompletedDate(Model.Job.Id, "Now", true), "Job_Show_Job_Actions_RepairComplete_Button", "alert") } @if (Model.Job.CanConvertHWarToHNWar()) { @Html.ActionLinkSmallButton("Convert to Non-Warranty", MVC.API.Job.ConvertHWarToHNWar(Model.Job.Id, true), "Job_Show_Job_Actions_ConvertToHNWar_Button")

This process is not reversible.
Are you sure?

}
@if (Model.Job.CanDeviceHeld()) { @Html.ActionLinkSmallButton("Held", MVC.API.Job.DeviceHeld(Model.Job.Id, true), "Job_Show_Device_Actions_Held_Button") } @if (Model.Job.CanDeviceReadyForReturn()) { @Html.ActionLinkSmallButton("Ready For Return", MVC.API.Job.DeviceReadyForReturn(Model.Job.Id, true), "Job_Show_Device_Actions_DeviceReadyForReturn_Button", "alert") } @if (Model.Job.CanDeviceReturned()) { @Html.ActionLinkSmallButton("Returned", MVC.API.Job.DeviceReturned(Model.Job.Id, true), "Job_Show_Device_Actions_DeviceReturned_Button", Model.Job.CanDeviceReadyForReturn() ? null : "alert") } @if (Model.Job.CanWaitingForUserAction()) { Awaiting Action
@using (Html.BeginForm(MVC.API.Job.WaitingForUserAction(Model.Job.Id, null, true))) {

Reason:

}
} @if (Model.Job.CanNotWaitingForUserAction()) { Action Resolved
@using (Html.BeginForm(MVC.API.Job.NotWaitingForUserAction(Model.Job.Id, null, true))) {

Resolution:

}
}