本文整理汇总了TypeScript中common/allowances/allowanceRepository.AllowanceRepository类的典型用法代码示例。如果您正苦于以下问题:TypeScript AllowanceRepository类的具体用法?TypeScript AllowanceRepository怎么用?TypeScript AllowanceRepository使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了AllowanceRepository类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getDisabledDependantAmount
private getDisabledDependantAmount (dependant: Dependant): number {
if (dependant) {
if (dependant.anyDisabledChildren) {
return this.allowances.getDisabilityAllowance(DisabilityAllowanceType.DEPENDANT).monthly || 0
}
if (dependant.otherDependants) {
if (dependant.otherDependants.anyDisabled) {
return this.allowances.getDisabilityAllowance(DisabilityAllowanceType.DEPENDANT).monthly || 0
}
}
}
}
示例2: getMonthlyPensionerAllowance
getMonthlyPensionerAllowance (income: Income[], partner: Partner): number {
if (!income) {
return 0
}
const isDefendantPensioner = income.filter(incomeType => incomeType.type === IncomeType.PENSION).pop() !== undefined
if (isDefendantPensioner) {
if (partner && partner.pensioner) {
return this.getMonthlyAmount(this.allowances.getPensionAllowance(PensionAllowanceType.DEFENDANT_AND_PARTNER))
} else {
return this.getMonthlyAmount(this.allowances.getPensionAllowance(PensionAllowanceType.DEFENDANT_ONLY))
}
}
return 0
}
示例3: getDisabilityAllowance
getDisabilityAllowance (defendantDisability: DisabilityStatus, partner: Partner): number {
if (defendantDisability === DisabilityStatus.NO) {
return 0
}
let disabledStatus: DisabilityAllowanceType = defendantDisability === DisabilityStatus.YES ?
DisabilityAllowanceType.DEFENDANT_ONLY : DisabilityAllowanceType.DEFENDANT_ONLY_SEVERE
if (partner && partner.disability) {
switch (partner.disability) {
case DisabilityStatus.YES:
disabledStatus = defendantDisability === DisabilityStatus.YES ?
DisabilityAllowanceType.DEFENDANT_AND_PARTNER : DisabilityAllowanceType.DEFENDANT_ONLY_SEVERE
break
case DisabilityStatus.SEVERE:
disabledStatus = defendantDisability === DisabilityStatus.YES ?
DisabilityAllowanceType.DEFENDANT_ONLY_SEVERE : DisabilityAllowanceType.DEFENDANT_AND_PARTNER_SEVERE
break
default:
break
}
}
return this.getMonthlyAmount(this.allowances.getDisabilityAllowance(disabledStatus))
}
示例4: getMonthlyDependantsAllowance
getMonthlyDependantsAllowance (dependants: Dependant): number {
if (!dependants) {
return 0
}
let numberOfDependants = 0
if (dependants.children) {
const reducer = (total: number, children: Child) => {
const numberOfDependants: number =
children.ageGroupType !== AgeGroupType.BETWEEN_16_AND_19 ?
children.numberOfChildren : children.numberOfChildrenLivingWithYou
if (!numberOfDependants) {
return total
}
return total + numberOfDependants
}
numberOfDependants = dependants.children.reduce(reducer, 0)
}
if (dependants.otherDependants) {
numberOfDependants += dependants.otherDependants.numberOfPeople
}
const monthlyAmount: number = this.getMonthlyAmount(this.allowances.getDependantAllowance(DependantAllowanceType.PER_DEPENDANT))
return (numberOfDependants * monthlyAmount)
}
示例5: getMonthlyLivingAllowance
getMonthlyLivingAllowance (defendantAge: number, partner: Partner): number {
if (defendantAge < 18 || defendantAge === undefined) {
return 0
}
let cohabitationStatus: LivingAllowanceType
if (!partner) {
cohabitationStatus = defendantAge < 25 ? LivingAllowanceType.SINGLE_18_TO_24 : LivingAllowanceType.SINGLE_OVER_25
} else {
if (partner.over18) {
cohabitationStatus = LivingAllowanceType.DEFENDANT_AND_PARTNER_OVER_18
} else {
cohabitationStatus = defendantAge < 25 ? LivingAllowanceType.DEFENDANT_UNDER_25_PARTNER_UNDER_18 :
LivingAllowanceType.DEFENDANT_OVER_25_PARTNER_UNDER_18
}
}
return this.getMonthlyAmount(this.allowances.getLivingAllowance(cohabitationStatus))
}
示例6: getCarerAmount
private getCarerAmount (isCarer: boolean): number {
return isCarer ? this.allowances.getDisabilityAllowance(DisabilityAllowanceType.CARER).monthly : 0
}