37 lines
1.4 KiB
C#
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);
|
|
}
|
|
}
|
|
}
|