Files

118 lines
4.9 KiB
Plaintext
Raw Permalink Normal View History

2021-07-21 15:44:14 +02:00
@using WotBlitzStatisticsPro.Blazor.Helpers
2022-05-05 12:28:16 +02:00
@using MediatR
@using WotBlitzStatisticsPro.Blazor.Messages
2021-07-21 15:44:14 +02:00
@inject IStringLocalizer<App> Localize;
2022-05-05 12:28:16 +02:00
@inject IMediator Mediator
2021-07-21 15:44:14 +02:00
<div class="row">
2022-05-04 16:29:29 +02:00
<RadzenCard class="m-3" style="width: 350px;">
<table class="table" width="100%">
2021-07-21 15:44:14 +02:00
<tbody>
<tr>
<td>@Localize["Battles"]:</td>
2022-05-05 10:59:04 +02:00
<td align="right"><b>@AccountInfo.Battles.ToString("N0")</b></td>
2021-07-21 15:44:14 +02:00
</tr>
<tr>
<td>@Localize["Win rate"]:</td>
2022-05-05 10:59:04 +02:00
<td align="right">
2021-07-21 15:44:14 +02:00
<b>@AccountInfo.WinRate.ToString("N2")%</b>
<div style="background-color: @AccountInfo.WinRate.ScaleColor(); width: 100%; height: 5px; margin-left: 2px; margin-right: 2px;"></div>
</td>
</tr>
<tr>
<td>@Localize["Wn7"]:</td>
2022-05-05 10:59:04 +02:00
<td align="right">
2021-07-21 15:44:14 +02:00
<b>@AccountInfo.Wn7.ToString("N2")</b>
<div style="background-color: @AccountInfo.Wn7.Wn7ScaleColor(); width: 100%; height: 5px; margin-left: 2px; margin-right: 2px;"></div>
</td>
</tr>
<tr>
2022-05-05 10:59:04 +02:00
<td>@Localize["Average XP"]:</td>
<td align="right"><b>@AccountInfo.AvgXp.ToString("N0")</b></td>
2021-07-21 15:44:14 +02:00
</tr>
<tr>
2022-05-05 10:59:04 +02:00
<td>@Localize["Average Damage"]:</td>
<td align="right"><b>@AccountInfo.AvgDamage.ToString("N0")</b></td>
</tr>
<tr>
<td>@Localize["Damage coefficient"]:</td>
<td align="right"><b>@AccountInfo.DamageCoefficient.ToString("N2")</b></td>
</tr>
<tr>
<td>@Localize["Survival rate"]:</td>
<td align="right"><b>@AccountInfo.SurvivalRate.ToString("N0")%</b></td>
</tr>
<tr>
<td>@Localize["Avg tier"]:</td>
<td align="right"><b>@AccountInfo.AvgTier.ToString("N2")</b></td>
2021-07-21 15:44:14 +02:00
</tr>
</tbody>
</table>
2022-05-04 16:29:29 +02:00
</RadzenCard>
<RadzenCard class="m-3" style="width: 350px;">
<h3 class="h5">@Localize["Most effective tank"]</h3>
<div class="row">
<div class="col col-sm col-md col-lg col-xl">
</div>
2022-05-05 12:28:16 +02:00
<div class="col col-sm col-md col-lg col-xl" @onclick="@(async (e) => { await Mediator.Publish(new OpenTankDialogMessage(MostRelevantTank)); })">
2022-05-04 16:29:29 +02:00
@if (MostRelevantTank != null)
{
<TankCard Tank=@MostRelevantTank></TankCard>
}
</div>
<div class="col col-sm col-md col-lg col-xl">
</div>
2021-07-23 12:29:37 +02:00
2022-05-04 16:29:29 +02:00
</div>
</RadzenCard>
<RadzenCard class="m-3" style="width: 350px;">
<h3 class="h5">@Localize["Tank with Max XP"] (@AccountInfo.MaxXp.ToString("N0"))</h3>
<div class="row">
<div class="col col-sm col-md col-lg col-xl">
</div>
2022-05-05 12:28:16 +02:00
<div class="col col-sm col-md col-lg col-xl" @onclick="@(async (e) => { await Mediator.Publish(new OpenTankDialogMessage(MaxXpTank)); })">
2022-05-04 16:29:29 +02:00
@if (MaxXpTank != null)
{
<TankCard Tank=@MaxXpTank></TankCard>
}
</div>
<div class="col col-sm col-md col-lg col-xl">
</div>
</div>
</RadzenCard>
<RadzenCard class="m-3" style="width: 350px;">
<h3 class="h5">@Localize["Tank with Max frags"] (@AccountInfo.MaxFrags)</h3>
<div class="row">
<div class="col col-sm col-md col-lg col-xl">
</div>
2022-05-05 12:28:16 +02:00
<div class="col col-sm col-md col-lg col-xl" @onclick="@(async (e) => { await Mediator.Publish(new OpenTankDialogMessage(MaxFragsTank)); })">
2022-05-04 16:29:29 +02:00
@if (MaxFragsTank != null)
{
<TankCard Tank=@MaxFragsTank></TankCard>
}
</div>
<div class="col col-sm col-md col-lg col-xl">
</div>
</div>
</RadzenCard>
2022-05-05 10:59:04 +02:00
<OverallStatisticsCard Statistics="@AccountInfo"></OverallStatisticsCard>
2021-07-21 15:44:14 +02:00
</div>
2022-05-04 16:29:29 +02:00
2021-06-01 09:31:11 +02:00
@code {
2021-06-04 12:33:10 +02:00
[Parameter]
2021-06-04 15:35:53 +02:00
public IAccount AccountInfo { get; set; }
2021-07-21 15:44:14 +02:00
public ITank? MostRelevantTank;
2021-07-23 12:29:37 +02:00
public ITank? MaxXpTank;
public ITank? MaxFragsTank;
2021-07-21 15:44:14 +02:00
protected override void OnInitialized()
{
MostRelevantTank = AccountInfo?.Tanks?.FindMostRelevantTank();
2021-07-23 12:29:37 +02:00
MaxXpTank = AccountInfo?.Tanks?.FirstOrDefault(t => t.TankId == AccountInfo.MaxXpTankId);
MaxFragsTank = AccountInfo?.Tanks?.FirstOrDefault(t => t.TankId == AccountInfo.MaxFragsTankId);
2021-07-21 15:44:14 +02:00
}
2021-06-01 09:31:11 +02:00
}