Store powder specific gravity and fix coverage math

This commit is contained in:
2026-05-06 08:46:41 -04:00
parent 11a1b91be1
commit f383339465
18 changed files with 9690 additions and 16 deletions
@@ -28,7 +28,8 @@ namespace PowderCoating.Infrastructure.Services;
public class InventoryAiLookupService : IInventoryAiLookupService
{
private const decimal DefaultTransferEfficiency = 65m;
private const decimal TheoreticalCoverageAtOneMilFactor = 192.3m;
private const decimal TheoreticalCoverageConstant = 192.3m;
private const decimal DefaultCoverageThicknessMils = 1.5m;
private readonly IConfiguration _config;
private readonly IHttpClientFactory _httpClientFactory;
@@ -1247,7 +1248,7 @@ Rules:
if (!result.CoverageSqFtPerLb.HasValue && result.SpecificGravity is > 0)
{
var calculatedCoverage = TheoreticalCoverageAtOneMilFactor / result.SpecificGravity.Value;
var calculatedCoverage = TheoreticalCoverageConstant / (result.SpecificGravity.Value * DefaultCoverageThicknessMils);
result.CoverageSqFtPerLb = Math.Round(calculatedCoverage, 2, MidpointRounding.AwayFromZero);
}
}