From e3b4e6842540b5f7236b2d328cd72a489d7bea09 Mon Sep 17 00:00:00 2001 From: Daniel Wathen Date: Wed, 4 Jan 2023 14:32:13 -0700 Subject: [PATCH] Cleaned up references to repositories in the UI that were overlooked --- .../HelperClasses/DailyReportHelper.cs | 16 +- .../Controllers/PlanningReportController.cs | 7 - .../Controllers/ProductionReportController.cs | 9 +- .../wwwroot/Assets/DailyReportInfo.json | 329 +----------------- 4 files changed, 6 insertions(+), 355 deletions(-) diff --git a/ReportingServices.Shared/HelperClasses/DailyReportHelper.cs b/ReportingServices.Shared/HelperClasses/DailyReportHelper.cs index d16173f..92a38f8 100644 --- a/ReportingServices.Shared/HelperClasses/DailyReportHelper.cs +++ b/ReportingServices.Shared/HelperClasses/DailyReportHelper.cs @@ -6,16 +6,9 @@ namespace ReportingServices.Shared.HelperClasses { public static class DailyReportHelper { - private static IFabTimeReportingRepository _fabTimeReportingRepository; - private static IScrapeDatabaseRepository _scrapeDatabaseRepository; private static readonly string _dailyRptFilePath = "wwwroot/Assets/DailyReportInfo.json"; private static readonly string _baseUrlFabtime = "https://localhost:7196/api/FabTime/"; - - public static void SetRepositories(IFabTimeReportingRepository fabTimeReportingRepository, IScrapeDatabaseRepository scrapeDatabaseRepository) - { - _fabTimeReportingRepository = fabTimeReportingRepository; - _scrapeDatabaseRepository = scrapeDatabaseRepository; - } + private static readonly string _baseUrlScrapeDb = "https://localhost:7196/api/ScrapeDB/"; public async static Task SetUpDailyReport() { @@ -35,15 +28,13 @@ namespace ReportingServices.Shared.HelperClasses tasksState.Add(ApiCaller.GetApi>(_baseUrlFabtime + "ToolState?toolType=Metrology")); tasksState.Add(ApiCaller.GetApi>(_baseUrlFabtime + "ToolState?toolType=Cleans")); - report.QuarterlyTargets = _scrapeDatabaseRepository.GetQuarterlyTargets(); + report.QuarterlyTargets = await ApiCaller.GetApi(_baseUrlScrapeDb + "Targets"); Dictionary> entries = JsonFileHandler.LoadJSONFile>>(_dailyRptFilePath); report.CurrentEntries = entries["Current Week"]; report.PreviousEntries = entries["Previous Week"]; - report.SetRDSInfo(_scrapeDatabaseRepository.GetRDSForLastDay()); - report.AddToolAvailibilityByType("ASM", tasksEQState[0].Result); report.AddToolAvailibilityByType("EPP", tasksEQState[1].Result); report.AddToolAvailibilityByType("HTR", tasksEQState[2].Result); @@ -54,7 +45,8 @@ namespace ReportingServices.Shared.HelperClasses report.AddToolStateByType("Metrology", tasksState[3].Result); report.AddToolStateByType("Cleans", tasksState[4].Result); - report.SetReactorInfo(_scrapeDatabaseRepository.GetReactors(), GetUnscheduledReactors(report)); + report.SetRDSInfo(await ApiCaller.GetApi>(_baseUrlScrapeDb + "RDS")); + report.SetReactorInfo(await ApiCaller.GetApi>(_baseUrlScrapeDb + "Reactors"), GetUnscheduledReactors(report)); report.CurrentWeek.SetYieldInformation(task1.Result); report.PreviousWeek.SetYieldInformation(task2.Result); diff --git a/ReportingServices.UI/Controllers/PlanningReportController.cs b/ReportingServices.UI/Controllers/PlanningReportController.cs index 5e5fc3a..5a31f17 100644 --- a/ReportingServices.UI/Controllers/PlanningReportController.cs +++ b/ReportingServices.UI/Controllers/PlanningReportController.cs @@ -1,5 +1,4 @@ using Microsoft.AspNetCore.Mvc; -using ReportingServices.Shared.Repositories; using ReportingServices.Shared.Models.PlanningReport; using ReportingServices.Shared.HelperClasses; @@ -7,14 +6,8 @@ namespace ReportingServices.UI.Controllers { public class PlanningReportController : Controller { - private readonly IScrapeDatabaseRepository _scrapeDatabaseRepository; private readonly string _baseUrl = "https://localhost:7196/api/ScrapeDB/"; - public PlanningReportController(IScrapeDatabaseRepository scrapeDatabaseRepository) - { - _scrapeDatabaseRepository = scrapeDatabaseRepository; - } - public IActionResult Index() { return View(); diff --git a/ReportingServices.UI/Controllers/ProductionReportController.cs b/ReportingServices.UI/Controllers/ProductionReportController.cs index 62e5596..e3d63c4 100644 --- a/ReportingServices.UI/Controllers/ProductionReportController.cs +++ b/ReportingServices.UI/Controllers/ProductionReportController.cs @@ -1,5 +1,4 @@ using Microsoft.AspNetCore.Mvc; -using ReportingServices.Shared.Repositories; using ReportingServices.Shared.HelperClasses; using ReportingServices.Shared.Models.ProductionReport; using ReportingServices.Shared.ViewModels.ProductionReport; @@ -8,18 +7,13 @@ namespace ReportingServices.UI.Controllers { public class ProductionReportController : Controller { - private readonly IScrapeDatabaseRepository _scrapeDatabaseRepository; - private readonly IFabTimeReportingRepository _fabTimeReportingRepository; private readonly ILogger _logger; private readonly int _reportIndex = (int)DateTime.Now.DayOfWeek; private readonly string _dailyRptFilePath = "wwwroot/Assets/DailyReportInfo.json"; private readonly string _toolStateOwnerFilePath = "wwwroot/Assets/ToolStates.json"; - public ProductionReportController(IScrapeDatabaseRepository scrapeDatabaseRepository, - IFabTimeReportingRepository fabTimeReportingRepository, ILogger logger) + public ProductionReportController(ILogger logger) { - _scrapeDatabaseRepository = scrapeDatabaseRepository; - _fabTimeReportingRepository = fabTimeReportingRepository; _logger = logger; } @@ -33,7 +27,6 @@ namespace ReportingServices.UI.Controllers { try { - DailyReportHelper.SetRepositories(_fabTimeReportingRepository, _scrapeDatabaseRepository); DailyReport dailyReport = DailyReportHelper.SetUpDailyReport().Result; Dictionary> toolStateOwners = JsonFileHandler.LoadJSONFile>>(_toolStateOwnerFilePath); diff --git a/ReportingServices.UI/wwwroot/Assets/DailyReportInfo.json b/ReportingServices.UI/wwwroot/Assets/DailyReportInfo.json index 038b86e..9c64b88 100644 --- a/ReportingServices.UI/wwwroot/Assets/DailyReportInfo.json +++ b/ReportingServices.UI/wwwroot/Assets/DailyReportInfo.json @@ -1,328 +1 @@ -{ - "Previous Week": [ - { - "Day": 0, - "Date": "2022-11-27T00:00:00", - "OperatorHeadcountDays": 6, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - }, - { - "Day": 1, - "Date": "2022-11-28T00:00:00", - "OperatorHeadcountDays": 6, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 10, - "HTRSingleLoadLock": 16, - "ASMUnloadTempsLessThan700": 2, - "HTRUnloadTempsLessThan700": 1 - }, - { - "Day": 2, - "Date": "2022-11-29T00:00:00", - "OperatorHeadcountDays": 14, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 3, - "HTRSingleLoadLock": 12, - "ASMUnloadTempsLessThan700": 3, - "HTRUnloadTempsLessThan700": 1 - }, - { - "Day": 3, - "Date": "2022-11-30T00:00:00", - "OperatorHeadcountDays": 6, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - }, - { - "Day": 4, - "Date": "2022-12-01T00:00:00", - "OperatorHeadcountDays": 6, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - }, - { - "Day": 5, - "Date": "2022-12-02T00:00:00", - "OperatorHeadcountDays": 0, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - }, - { - "Day": 6, - "Date": "2022-12-03T00:00:00", - "OperatorHeadcountDays": 13, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - } - ], - "Current Week": [ - { - "Day": 0, - "Date": "2022-12-04T00:00:00", - "OperatorHeadcountDays": 6, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - }, - { - "Day": 1, - "Date": "2022-12-05T00:00:00", - "OperatorHeadcountDays": 6, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 5, - "HTRSingleLoadLock": 14, - "ASMUnloadTempsLessThan700": 3, - "HTRUnloadTempsLessThan700": 3 - }, - { - "Day": 2, - "Date": "2022-12-13T00:00:00", - "OperatorHeadcountDays": 11, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - }, - { - "Day": 3, - "Date": "2022-12-07T00:00:00", - "OperatorHeadcountDays": 13, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 7, - "HTRSingleLoadLock": 15, - "ASMUnloadTempsLessThan700": 4, - "HTRUnloadTempsLessThan700": 3 - }, - { - "Day": 4, - "Date": "2022-12-22T00:00:00", - "OperatorHeadcountDays": 15, - "OperatorHeadcountNights": 12, - "OperatorCallOutsDays": 0, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R23,R24,R26,R28", - "DailyPartChanges": "R21", - "WeeklyPartChanges": "R21,R23,R25", - "ASMSingleLoadLock": 7, - "HTRSingleLoadLock": 14, - "ASMUnloadTempsLessThan700": 4, - "HTRUnloadTempsLessThan700": 3 - }, - { - "Day": 5, - "Date": "2022-12-09T00:00:00", - "OperatorHeadcountDays": 0, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 2, - "HTRSingleLoadLock": 14, - "ASMUnloadTempsLessThan700": 2, - "HTRUnloadTempsLessThan700": 1 - }, - { - "Day": 6, - "Date": "2022-12-10T00:00:00", - "OperatorHeadcountDays": 13, - "OperatorHeadcountNights": 15, - "OperatorCallOutsDays": 2, - "OperatorCallOutsNights": 0, - "EngineeringHeadcountDays": 2, - "EngineeringHeadcountNights": 2, - "EngineeringCallOutsDays": 0, - "EngineeringCallOutsNights": 0, - "MaintenanceHeadcountDays": 4, - "MaintenanceHeadcountNights": 5, - "MaintenanceCallOutsDays": 0, - "MaintenanceCallOutsNights": 2, - "BottleChanges": "R22", - "DailyPartChanges": "R22,R23,R25", - "WeeklyPartChanges": "R21,R23,R29,R30", - "ASMSingleLoadLock": 0, - "HTRSingleLoadLock": 0, - "ASMUnloadTempsLessThan700": 0, - "HTRUnloadTempsLessThan700": 0 - } - ] -} \ No newline at end of file +{"Previous Week":[{"Day":0,"Date":"2022-11-27T00:00:00","OperatorHeadcountDays":6,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0},{"Day":1,"Date":"2022-11-28T00:00:00","OperatorHeadcountDays":6,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":10,"HTRSingleLoadLock":16,"ASMUnloadTempsLessThan700":2,"HTRUnloadTempsLessThan700":1},{"Day":2,"Date":"2022-11-29T00:00:00","OperatorHeadcountDays":14,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":3,"HTRSingleLoadLock":12,"ASMUnloadTempsLessThan700":3,"HTRUnloadTempsLessThan700":1},{"Day":3,"Date":"2022-11-30T00:00:00","OperatorHeadcountDays":6,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0},{"Day":4,"Date":"2022-12-01T00:00:00","OperatorHeadcountDays":6,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0},{"Day":5,"Date":"2022-12-02T00:00:00","OperatorHeadcountDays":0,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0},{"Day":6,"Date":"2022-12-03T00:00:00","OperatorHeadcountDays":13,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0}],"Current Week":[{"Day":0,"Date":"2022-12-04T00:00:00","OperatorHeadcountDays":6,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0},{"Day":1,"Date":"2022-12-05T00:00:00","OperatorHeadcountDays":6,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":5,"HTRSingleLoadLock":14,"ASMUnloadTempsLessThan700":3,"HTRUnloadTempsLessThan700":3},{"Day":2,"Date":"2022-12-13T00:00:00","OperatorHeadcountDays":11,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0},{"Day":3,"Date":"2022-12-07T00:00:00","OperatorHeadcountDays":13,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":7,"HTRSingleLoadLock":15,"ASMUnloadTempsLessThan700":4,"HTRUnloadTempsLessThan700":3},{"Day":4,"Date":"2022-12-22T00:00:00","OperatorHeadcountDays":15,"OperatorHeadcountNights":12,"OperatorCallOutsDays":0,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R23,R24,R26,R28","DailyPartChanges":"R21","WeeklyPartChanges":"R21,R23,R25","ASMSingleLoadLock":7,"HTRSingleLoadLock":14,"ASMUnloadTempsLessThan700":4,"HTRUnloadTempsLessThan700":3},{"Day":5,"Date":"2022-12-09T00:00:00","OperatorHeadcountDays":0,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":2,"HTRSingleLoadLock":14,"ASMUnloadTempsLessThan700":2,"HTRUnloadTempsLessThan700":1},{"Day":6,"Date":"2022-12-10T00:00:00","OperatorHeadcountDays":13,"OperatorHeadcountNights":15,"OperatorCallOutsDays":2,"OperatorCallOutsNights":0,"EngineeringHeadcountDays":2,"EngineeringHeadcountNights":2,"EngineeringCallOutsDays":0,"EngineeringCallOutsNights":0,"MaintenanceHeadcountDays":4,"MaintenanceHeadcountNights":5,"MaintenanceCallOutsDays":0,"MaintenanceCallOutsNights":2,"BottleChanges":"R22","DailyPartChanges":"R22,R23,R25","WeeklyPartChanges":"R21,R23,R29,R30","ASMSingleLoadLock":0,"HTRSingleLoadLock":0,"ASMUnloadTempsLessThan700":0,"HTRUnloadTempsLessThan700":0}]} \ No newline at end of file