39 lines
1.6 KiB
JavaScript
39 lines
1.6 KiB
JavaScript
export function filterOccupantsByLotOccupantType(lotOccupancy, lotOccupantType) {
|
|
const lotOccupantTypeLowerCase = lotOccupantType.toLowerCase();
|
|
const occupants = (lotOccupancy.lotOccupancyOccupants ?? []).filter((possibleOccupant) => {
|
|
return (possibleOccupant.lotOccupantType.toLowerCase() ===
|
|
lotOccupantTypeLowerCase);
|
|
});
|
|
return occupants;
|
|
}
|
|
export function getFieldValueByOccupancyTypeField(lotOccupancy, occupancyTypeField) {
|
|
const occupancyTypeFieldLowerCase = occupancyTypeField.toLowerCase();
|
|
const field = (lotOccupancy.lotOccupancyFields ?? []).find((possibleField) => {
|
|
return (possibleField.occupancyTypeField.toLowerCase() ===
|
|
occupancyTypeFieldLowerCase);
|
|
});
|
|
if (field === undefined) {
|
|
return undefined;
|
|
}
|
|
return field.lotOccupancyFieldValue;
|
|
}
|
|
export function getFeesByFeeCategory(lotOccupancy, feeCategory, feeCategoryContains = false) {
|
|
const feeCategoryLowerCase = feeCategory.toLowerCase();
|
|
const fees = (lotOccupancy.lotOccupancyFees ?? []).filter((possibleFee) => {
|
|
return feeCategoryContains
|
|
? possibleFee.feeCategory
|
|
.toLowerCase()
|
|
.includes(feeCategoryLowerCase)
|
|
: possibleFee.feeCategory.toLowerCase() ===
|
|
feeCategoryLowerCase;
|
|
});
|
|
return fees;
|
|
}
|
|
export function getTransactionTotal(lotOccupancy) {
|
|
let transactionTotal = 0;
|
|
for (const transaction of lotOccupancy.lotOccupancyTransactions ?? []) {
|
|
transactionTotal += transaction.transactionAmount;
|
|
}
|
|
return transactionTotal;
|
|
}
|