Added Dual Layer data in the report (pulling from the database and displaying it back on the main form)
This commit is contained in:
@ -110,14 +110,6 @@ namespace ReportingServices.Controllers
|
||||
Task<List<ToolStateCurrent>> task9 = ToolStatesCaller("Metrology");
|
||||
Task<List<ToolStateCurrent>> task10 = ToolStatesCaller("Cleans");
|
||||
|
||||
report.CurrentWeek.SetOutsByDay(task1.Result);
|
||||
report.PreviousWeek.SetOutsByDay(task2.Result);
|
||||
|
||||
List<ScrapByDay> scrap = _scrapeDatabaseRepository.GetScrapByDay(task1.Result);
|
||||
List<ScrapByDay> previousScrap = _scrapeDatabaseRepository.GetScrapByDay(task2.Result);
|
||||
|
||||
report.CurrentWeek.SetScrapByDay(scrap);
|
||||
report.PreviousWeek.SetScrapByDay(previousScrap);
|
||||
report.AddToolAvailibilityByType("ASM", task3.Result);
|
||||
report.AddToolAvailibilityByType("EPP", task4.Result);
|
||||
report.AddToolAvailibilityByType("HTR", task5.Result);
|
||||
@ -126,6 +118,16 @@ namespace ReportingServices.Controllers
|
||||
report.AddToolStateByType("HTR", task8.Result);
|
||||
report.AddToolStateByType("Metrology", task9.Result);
|
||||
report.AddToolStateByType("Cleans", task10.Result);
|
||||
|
||||
report.CurrentWeek.SetOutsByDay(task1.Result);
|
||||
report.PreviousWeek.SetOutsByDay(task2.Result);
|
||||
|
||||
List<ScrapByDay> scrap = _scrapeDatabaseRepository.GetScrapByDay(task1.Result);
|
||||
List<ScrapByDay> previousScrap = _scrapeDatabaseRepository.GetScrapByDay(task2.Result);
|
||||
|
||||
report.CurrentWeek.SetScrapByDay(scrap);
|
||||
report.PreviousWeek.SetScrapByDay(previousScrap);
|
||||
|
||||
report.ReverseLists();
|
||||
|
||||
report.QuarterlyTargets = _scrapeDatabaseRepository.GetQuarterlyTargets();
|
||||
@ -153,6 +155,8 @@ namespace ReportingServices.Controllers
|
||||
|
||||
reactors = reactors.Substring(0, reactors.Length - 2);
|
||||
|
||||
report.DualLayerReactors = _scrapeDatabaseRepository.GetDualLayerReactors();
|
||||
|
||||
int[] toolsByWaferSizeScheduled = _scrapeDatabaseRepository.GetNumberOfToolsByWaferSize(reactors);
|
||||
|
||||
report.NumberOfToolsWaferSize6INScheduled = toolsByWaferSizeScheduled[0];
|
||||
|
@ -279,5 +279,50 @@ namespace ReportingServices.Dependency_Injections
|
||||
|
||||
return quarterlyTargets;
|
||||
}
|
||||
|
||||
public Dictionary<string, List<string>> GetDualLayerReactors()
|
||||
{
|
||||
Dictionary<string, List<string>> dualLayers = new();
|
||||
|
||||
dualLayers.Add("ASM", new List<string>());
|
||||
dualLayers.Add("HTR", new List<string>());
|
||||
dualLayers.Add("EPP", new List<string>());
|
||||
|
||||
OpenConnection();
|
||||
|
||||
SqlCommand cmd = _connection.CreateCommand();
|
||||
|
||||
string query = "SELECT REACTOR_TYPE, REACTOR FROM " +
|
||||
"(SELECT " +
|
||||
" REACTOR, " +
|
||||
" rds.REACTOR_TYPE, " +
|
||||
" PROD_SPEC_ID, " +
|
||||
" SUM(CASE WHEN psn.LAYER_TYPE = 'Standard 2 Layer' THEN 1 ELSE 0 END) AS Dual " +
|
||||
" FROM RDS " +
|
||||
"INNER JOIN PROD_SPEC psn ON rds.PROD_SPEC_ID = psn.SEQ " +
|
||||
" WHERE DATE_OUT BETWEEN DATEADD(DAY, -1, SYSDATETIME()) AND SYSDATETIME() " +
|
||||
"GROUP BY REACTOR, PROD_SPEC_ID, rds.REACTOR_TYPE) res " +
|
||||
"WHERE res.Dual > 0 " +
|
||||
"ORDER BY 1, 2 ";
|
||||
|
||||
cmd.CommandText = query;
|
||||
|
||||
using (SqlDataReader reader = cmd.ExecuteReader())
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
if (reader[0].ToString() == "ASM+")
|
||||
dualLayers["ASM"].Add("R" + reader[1].ToString());
|
||||
else
|
||||
dualLayers[reader[0].ToString()].Add("R" + reader[1].ToString());
|
||||
}
|
||||
}
|
||||
|
||||
cmd.Dispose();
|
||||
|
||||
CloseConnection();
|
||||
|
||||
return dualLayers;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -14,5 +14,6 @@ namespace ReportingServices.Dependency_Injections
|
||||
public int[] GetNumberOfSingleLoadLocks();
|
||||
public int[] GetNumberOfToolUnloadTempsLessThan700();
|
||||
public QuarterlyTargets GetQuarterlyTargets();
|
||||
public Dictionary<string, List<string>> GetDualLayerReactors();
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,7 @@ namespace ReportingServices.Models.ProductionReport
|
||||
public Dictionary<string, List<EquipmentStateByDay>> ToolAvailibilityByType { get; set; }
|
||||
public Dictionary<string, ToolStateByType> ToolStateByType { get; set; }
|
||||
public Dictionary<string, List<string>> ToolStatesByOwner { get; set; }
|
||||
public Dictionary<string, List<string>> DualLayerReactors { get; set; }
|
||||
public List<ManualReportEntries> PreviousEntries { get; set; }
|
||||
public List<ManualReportEntries> CurrentEntries { get; set; }
|
||||
public int NumberOfToolsWaferSize6IN { get; set; }
|
||||
|
@ -203,7 +203,13 @@
|
||||
<li>200mm - @Model.NumberOfToolsWaferSize8INScheduled</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Dual Layer Reactors</li>
|
||||
<li>Dual Layer Reactors
|
||||
<ul>
|
||||
<li>ASM - @(string.Join(',', Model.DualLayerReactors["ASM"]))</li>
|
||||
<li>HTR - @(string.Join(',', Model.DualLayerReactors["HTR"]))</li>
|
||||
<li>EpiPro - @(string.Join(',', Model.DualLayerReactors["EPP"]))</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Engineering Focus Tools (Down > 12 hours)
|
||||
<ul>
|
||||
<li>@string.Join(",", toolsDownGreaterThan12Hours)</li>
|
||||
|
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user