131 lines
4.0 KiB
C#
131 lines
4.0 KiB
C#
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Mvc.Filters;
|
|
using OI.Metrology.Archive.Models;
|
|
using OI.Metrology.Shared.Models.Stateless;
|
|
using OI.Metrology.Shared.Repositories;
|
|
using OI.Metrology.Shared.ViewModels;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using IO = System.IO;
|
|
|
|
namespace OI.Metrology.Archive.Controllers;
|
|
|
|
public class PagesController : Controller
|
|
{
|
|
private readonly bool _IsTestDatabase;
|
|
private readonly IRdsMaxRepo _RdsMaxRepo;
|
|
private readonly IMetrologyRepository _MetrologyRepo;
|
|
|
|
public PagesController(AppSettings appSettings, IMetrologyRepository metrologyRepository, IRdsMaxRepo rdsMaxRepo)
|
|
{
|
|
_RdsMaxRepo = rdsMaxRepo;
|
|
_MetrologyRepo = metrologyRepository;
|
|
_IsTestDatabase = appSettings.ConnectionString.Contains("test", StringComparison.InvariantCultureIgnoreCase);
|
|
}
|
|
|
|
public override void OnActionExecuted(ActionExecutedContext context)
|
|
{
|
|
base.OnActionExecuted(context);
|
|
ViewBag.IsTestDatabase = _IsTestDatabase;
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("/")]
|
|
public IActionResult Index() =>
|
|
View("RunHeaders");
|
|
|
|
[HttpGet]
|
|
[Route("/AwaitingDispo")]
|
|
[Route("/Metrology/AwaitingDispo")]
|
|
public IActionResult AwaitingDispo() =>
|
|
View();
|
|
|
|
[HttpGet]
|
|
[Route("/RunInfo")]
|
|
[Route("/Metrology/RunInfo")]
|
|
public IActionResult RunInfo([FromQuery] int tooltypeid = 1, [FromQuery] int headerid = 0)
|
|
{
|
|
RunInfo m = new()
|
|
{
|
|
ToolTypeID = tooltypeid,
|
|
HeaderID = headerid,
|
|
HeaderAttachmentID = Guid.Empty,
|
|
};
|
|
if (headerid > 0)
|
|
{
|
|
m.HeaderAttachmentID = _MetrologyRepo.GetHeaderAttachmentID(tooltypeid, headerid);
|
|
}
|
|
return View(m);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("/RunHeaders")]
|
|
[Route("/Metrology/RunHeaders")]
|
|
public IActionResult RunHeaders() =>
|
|
View();
|
|
|
|
[HttpGet]
|
|
[Route("/Crash")]
|
|
public IActionResult Crash() =>
|
|
throw new Exception("Test unhandled exception");
|
|
|
|
[HttpGet]
|
|
[Route("/Step1")]
|
|
[Route("/Metrology/Step1")]
|
|
public IActionResult Step1(string mod = "", string equipment = "", string layer = "", string zone = "", string rds = "", string initials = "")
|
|
{
|
|
string directory = "D:/Tmp/Metrology";
|
|
if (!IO.Directory.Exists(directory))
|
|
_ = IO.Directory.CreateDirectory(directory);
|
|
string[] model = new string[] { mod, equipment, layer, zone, rds, initials };
|
|
if (!string.IsNullOrEmpty(initials))
|
|
IO.File.WriteAllLines(IO.Path.Combine(directory, $"{DateTime.Now.Ticks}-{initials}.rsv"), model);
|
|
return View(model);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("/Step2")]
|
|
[Route("/Metrology/Step2")]
|
|
public IActionResult Step2(string mod) =>
|
|
View(new string[] { mod });
|
|
|
|
[HttpGet]
|
|
[Route("/Step3")]
|
|
[Route("/Metrology/Step3")]
|
|
public IActionResult Step3(string mod, string equipment) =>
|
|
View(new string[] { mod, equipment });
|
|
|
|
[HttpGet]
|
|
[Route("/Step4")]
|
|
[Route("/Metrology/Step4")]
|
|
public IActionResult Step4(string mod, string equipment, string layer) =>
|
|
View(new string[] { mod, equipment, layer });
|
|
|
|
[HttpGet]
|
|
[Route("/Step5")]
|
|
[Route("/Metrology/Step5")]
|
|
public IActionResult Step5(string mod, string equipment, string layer, string zone) =>
|
|
View(new string[] { mod, equipment, layer, zone });
|
|
|
|
[HttpGet]
|
|
[Route("/Step6")]
|
|
[Route("/Metrology/Step6")]
|
|
public IActionResult Step6(string mod, string equipment, string layer, string zone, string rds) =>
|
|
View(new string[] { mod, equipment, layer, zone, rds });
|
|
|
|
[HttpGet]
|
|
[Route("/RdsMax")]
|
|
[Route("/Metrology/RdsMax")]
|
|
public IActionResult RdsMax()
|
|
{
|
|
Shared.DataModels.RDS.Max[] collection = _RdsMaxRepo.GetMaxRDS();
|
|
List<string[]> results = _RdsMaxRepo.Convert(collection);
|
|
return View(results);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("/Reactor")]
|
|
[Route("/Metrology/Reactor")]
|
|
public IActionResult Reactor() => View(new RunInfo());
|
|
|
|
} |