Files
.Data
.vscode
Archive
Client
ClientHub
Server
.vscode
ApiControllers
AppSettingsController.cs
AttachmentsController.cs
AwaitingDispoController.cs
ClientSettingsController.cs
InboundController.cs
PinController.cs
ServiceShopOrderController.cs
ToolTypesController.cs
Controllers
Data
Models
Repositories
Services
Views
wwwroot
ApiLoggingMiddleware.cs
OI.Metrology.Server.csproj
Program.cs
appsettings.Development.json
appsettings.json
compilerconfig.json
compilerconfig.json.defaults
Shared
Tests
View
.editorconfig
.gitignore
OI-Metrology.sln
README.md
azure-pipelines-client-development.yml
azure-pipelines-server-development.yml
azure-pipelines-server.yml
package.json
oi-metrology/Server/ApiControllers/AwaitingDispoController.cs

41 lines
1.7 KiB
C#

using Microsoft.AspNetCore.Mvc;
namespace OI.Metrology.Server.ApiControllers;
using OI.Metrology.Shared.Models.Stateless;
using System.Text.Json;
// this controller is for the Awaiting Dispo functionality
[Route("api/[controller]")]
public class AwaitingDispoController : Controller, IAwaitingDispoController<IActionResult>
{
private readonly IMetrologyRepository _MetrologyRepository;
public AwaitingDispoController(IMetrologyRepository metrologyRepository) =>
_MetrologyRepository = metrologyRepository;
// returns the data to show in the Awaiting Dispo grid
// marked no-cache, just-in-case since igniteUI automatically adds a query string parameter to prevent caching
[HttpGet]
[ResponseCache(NoStore = true)]
public IActionResult Index() =>
Json(_MetrologyRepository.GetAwaitingDisposition(), new JsonSerializerOptions { PropertyNamingPolicy = null, WriteIndented = true });
// this endpoint is used to set the ReviewDate column, causing the header to no longer show in Awaiting Dispo
[HttpPost("/api/awaitingdispo/markasreviewed")]
public IActionResult MarkAsReviewed([FromQuery] long headerid, [FromQuery] int tooltypeid)
{
_ = _MetrologyRepository.UpdateReviewDate(tooltypeid, headerid, false);
return Ok();
}
// this endpoint is used to clear the ReviewDate column, causing the header to show up again
[HttpPost("/api/awaitingdispo/markasawaiting")]
public IActionResult MarkAsAwaiting([FromQuery] long headerid, [FromQuery] int tooltypeid)
{
if (_MetrologyRepository.UpdateReviewDate(tooltypeid, headerid, true) <= 1)
return Ok();
else
return StatusCode(444);
}
}