using Microsoft.AspNetCore.Mvc; namespace OI.Metrology.Server.ApiControllers; using OI.Metrology.Shared.Models.Stateless; using System.Text.Json; [Route("api/[controller]")] public class PinController : Controller, IPinController { private readonly IPinRepository _PinRepository; private readonly IMetrologyRepository _MetrologyRepository; public PinController(ILogger logger, IMetrologyRepository metrologyRepository, IPinRepository pinRepository) { _MetrologyRepository = metrologyRepository; _PinRepository = pinRepository; } [HttpPost("/api/pin/markAsPinned")] public IActionResult MarkAsPinned(Shared.DataModels.HeaderCommon headerCommon) { _PinRepository.SetPinnedTable(headerCommon); return Ok(); } [HttpGet] [Route("{id}/pinned")] public IActionResult GetPinnedTable(int id, string? biorad_id = null, string? cde_id = null, string? rds = null) => Json(_PinRepository.GetPinnedTable(_MetrologyRepository, id, biorad_id, cde_id, rds), new JsonSerializerOptions { PropertyNamingPolicy = null, WriteIndented = true }); }