MVC-databaskonstruktion

Log | Files | Refs | README

commit ad26e7f91b70cf06489e1600652587f8d5b25a0b
parent a82767dceebe3bf2abb45677ac17948896f562d3
Author: William Lindholm <william_lindholm@outlook.com>
Date:   Sat, 14 Oct 2023 23:07:34 +0200

Added details page for incidents.

Diffstat:
MMVC-databaskonstruktion/Controllers/IncidentsController.cs | 10+++++++---
MMVC-databaskonstruktion/MVC-databaskonstruktion.csproj | 1+
MMVC-databaskonstruktion/Models/AgentsModel.cs | 2+-
MMVC-databaskonstruktion/Models/IncidentsModel.cs | 10+++++++++-
AMVC-databaskonstruktion/Views/Incidents/Details.cshtml | 7+++++++
5 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/MVC-databaskonstruktion/Controllers/IncidentsController.cs b/MVC-databaskonstruktion/Controllers/IncidentsController.cs @@ -1,8 +1,6 @@ using Microsoft.AspNetCore.Mvc; using MVC_databaskonstruktion.Models; -using MVC_databaskonstruktion.Utils; using MySql.Data.MySqlClient; -using System.Diagnostics; namespace MVC_databaskonstruktion.Controllers { @@ -24,6 +22,12 @@ namespace MVC_databaskonstruktion.Controllers return View(); } + public IActionResult Details(string IncidentName, int incidentNumber) + { + ViewBag.Operations = _incidentsModel.GetOperations(IncidentName, incidentNumber); + return View(); + } + public IActionResult Delete(string table, string incidentName, string incidentNumber) { try @@ -41,7 +45,7 @@ namespace MVC_databaskonstruktion.Controllers TempData["ErrorMessage"] = "Foreign Key Constraint Failed!"; break; default: - TempData["ErrorMessage"] = $"Something went wrong: {e.Number}"; + TempData["ErrorMessage"] = $"Something went wrong: error {e.Number}"; break; } } diff --git a/MVC-databaskonstruktion/MVC-databaskonstruktion.csproj b/MVC-databaskonstruktion/MVC-databaskonstruktion.csproj @@ -9,6 +9,7 @@ </PropertyGroup> <ItemGroup> + <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.16" /> <PackageReference Include="MySql.Data" Version="8.1.0" /> <PackageReference Include="toastr" Version="2.1.1" /> </ItemGroup> diff --git a/MVC-databaskonstruktion/Models/AgentsModel.cs b/MVC-databaskonstruktion/Models/AgentsModel.cs @@ -77,8 +77,8 @@ namespace MVC_databaskonstruktion.Models public TableObject GetAgentOperations(string CodeName) { - string query = $"SELECT * FROM OperatesIn WHERE CodeName = '{CodeName}';"; + return _tableBuilder.SetDataTable(_databaseRepository.GetTable(query)) .SetDeleteTable(string.Empty) .SetRedirect(string.Empty) diff --git a/MVC-databaskonstruktion/Models/IncidentsModel.cs b/MVC-databaskonstruktion/Models/IncidentsModel.cs @@ -20,7 +20,8 @@ namespace MVC_databaskonstruktion.Models public TableObject GetIncidents(string searchQuery) { return _tableBuilder - .SetDataTable(_databaseRepository.GetTable($"SELECT * FROM Incident WHERE IncidentName LIKE '%{searchQuery}%'")) + .SetDataTable(_databaseRepository.GetTable($"SELECT * FROM Incident WHERE IncidentName LIKE '%{searchQuery}%';")) + .SetRedirect("Details") .Build(); } @@ -34,5 +35,12 @@ namespace MVC_databaskonstruktion.Models _databaseRepository.DeleteRow(table, conditions); } + + public TableObject GetOperations(string IncidentName, int IncidentNumber) + { + return _tableBuilder + .SetDataTable(_databaseRepository.GetTable($"SELECT * FROM Operation WHERE IncidentName = '{IncidentName}' AND IncidentNumber = '{IncidentNumber}';")) + .Build(); + } } } diff --git a/MVC-databaskonstruktion/Views/Incidents/Details.cshtml b/MVC-databaskonstruktion/Views/Incidents/Details.cshtml @@ -0,0 +1,7 @@ + +@{ + ViewData["Title"] = "Details"; +} + +<h3>Operations in Incident</h3> +<partial name="_TablePartial" model="ViewBag.Operations" />