diff --git a/src/PowderCoating.Web/Controllers/CatalogItemsController.cs b/src/PowderCoating.Web/Controllers/CatalogItemsController.cs index b9e92b3..e4a6aa4 100644 --- a/src/PowderCoating.Web/Controllers/CatalogItemsController.cs +++ b/src/PowderCoating.Web/Controllers/CatalogItemsController.cs @@ -938,6 +938,9 @@ namespace PowderCoating.Web.Controllers r => r.CompanyId == currentUser.CompanyId); var report = existing.OrderByDescending(r => r.RunAt).FirstOrDefault(); + var activeItems = await _unitOfWork.CatalogItems.FindAsync(ci => ci.IsActive); + ViewBag.ActiveItemCount = activeItems.Count(); + CatalogPriceCheckReportDto? dto = null; if (report != null) { diff --git a/src/PowderCoating.Web/Views/CatalogItems/AiPriceCheck.cshtml b/src/PowderCoating.Web/Views/CatalogItems/AiPriceCheck.cshtml index 3d12332..6857157 100644 --- a/src/PowderCoating.Web/Views/CatalogItems/AiPriceCheck.cshtml +++ b/src/PowderCoating.Web/Views/CatalogItems/AiPriceCheck.cshtml @@ -35,16 +35,69 @@ .summary-stat .num { font-size: 2rem; font-weight: 700; line-height: 1; } .summary-stat .lbl { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.05em; opacity: 0.7; } .run-btn-wrap { min-height: 3rem; } + + /* Progress overlay */ + #price-check-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(15, 23, 42, 0.55); + z-index: 1050; + align-items: center; + justify-content: center; + } + #price-check-overlay.active { display: flex; } + .progress-card { + background: #fff; + border-radius: 1rem; + padding: 2.5rem 2rem; + width: 100%; + max-width: 440px; + text-align: center; + box-shadow: 0 20px 60px rgba(0,0,0,0.25); + } + .progress-card .icon { font-size: 3rem; color: #4f46e5; margin-bottom: 1rem; } + .progress-card h5 { font-weight: 700; margin-bottom: 0.25rem; } + .progress-card .status-msg { font-size: 0.9rem; color: #64748b; min-height: 1.4em; margin-bottom: 1.25rem; } + .progress-bar-track { + height: 8px; + background: #e2e8f0; + border-radius: 99px; + overflow: hidden; + margin-bottom: 0.75rem; + } + .progress-bar-fill { + height: 100%; + background: linear-gradient(90deg, #4f46e5, #7c3aed); + border-radius: 99px; + width: 0%; + transition: width 0.6s ease; + } + .progress-card .pct-label { font-size: 0.8rem; color: #94a3b8; } } + +
Preparing items…
+ +