diff --git a/cicm_web/Areas/Admin/Controllers/OwnedMachineController.cs b/cicm_web/Areas/Admin/Controllers/OwnedMachineController.cs index 020afee5..9e86585d 100644 --- a/cicm_web/Areas/Admin/Controllers/OwnedMachineController.cs +++ b/cicm_web/Areas/Admin/Controllers/OwnedMachineController.cs @@ -46,8 +46,24 @@ namespace cicm_web.Areas.Admin.Controllers { if(id == null) return NotFound(); - OwnedMachine ownedMachine = await _context.OwnedMachines - .Include(o => o.Machine).FirstOrDefaultAsync(m => m.Id == id); + OwnedMachineViewModel ownedMachine = await _context.OwnedMachines + .Include(o => o.Machine) + .Select(o => new OwnedMachineViewModel + { + AcquisitionDate = o.AcquisitionDate, + Boxed = o.Boxed, + LastStatusDate = o.LastStatusDate, + LostDate = o.LostDate, + Machine = + $"{o.Machine.Company.Name} {o.Machine.Name}", + Manuals = o.Manuals, + SerialNumber = o.SerialNumber, + SerialNumberVisible = + o.SerialNumberVisible, + Status = o.Status, + User = o.User.UserName, + Id = o.Id + }).FirstOrDefaultAsync(m => m.Id == id); if(ownedMachine == null) return NotFound(); return View(ownedMachine); diff --git a/cicm_web/Areas/Admin/Models/OwnedMachineViewModel.cs b/cicm_web/Areas/Admin/Models/OwnedMachineViewModel.cs index 0d1cf6fb..e50b1ae9 100644 --- a/cicm_web/Areas/Admin/Models/OwnedMachineViewModel.cs +++ b/cicm_web/Areas/Admin/Models/OwnedMachineViewModel.cs @@ -9,9 +9,27 @@ namespace cicm_web.Areas.Admin.Models { [DataType(DataType.Date)] [DisplayName("Acquired")] - public DateTime AcquisitionDate { get; set; } - public StatusType Status { get; set; } - public string Machine { get; set; } - public string User { get; set; } + public DateTime AcquisitionDate { get; set; } + public StatusType Status { get; set; } + public string Machine { get; set; } + public string User { get; set; } + + [DisplayName("Date when sold, traded, or otherwise lost")] + public DateTime? LostDate { get; set; } + [DisplayName("Last status check date")] + public DateTime? LastStatusDate { get; set; } + [DisplayName("Available for trade or sale")] + public bool Trade { get; set; } + [DisplayName("Has original boxes")] + public bool Boxed { get; set; } + [DisplayName("Has original manuals")] + public bool Manuals { get; set; } + [DisplayName("Serial number")] + public string SerialNumber { get; set; } + [DisplayName("Serial number visible to other users")] + public bool SerialNumberVisible { get; set; } + + public string LostDateDisplay => LostDate?.ToLongDateString() ?? "Never"; + public string LastStatusDateDisplay => LastStatusDate?.ToLongDateString() ?? "Never"; } } \ No newline at end of file diff --git a/cicm_web/Areas/Admin/Views/OwnedMachine/Details.cshtml b/cicm_web/Areas/Admin/Views/OwnedMachine/Details.cshtml index 3d4e7e14..5aaefbf6 100644 --- a/cicm_web/Areas/Admin/Views/OwnedMachine/Details.cshtml +++ b/cicm_web/Areas/Admin/Views/OwnedMachine/Details.cshtml @@ -1,4 +1,4 @@ -@model Cicm.Database.Models.OwnedMachine +@model cicm_web.Areas.Admin.Models.OwnedMachineViewModel @{ ViewData["Title"] = "Details"; @@ -7,72 +7,85 @@

Details

-

OwnedMachine

+

Owned machine


-
+
@Html.DisplayNameFor(model => model.AcquisitionDate)
-
+
@Html.DisplayFor(model => model.AcquisitionDate)
-
+
@Html.DisplayNameFor(model => model.LostDate)
-
- @Html.DisplayFor(model => model.LostDate) +
+ @Html.DisplayFor(model => model.LostDateDisplay)
-
+
@Html.DisplayNameFor(model => model.Status)
-
+
@Html.DisplayFor(model => model.Status)
-
+
@Html.DisplayNameFor(model => model.LastStatusDate)
-
- @Html.DisplayFor(model => model.LastStatusDate) +
+ @Html.DisplayFor(model => model.LastStatusDateDisplay)
-
+
@Html.DisplayNameFor(model => model.Trade)
-
+
@Html.DisplayFor(model => model.Trade)
-
+
@Html.DisplayNameFor(model => model.Boxed)
-
+
@Html.DisplayFor(model => model.Boxed)
-
+
@Html.DisplayNameFor(model => model.Manuals)
-
+
@Html.DisplayFor(model => model.Manuals)
-
+
@Html.DisplayNameFor(model => model.SerialNumber)
-
+
@Html.DisplayFor(model => model.SerialNumber)
-
+
@Html.DisplayNameFor(model => model.SerialNumberVisible)
-
+
@Html.DisplayFor(model => model.SerialNumberVisible)
-
+
@Html.DisplayNameFor(model => model.Machine)
-
- @Html.DisplayFor(model => model.Machine.Name) +
+ @Html.DisplayFor(model => model.Machine) +
+
+ @Html.DisplayNameFor(model => model.User) +
+
+ @Html.DisplayFor(model => model.User)
- Edit | - Back to List -
+ + Edit + + + Back to List + + \ No newline at end of file diff --git a/cicm_web/cicm_web.csproj b/cicm_web/cicm_web.csproj index 9c268ae6..7e32c91d 100644 --- a/cicm_web/cicm_web.csproj +++ b/cicm_web/cicm_web.csproj @@ -2,7 +2,7 @@ netcoreapp2.2 - 3.0.99.681 + 3.0.99.684 Canary Islands Computer Museum Copyright © 2003-2018 Natalia Portillo Canary Islands Computer Museum Website