当前位置: 首页>>代码示例>>C#>>正文


C# Loan.CalculateStartDates方法代码示例

本文整理汇总了C#中OpenCBS.CoreDomain.Contracts.Loans.Loan.CalculateStartDates方法的典型用法代码示例。如果您正苦于以下问题:C# Loan.CalculateStartDates方法的具体用法?C# Loan.CalculateStartDates怎么用?C# Loan.CalculateStartDates使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在OpenCBS.CoreDomain.Contracts.Loans.Loan的用法示例。


在下文中一共展示了Loan.CalculateStartDates方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DisplayInstallments

        private void DisplayInstallments(ref Loan pCredit)
        {
            listViewLoanInstallments.Items.Clear();

            if (pCredit.InstallmentList.Count == 0)
            {
                pCredit.Product = _product;
            }

            if (!pCredit.Disbursed)
            {
                if (!pCredit.ScheduleChangedManually)
                {
                    pCredit.InstallmentList = pCredit.Product.LoanType == OLoanTypes.DecliningFixedPrincipalWithRealInterest || pCredit.Product.IsExotic
                        ? pCredit.CalculateInstallments(true) : ServiceProvider.GetContractServices().SimulateScheduleCreation(pCredit);
                          pCredit.CalculateStartDates();
                }
            }

            OCurrency interestTotal = 0;
            OCurrency principalTotal = 0;

            foreach (Installment installment in pCredit.InstallmentList)
            {
                ListViewItem listViewItem = new ListViewItem(installment.Number.ToString());

                if (!_useGregorienCalendar)
                {
                    DateTime dt = new DateTime(installment.ExpectedDate.Year, installment.ExpectedDate.Month,
                                     installment.ExpectedDate.Day,
                                     currentCalendar);
                    listViewItem.SubItems.Add(string.Format("{0}/{1}/{2}", targetCalendar.GetDayOfMonth(dt), targetCalendar.GetMonth(dt), targetCalendar.GetYear(dt)));
                }
                else
                    listViewItem.SubItems.Add(installment.ExpectedDate.ToShortDateString());

                listViewItem.SubItems.Add(installment.InterestsRepayment.GetFormatedValue(pCredit.UseCents));
                listViewItem.SubItems.Add(installment.CapitalRepayment.GetFormatedValue(pCredit.UseCents));
                listViewItem.SubItems.Add(installment.Amount.GetFormatedValue(pCredit.UseCents));
                listViewItem.SubItems.Add(ServicesProvider.GetInstance().GetGeneralSettings().IsOlbBeforeRepayment
                                              ? installment.OLB.GetFormatedValue(pCredit.UseCents)
                                              : installment.OLBAfterRepayment.GetFormatedValue(pCredit.UseCents));
                listViewLoanInstallments.Items.Add(listViewItem);
                interestTotal += installment.InterestsRepayment;
                principalTotal += installment.CapitalRepayment;
            }
            // Add totals to the list view
            ListViewItem total = new ListViewItem
                                     {
                                         Font = new Font(listViewLoanInstallments.Font, FontStyle.Bold)
                                     };
            total.SubItems.Add("");
            total.SubItems.Add(interestTotal.GetFormatedValue(pCredit.UseCents));
            total.SubItems.Add(principalTotal.GetFormatedValue(pCredit.UseCents));
            total.SubItems.Add((interestTotal + principalTotal).GetFormatedValue(pCredit.UseCents));
            listViewLoanInstallments.Items.Add(total);
        }
开发者ID:BillTheBest,项目名称:opencbs,代码行数:57,代码来源:ClientForm.cs

示例2: 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;
        }
开发者ID:TalasZh,项目名称:opencbs,代码行数:43,代码来源:Reschedule.cs


注:本文中的OpenCBS.CoreDomain.Contracts.Loans.Loan.CalculateStartDates方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。