105 lines
5.0 KiB
Plaintext
105 lines
5.0 KiB
Plaintext
@using RazorLight
|
|
@inherits TemplatePage<Elwig.Documents.DeliveryDepreciationList>
|
|
@model Elwig.Documents.DeliveryDepreciationList
|
|
@{ Layout = "Document"; }
|
|
<link rel="stylesheet" href="file:///@Raw(Model.DataPath)\resources\DeliveryDepreciationList.css" />
|
|
<main>
|
|
<h1>Abwertungsliste</h1>
|
|
<h2>@Model.Filter</h2>
|
|
<table class="journal">
|
|
<colgroup>
|
|
<col style="width: 25mm;"/>
|
|
<col style="width: 6mm;"/>
|
|
<col style="width: 20mm;"/>
|
|
<col style="width: 15mm;"/>
|
|
<col style="width: 35mm;"/>
|
|
<col style="width: 30mm;"/>
|
|
<col style="width: 10mm;"/>
|
|
<col style="width: 10mm;"/>
|
|
<col style="width: 14mm;"/>
|
|
</colgroup>
|
|
<thead>
|
|
<tr>
|
|
<th rowspan="2" style="text-align: left;">Lieferschein-Nr.</th>
|
|
<th rowspan="2" class="narrow">Pos.</th>
|
|
<th rowspan="2">Datum</th>
|
|
<th rowspan="2">Zeit</th>
|
|
<th rowspan="2" style="text-align: left;">Sorte</th>
|
|
<th rowspan="2" style="text-align: left;">Attr./Bewirt.</th>
|
|
<th colspan="2">Gradation</th>
|
|
<th>Gewicht</th>
|
|
</tr>
|
|
<tr>
|
|
<th class="unit">[°Oe]</th>
|
|
<th class="unit narrow">[°KMW]</th>
|
|
<th class="unit">[kg]</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@{
|
|
int? lastMember = null;
|
|
}
|
|
@foreach (var p in Model.Deliveries) {
|
|
if (lastMember != p.MgNr) {
|
|
<tr class="subheading @(lastMember != null ? "new" : "")">
|
|
@{
|
|
var memberDeliveries = Model.Deliveries.Where(d => d.MgNr == p.MgNr).ToList();
|
|
var memberKmw = Elwig.Helpers.Utils.AggregateDeliveryPartsKmw(memberDeliveries);
|
|
var memberOe = Elwig.Helpers.Utils.KmwToOe(memberKmw);
|
|
}
|
|
<th colspan="5">
|
|
@($"{p.MgNr}, {p.AdministrativeName}")
|
|
</th>
|
|
<td>Teil-Lfrg.: <span style="float: right;">@($"{memberDeliveries.Count():N0}")</span></td>
|
|
<td class="center">@($"{memberOe:N0}")</td>
|
|
<td class="center">@($"{memberKmw:N1}")</td>
|
|
<td class="number">@($"{memberDeliveries.Sum(p => p.Weight):N0}")</td>
|
|
</tr>
|
|
}
|
|
<tr>
|
|
<td>@p.LsNr</td>
|
|
<td class="center narrow">@p.Pos</td>
|
|
<td>@($"{p.Date:dd.MM.yyyy}")</td>
|
|
<td>@($"{p.Time:HH:mm}")</td>
|
|
<td>@p.Variety</td>
|
|
<td>@p.Attribute@(p.Attribute != null && p.Cultivation != null ? " / " : "")@p.Cultivation</td>
|
|
<td class="center">@($"{p.Oe:N0}")</td>
|
|
<td class="center">@($"{p.Kmw:N1}")</td>
|
|
<td class="number">@($"{p.Weight:N0}")</td>
|
|
</tr>
|
|
lastMember = p.MgNr;
|
|
}
|
|
@{
|
|
var branches = Model.Deliveries.Select(d => d.DeliveryBranch).Distinct().Order().ToArray();
|
|
if (branches.Length > 1) {
|
|
foreach (var b in branches) {
|
|
<tr class="@(branches[0] == b ? "sum" : "") bold">
|
|
@{
|
|
var branchDeliveries = Model.Deliveries.Where(d => d.DeliveryBranch == b).ToList();
|
|
var branchKmw = Elwig.Helpers.Utils.AggregateDeliveryPartsKmw(branchDeliveries);
|
|
var branchOe = Elwig.Helpers.Utils.KmwToOe(branchKmw);
|
|
}
|
|
<td colspan="2">@b:</td>
|
|
<td colspan="4">(Teil-)Lieferungen: @($"{branchDeliveries.DistinctBy(p => p.LsNr).Count():N0}") (@($"{branchDeliveries.Count():N0}"))</td>
|
|
<td class="center">@($"{branchOe:N0}")</td>
|
|
<td class="center">@($"{branchKmw:N1}")</td>
|
|
<td class="number">@($"{branchDeliveries.Sum(p => p.Weight):N0}")</td>
|
|
</tr>
|
|
}
|
|
}
|
|
}
|
|
<tr class="sum bold">
|
|
@{
|
|
var kmw = Elwig.Helpers.Utils.AggregateDeliveryPartsKmw(Model.Deliveries);
|
|
var oe = Elwig.Helpers.Utils.KmwToOe(kmw);
|
|
}
|
|
<td colspan="2">Gesamt:</td>
|
|
<td colspan="4">(Teil-)Lieferungen: @($"{Model.Deliveries.DistinctBy(p => p.LsNr).Count():N0}") (@($"{Model.Deliveries.Count():N0}"))</td>
|
|
<td class="center">@($"{oe:N0}")</td>
|
|
<td class="center">@($"{kmw:N1}")</td>
|
|
<td class="number">@($"{Model.Deliveries.Sum(p => p.Weight):N0}")</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</main>
|