Files
monorepo/LCU.API.Internal.OnlineLoanApp/CRIF.ACTion/Loan/Assets/MfgHousingAndLandAppBuilder.cs
T
2026-03-11 11:18:25 -05:00

37 lines
1.4 KiB
C#

using CRIF.ACTion.Common;
using CRIF.ACTion.Configuration;
namespace CRIF.ACTion.Loan.Assets
{
public class MfgHousingAndLandAppBuilder : ILoanApplicationRequestBuilder
{
private readonly CrifSettings _settings;
public MfgHousingAndLandAppBuilder(CrifSettings settings)
{
_settings = settings;
}
public void SetDetails(LoanApplicationRequestBuilder createApp)
{
createApp.AppDetails = new AppDetailMfgHomeAndLandSection(createApp.CrifRequestSectionNamespace, _settings);
var includesLand = true;
if (createApp.LoanApplication.ManufacturedHome?.Lot?.IsRented ?? false)
{
includesLand = false;
}
((AppDetailMfgHomeAndLandSection)createApp.AppDetails).AddPropertyDetails(createApp.LoanApplication.ManufacturedHome, includesLand);
((AppDetailMfgHomeAndLandSection)createApp.AppDetails).AddHmdaDisclosed(createApp.LoanApplication.PrimaryBorrower.HmdaValues.HmdaNoticeDisclosed);
createApp.Properties.AddProperty(new MfgHousingProperty(createApp.LoanApplication.ManufacturedHome, includesLand));
createApp.Addresses.AddAddress(createApp.LoanApplication.ManufacturedHome.Lot, ContactMechanisms.CrifContactMechanism.RealEstateAddress);
createApp.AppDetails.SetDetails(createApp.LoanApplication,
createApp._sourceChannel);
}
}
}