Add Blazor WebApp and rework data handling to utilize Entity Framework

This commit is contained in:
2025-09-11 11:49:48 -04:00
parent 5220e61c79
commit 3daa3b81b3
111 changed files with 6039 additions and 946 deletions
+20 -18
View File
@@ -16,15 +16,16 @@
{
var assignments
= student.Teams.Where(ea => ea.Students.Contains(student))
.Select(ea => ea.Event)
.Select(ea => ea.EventDefinition)
.Distinct()
.OrderBy(e =>
@* .OrderBy(e =>
{
var r = student.RankedEventPicks.IndexOf(e);
r = r >= 0 ? r : 10;
//r = r * (4 - e.LevelOfEffort.Value);
return r;
}).ToList();
}) *@
.ToList();
<tr>
<td>
@@ -34,11 +35,12 @@
@foreach (var evt in assignments)
{
var h = student.RankedEventPicks.IndexOf(evt) + 1;
<td class="@{ GetOrderClass(h); }">
@* var h = student.RankedEventPicks.IndexOf(evt) + 1; *@
@* @{ GetOrderClass(h); } *@
<td class="">
@evt.ShortName @Html.Partial("EffortStarsPartial", evt.LevelOfEffort)
@{
if (evt.Format == EventFormat.Individual)
if (evt.EventFormat == EventFormat.Individual)
{
<sup class="activity">(ind)</sup>
}
@@ -63,7 +65,7 @@
<th>Team</th>
<th>Teammates</th>
</tr>
@foreach (var student in Model.Item1.OrderBy(s => s.Name))
@foreach (var student in Model.Item1.RankBy(s => s.Name))
{
var teams = student.Teams;
@@ -87,11 +89,11 @@
{
<span>(Cpt .)</span>
}
if (!team.Event.InterviewOrPresentation)
if (!team.EventDefinition.InterviewOrPresentation)
{
ind.Add("a");
}
if (team.Event.Format is EventFormat.Individual)
if (team.EventDefinition.EventDefinitionFormat is EventDefinitionEventDefinitionFormat.Individual)
{
ind.Add("i");
}
@@ -102,16 +104,16 @@
}
</td>
<td>
@string.Join(", ", team.Students.Where(s => s != student).OrderByDescending(s => s.TsaYear + s.Grade).Select(s => s.FirstName))
@string.Join(", ", team.Students.Where(s => s != student).RankByDescending(s => s.TsaYear + s.Grade).Select(s => s.FirstName))
</td>
</tr>
}
}
</table>
<p>
(a) denotes an event that has activity other than interview or presentation at state
(a) denotes an eventDefinition that has activity other than interview or presentation at state
<br />
(i) denotes an individual event
(i) denotes an individual eventDefinition
</p> *@
@@ -125,15 +127,16 @@
{
var assignments
= student.Teams.Where(ea => ea.Students.Contains(student))
.Select(ea => ea.Event)
.Select(ea => ea.EventDefinition)
.Distinct()
.OrderBy(e =>
@* .OrderBy(e =>
{
var r = student.RankedEventPicks.IndexOf(e);
r = r >= 0 ? r : 10;
//r = r * (4 - e.LevelOfEffort.Value);
return r;
}).ToList();
}) *@
.ToList();
<tr>
<td>
@@ -142,11 +145,10 @@
@foreach (var evt in assignments)
{
var h = student.RankedEventPicks.IndexOf(evt) + 1;
<td>
@evt.Name
@{
if (evt.Format == EventFormat.Individual)
if (evt.EventFormat == EventFormat.Individual)
{
<sup class="activity">(individual)</sup>
}
@@ -170,7 +172,7 @@
private void GetTeamClass(Team team)
{
// if (team.Event.RegionalEvent)
// if (team.EventDefinition.RegionalEvent)
// {
// @Html.Raw("regional");
// }