本文整理汇总了C#中OpenCBS.CoreDomain.Contracts.Loans.Loan.GetLastFullyRepaidInstallment方法的典型用法代码示例。如果您正苦于以下问题:C# Loan.GetLastFullyRepaidInstallment方法的具体用法?C# Loan.GetLastFullyRepaidInstallment怎么用?C# Loan.GetLastFullyRepaidInstallment使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OpenCBS.CoreDomain.Contracts.Loans.Loan
的用法示例。
在下文中一共展示了Loan.GetLastFullyRepaidInstallment方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Reschedule
public RescheduleLoanEvent Reschedule(ReschedulingOptions ro, Loan contract, NonWorkingDateSingleton nwdS, ApplicationSettings applicationSettings)
{
_contract = contract;
_nwdS = nwdS;
_generalSettings = applicationSettings;
switch (contract.Product.LoanType)
{
case OLoanTypes.Flat:
_Reschedule_Flat(ro);
break;
case OLoanTypes.DecliningFixedPrincipal:
_Reschedule_FixedPrincipal(ro);
break;
case OLoanTypes.DecliningFixedInstallments:
_Reschedule_DecliningFixedInstallments(ro);
break;
}
_Reschedule_AdjustOverpaid();
RescheduleLoanEvent rSe = new RescheduleLoanEvent
{
Date = ro.ReschedulingDate,
Amount = contract.CalculateActualOlb(),
Interest = contract.GetTotalInterestDue(),
ClientType = contract.ClientType,
BadLoan = contract.BadLoan,
NbOfMaturity = ro.NewInstallments,
DateOffset = ro.RepaymentDateOffset,
GracePeriod = ro.GracePeriod,
ChargeInterestDuringShift = ro.ChargeInterestDuringShift,
ChargeInterestDuringGracePeriod = ro.ChargeInterestDuringGracePeriod,
InstallmentNumber =
contract.GetLastFullyRepaidInstallment() == null
? 1
: contract.GetLastFullyRepaidInstallment().Number + 1
};
_contract.CalculateStartDates();
return rSe;
}
示例2: CheckTranche
private static void CheckTranche(DateTime date, Loan loan, decimal amount)
{
if (loan.GetLastFullyRepaidInstallment() != null)
{
if (date.Date < loan.GetLastFullyRepaidInstallment().PaidDate.Value.Date)
{
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.TrancheDate);
}
}
else
{
if (loan.StartDate > date.Date)
{
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.TrancheDate);
}
}
if (loan.AmountUnderLoc.HasValue)
{
if (loan.Amount + amount > loan.AmountUnderLoc)
{
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.TrancheAmount);
}
}
else
{
if (amount > loan.Product.AmountUnderLoc)
{
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.TrancheAmount);
}
}
if (amount == 0)
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.TrancheAmount);
}