@page "/DailyReport" @using ReportingServices.Shared.Models.ProductionReport; @using ReportingServices.Shared.ViewModels.ProductionReport; Daily Passdown | Mesa Reporting Services

Daily Report - ScrapeDB



@if (_dailyReport is null || _rpt is null) { } else {


Daily Target Summary


Edit

Current Reactors Down(@_dailyReport.ToolEvents.Where(x => x.IsInProduction == false).Count()):
@{ List asmTools = _dailyReport.ToolEvents.Where(x => x.IsInProduction == false && x.Type.Contains("ASM")).ToList(); } ASM(@asmTools.Count()) @foreach (ToolEventView tool in asmTools) { string owner = ""; if (_dailyReport.ToolStatesByOwner["Maintenance"].Contains(tool.MostRecentEvent.REACT_MODE)) owner = "Maint"; else if (_dailyReport.ToolStatesByOwner["Engineering"].Contains(tool.MostRecentEvent.REACT_MODE)) owner = "Eng"; else owner = "Prod"; if (tool.Downtime > 12) _myClass = "tableDowntime"; else _myClass = ""; }
Reactor Owner Issue Downtime
@tool.Reactor @owner @tool.MostRecentEvent.COMMENT @string.Format("{0:##,###.##}", tool.Downtime)
@{ List eppTools = _dailyReport.ToolEvents.Where(x => x.IsInProduction == false && x.Type.Contains("EPP")).ToList(); } EPP(@eppTools.Count()) @foreach (ToolEventView tool in eppTools) { string owner = ""; if (_dailyReport.ToolStatesByOwner["Maintenance"].Contains(tool.MostRecentEvent.REACT_MODE)) owner = "Maint"; else if (_dailyReport.ToolStatesByOwner["Engineering"].Contains(tool.MostRecentEvent.REACT_MODE)) owner = "Eng"; else owner = "Prod"; if (tool.Downtime > 12) _myClass = "tableDowntime"; else _myClass = ""; }
Reactor Owner Issue Downtime
@tool.Reactor @owner @tool.MostRecentEvent.COMMENT @string.Format("{0:##,###.##}", tool.Downtime)
@{ List htrTools = _dailyReport.ToolEvents.Where(x => x.IsInProduction == false && x.Type.Contains("HTR")).ToList(); } HTR(@htrTools.Count()) @foreach (ToolEventView tool in htrTools) { string owner = ""; if (_dailyReport.ToolStatesByOwner["Maintenance"].Contains(tool.MostRecentEvent.REACT_MODE)) owner = "Maint"; else if (_dailyReport.ToolStatesByOwner["Engineering"].Contains(tool.MostRecentEvent.REACT_MODE)) owner = "Eng"; else owner = "Prod"; if (tool.Downtime > 12) _myClass = "tableDowntime"; else _myClass = ""; }
Reactor Owner Issue Downtime
@tool.Reactor @owner @tool.MostRecentEvent.COMMENT @string.Format("{0:##,###.##}", tool.Downtime)

*Rows highlighted in orange have been down for more than 12 hours



@for (int i = 0; i < 7; i++) { } @for (int i = 0; i < 7; i++) { asmTools = _dailyReport.ToolEvents.Where(x => x.Type.Contains("ASM")).ToList(); double availablePct = 0; if (i < asmTools[0].Uptime.Count) { for (int j = 0; j < asmTools.Count; j++) { availablePct += asmTools[j].Uptime[i].UptimePercentage; } if (availablePct / asmTools.Count < .82) _myClass = "table-danger text-danger"; else _myClass = ""; _ASMAvailablePct += availablePct / asmTools.Count; } else { } } @for (int i = 0; i < 7; i++) { eppTools = _dailyReport.ToolEvents.Where(x => x.Type.Contains("EPP")).ToList(); double availablePct = 0; if (i < eppTools[0].Uptime.Count) { for (int j = 0; j < eppTools.Count; j++) { availablePct += eppTools[j].Uptime[i].UptimePercentage; } if (availablePct / eppTools.Count < .60) _myClass = "table-danger text-danger"; else _myClass = ""; _EPPAvailablePct += availablePct / eppTools.Count; } else { } } @for (int i = 0; i < 7; i++) { htrTools = _dailyReport.ToolEvents.Where(x => x.Type.Contains("HTR")).ToList(); double availablePct = 0; if (i < htrTools[0].Uptime.Count) { for (int j = 0; j < htrTools.Count; j++) { availablePct += htrTools[j].Uptime[i].UptimePercentage; } if (availablePct / htrTools.Count < .78) _myClass = "table-danger text-danger"; else _myClass = ""; _HTRAvailablePct += availablePct / htrTools.Count; } else { } } @for (int i = 0; i < 7; i++) { if (i < _dailyReport.SLLTools.Count()) { _ASMSLL += @_dailyReport.SLLTools[i].ASM; } else { } } @for (int i = 0; i < 7; i++) { int index = i == 6 ? 0 : i + 1; if (i < _dailyReport.SLLTools.Count()) { _HTRSLL += @_dailyReport.SLLTools[i].HTR; } else { } } @for (int i = 0; i < 7; i++) { if (i < _dailyReport.UnloadTempsByDay.Count()) { _ASMUnloadTemps += @_dailyReport.UnloadTempsByDay[i].ASMUnloadsBelow700; } else { } } @for (int i = 0; i < 7; i++) { if (i < _dailyReport.UnloadTempsByDay.Count()) { _HTRUnloadTemps += @_dailyReport.UnloadTempsByDay[i].HTRUnloadsBelow700; } else { } }
Monday Tuesday Wednesday Thursday Friday Saturday Sunday WTD Daily / Weekly
@_dailyReport.StartDate.AddDays(i).ToString("MM/dd/yyyy")Actual Target
ASMs Uptime@string.Format("{0:P2}", availablePct / asmTools.Count)@string.Format("{0:P2}", _ASMAvailablePct / _numberOfDaysInWeek) 82%
EPPs Uptime@string.Format("{0:P2}", availablePct / eppTools.Count)@string.Format("{0:P2}", _EPPAvailablePct / _numberOfDaysInWeek) 60%
HTRs Uptime@string.Format("{0:P2}", availablePct / htrTools.Count)@string.Format("{0:P2}", _HTRAvailablePct / _numberOfDaysInWeek) 78%
ASMs SLL Tool Count@_dailyReport.SLLTools[i].ASM@(_ASMSLL / _numberOfDaysInWeek) 0
HTRs SLL Tool Count@_dailyReport.SLLTools[i].HTR@(_HTRSLL / _numberOfDaysInWeek) 0
ASMs <700C (Unload Temps)@_dailyReport.UnloadTempsByDay[i].ASMUnloadsBelow700@(_ASMUnloadTemps / _numberOfDaysInWeek) 0
HTRs <700C (Unload Temps)@_dailyReport.UnloadTempsByDay[i].HTRUnloadsBelow700@(_HTRUnloadTemps / _numberOfDaysInWeek) 0
}