Initial commit

This commit is contained in:
2026-04-23 21:38:24 -04:00
commit 63e12a9636
1762 changed files with 1672620 additions and 0 deletions
@@ -0,0 +1,90 @@
@model PowderCoating.Web.ViewModels.Reports.PowderConsumptionViewModel
@{ ViewData["Title"] = "Powder Consumption vs Purchase"; }
<partial name="_ReportHeader" model="Model" />
<div class="row g-3 mb-3">
<div class="col-sm-4">
<div class="card text-bg-primary">
<div class="card-body py-2">
<div class="small">Total Purchased</div>
<div class="fs-5 fw-bold">@Model.TotalPurchasedLbs.ToString("N1") lbs</div>
</div>
</div>
</div>
<div class="col-sm-4">
<div class="card text-bg-success">
<div class="card-body py-2">
<div class="small">Total Consumed</div>
<div class="fs-5 fw-bold">@Model.TotalConsumedLbs.ToString("N1") lbs</div>
</div>
</div>
</div>
<div class="col-sm-4">
<div class="card @(Model.TotalPurchasedLbs - Model.TotalConsumedLbs >= 0 ? "text-bg-info" : "text-bg-warning")">
<div class="card-body py-2">
<div class="small">Net Variance</div>
<div class="fs-5 fw-bold">@((Model.TotalPurchasedLbs - Model.TotalConsumedLbs).ToString("N1")) lbs</div>
</div>
</div>
</div>
</div>
<div class="card">
<div class="card-header fw-semibold">Purchased vs Consumed per SKU</div>
<div class="card-body p-0">
<div class="table-responsive">
<table class="table table-sm table-hover mb-0">
<thead class="table-light">
<tr>
<th>Item / SKU</th>
<th>Color</th>
<th>Manufacturer</th>
<th class="text-end">Purchased (lbs)</th>
<th class="text-end">Consumed (lbs)</th>
<th class="text-end">Variance (lbs)</th>
<th class="text-end">Purchases</th>
<th class="text-end">Jobs Used</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.Items)
{
var varianceClass = item.VarianceLbs < 0 ? "text-danger" : item.VarianceLbs == 0 ? "" : "text-success";
<tr>
<td>
<div class="fw-semibold">@item.ItemName</div>
@if (!string.IsNullOrEmpty(item.SKU))
{
<div class="small text-muted">@item.SKU</div>
}
</td>
<td>
@(item.ColorName ?? "—")
@if (!string.IsNullOrEmpty(item.ColorCode))
{
<span class="badge bg-secondary-subtle text-secondary ms-1">@item.ColorCode</span>
}
</td>
<td class="text-muted">@(item.Manufacturer ?? "—")</td>
<td class="text-end">@item.TotalPurchasedLbs.ToString("N1")</td>
<td class="text-end">@item.TotalConsumedLbs.ToString("N1")</td>
<td class="text-end fw-semibold @varianceClass">@item.VarianceLbs.ToString("N1")</td>
<td class="text-end">@item.PurchaseCount</td>
<td class="text-end">@item.UsageJobCount</td>
</tr>
}
</tbody>
<tfoot class="table-light fw-bold">
<tr>
<td colspan="3">Totals</td>
<td class="text-end">@Model.TotalPurchasedLbs.ToString("N1")</td>
<td class="text-end">@Model.TotalConsumedLbs.ToString("N1")</td>
<td class="text-end">@((Model.TotalPurchasedLbs - Model.TotalConsumedLbs).ToString("N1"))</td>
<td colspan="2"></td>
</tr>
</tfoot>
</table>
</div>
</div>
</div>