Add facility overhead (rent + utilities) to operating costs and pricing engine
Adds MonthlyRent, MonthlyUtilities, and MonthlyBillableHours to CompanyOperatingCosts so fixed shop occupancy costs are recovered on every quote. The pricing engine converts these into a per-hour rate and applies it as a transparent "Facility Overhead" line between oven batch cost and shop supplies. UI added in Company Settings Operating Costs tab and Setup Wizard Step 3; migration AddFacilityOverheadFields applied. Help docs and AI knowledge base updated to cover the new fields and the revised quote pricing calculation order. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -37,7 +37,11 @@ public class CompanyProfile : Profile
|
||||
.ForMember(dest => dest.DerivedBlastRateSqFtPerHour,
|
||||
opt => opt.MapFrom(src => ShopCapabilityCalculator.GetBlastRateSqFtPerHour(src)))
|
||||
.ForMember(dest => dest.DerivedCoatingRateSqFtPerHour,
|
||||
opt => opt.MapFrom(src => ShopCapabilityCalculator.GetCoatingRateSqFtPerHour(src)));
|
||||
opt => opt.MapFrom(src => ShopCapabilityCalculator.GetCoatingRateSqFtPerHour(src)))
|
||||
.ForMember(dest => dest.FacilityOverheadRatePerHour,
|
||||
opt => opt.MapFrom(src => src.MonthlyBillableHours > 0
|
||||
? (src.MonthlyRent + src.MonthlyUtilities) / src.MonthlyBillableHours
|
||||
: 0m));
|
||||
CreateMap<UpdateOperatingCostsDto, CompanyOperatingCosts>();
|
||||
CreateMap<UpdateBlastProfileDto, CompanyOperatingCosts>();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user