コード例 #1
0
        public static OtherLiabilityListViewModel GetOtherLiabilityByUser(string username)
        {
            Entities entities = new Entities();
            OtherLiabilityListViewModel result = new OtherLiabilityListViewModel();
            DateTime current     = DateTime.Now;
            var      liabilities = entities.Liabilities.Where(x => x.Username.Equals(username) &&
                                                              x.LiabilityType == (int)Constants.Constants.LIABILITY_TYPE.OTHERS &&
                                                              !x.DisabledDate.HasValue).OrderBy(x => x.Name);

            foreach (var liability in liabilities)
            {
                OtherLiabilityViewModel viewModel = CreateViewModel(liability);
                result.Liabilities.Add(viewModel);
            }

            var lbts = result.Liabilities.Where(x => x.StartDate <= current && x.EndDate >= current);

            result.TotalLiabilityValue  = lbts.Sum(x => x.Value.Value);
            result.TotalInterestPayment = lbts.Sum(x => x.MonthlyInterestPayment);
            result.TotalOriginalPayment = lbts.Sum(x => x.MonthlyOriginalPayment);
            result.TotalPayment         = lbts.Sum(x => x.TotalMonthlyPayment);
            result.TotalRemainedValue   = lbts.Sum(x => x.RemainedValue);
            result.TotalInterestRate    = result.TotalLiabilityValue > 0 ? lbts.Sum(x => x.OriginalInterestPayment) / result.TotalLiabilityValue * 12 : 0;
            result.IsInitialized        = UserQueries.IsCompleteInitialized(username);

            return(result);
        }
コード例 #2
0
        public ActionResult _OtherLiabilityTable()
        {
            OtherLiabilityListViewModel model = OtherLiabilityQueries.GetOtherLiabilityByUser(UserQueries.GetCurrentUsername());

            return(PartialView(model));
        }