public ActionResult EndDay() { List <InterestDeposit> listInterestDepostis = context.InterestDeposits.ToList(); ClientsDeposit Fond = context.ClientsDeposits.Where(c => c.ClientID == 0).FirstOrDefault(); Double fondAmmount = Fond.Amount; InterestDeposit temp; foreach (InterestDeposit deposit in listInterestDepostis) { if (deposit.Active) { temp = deposit; temp.Amount += ((temp.InitialAmount * temp.Percent) / 100) / 365; fondAmmount -= ((temp.InitialAmount * temp.Percent) / 100) / 365; context.Entry(deposit).CurrentValues.SetValues(temp); } } ClientsDeposit tempFond = Fond; tempFond.Amount = fondAmmount; context.Entry(Fond).CurrentValues.SetValues(tempFond); context.SaveChanges(); return(Json(new AjaxResponse(new AjaxResponse()))); }
public ActionResult CreateNewCredit(int id, int Credit, int Ammount) { Credit credit = context.Credit.Where(c => c.CreditID == Credit).FirstOrDefault(); ClientsCredit lastDeposit = context.ClientsCredit.ToList().LastOrDefault(); String num = lastDeposit.ClientCreditNumber.Substring(lastDeposit.ClientCreditNumber.Length - 9); int depNum = int.Parse(num); depNum++; num = depNum.ToString(); while (num.Length != 9) { num = "0" + num; } ClientsCredit newCredit = new ClientsCredit(); newCredit.ClientID = id; newCredit.Active = true; newCredit.CreditID = Credit; newCredit.DateStart = DateTime.Today; newCredit.DateEnd = DateTime.Today.AddMonths(credit.Period); newCredit.Period = credit.Period; newCredit.Amount = Ammount; newCredit.Diff = credit.Diff; newCredit.ClientCreditNumber = credit.BalanceId.ToString() + num;; newCredit.Period = credit.Period; context.ClientsCredit.Add(newCredit); Currency currency = context.Currency.Where(c => c.CurrencyID == credit.CurrencyID).FirstOrDefault(); ClientsDeposit Fond = context.ClientsDeposits.Where(d => d.ClientID == 0).FirstOrDefault(); ClientsDeposit fond = Fond; fond.Amount = Fond.Amount - newCredit.Amount * currency.Value; context.Entry(Fond).CurrentValues.SetValues(fond); context.SaveChanges(); InterestCredit interestCredit = new InterestCredit { ClientsCreditID = newCredit.ClientsCreditID, InterestCreditNumber = "6660" + num, Active = true, Amount = newCredit.Amount * (credit.Percent * credit.Period / 12) / 100 + newCredit.Amount, PayMonths = 0, Period = credit.Period }; if (newCredit.Diff) { interestCredit.MonthlyPayment = (interestCredit.Amount - newCredit.Amount) / (interestCredit.Period - 1); interestCredit.LastMonthlyPayment = newCredit.Amount; } else { interestCredit.MonthlyPayment = interestCredit.Amount / interestCredit.Period; interestCredit.LastMonthlyPayment = interestCredit.MonthlyPayment; } context.InterestCredit.Add(interestCredit); context.SaveChanges(); return(Json(new AjaxResponse(new AjaxResponse()))); }
public ActionResult Paid(string Number) { ClientsCredit clientsCredit = context.ClientsCredit.Where(c => c.ClientCreditNumber.Equals(Number)).FirstOrDefault(); InterestCredit interestCredit = context.InterestCredit.Where(c => c.ClientsCreditID == clientsCredit.ClientsCreditID).FirstOrDefault(); InterestCredit interest = interestCredit; interest.PayMonths++; ClientsDeposit Fond = context.ClientsDeposits.Where(d => d.ClientID == 0).FirstOrDefault(); ClientsDeposit fond = Fond; fond.Amount = Fond.Amount + interestCredit.MonthlyPayment; if (interest.PayMonths == interest.Period) { ClientsCredit credit = clientsCredit; credit.Active = false; context.Entry(credit).CurrentValues.SetValues(credit); } context.Entry(Fond).CurrentValues.SetValues(fond); context.Entry(interestCredit).CurrentValues.SetValues(interest); context.SaveChanges(); return(RedirectToAction("Credit", new { creditNumber = Number })); }
public ActionResult CreateNew(NewDeposit newDeposit) { Deposit deposit = context.Deposits.Where(d => d.DepositID == newDeposit.Deposit).FirstOrDefault(); ClientsDeposit lastDeposit = context.ClientsDeposits.ToList().LastOrDefault(); String num = lastDeposit.ClientDepositNumber.Substring(lastDeposit.ClientDepositNumber.Length - 9); int depNum = int.Parse(num); depNum++; num = depNum.ToString(); while (num.Length != 9) { num = "0" + num; } ClientsDeposit clientsDeposit = new ClientsDeposit(); clientsDeposit.ClientID = newDeposit.id; clientsDeposit.DepositID = newDeposit.Deposit; clientsDeposit.Amount = newDeposit.Ammount; clientsDeposit.DateStart = DateTime.Today; clientsDeposit.DateEnd = DateTime.Today.AddMonths(deposit.Period); clientsDeposit.Period = deposit.Period; clientsDeposit.ClientDepositNumber = deposit.BalanceId.ToString() + num; clientsDeposit.Revocable = deposit.Revocable; clientsDeposit.Active = true; context.ClientsDeposits.Add(clientsDeposit); context.SaveChanges(); Currency currency = context.Currency.Where(c => c.CurrencyID == deposit.CurrencyID).FirstOrDefault(); ClientsDeposit Fond = context.ClientsDeposits.Where(d => d.ClientID == 0).FirstOrDefault(); ClientsDeposit fond = Fond; fond.Amount = Fond.Amount + clientsDeposit.Amount * currency.Value; context.Entry(Fond).CurrentValues.SetValues(fond); InterestDeposit interestDeposit = new InterestDeposit(); interestDeposit.ClientsDepositID = clientsDeposit.ClientsDepositID; interestDeposit.InterestDepositNumber = clientsDeposit.ClientDepositNumber = "7770" + num; interestDeposit.InitialAmount = clientsDeposit.Amount; interestDeposit.Percent = deposit.Percent; interestDeposit.Amount = 0; interestDeposit.Active = true; context.InterestDeposits.Add(interestDeposit); context.SaveChanges(); return(Json(new AjaxResponse(new AjaxResponse()))); }
public ActionResult Revocable(int id) { InterestDeposit interestDeposit = context.InterestDeposits.Where(i => i.ClientsDepositID == id).FirstOrDefault(); InterestDeposit tempInterest = interestDeposit; tempInterest.Active = false; context.Entry(interestDeposit).CurrentValues.SetValues(tempInterest); ClientsDeposit clientDeposit = context.ClientsDeposits.Where(c => c.ClientsDepositID == id).FirstOrDefault(); ClientsDeposit tempDeposit = clientDeposit; tempDeposit.Active = false; context.Entry(clientDeposit).CurrentValues.SetValues(tempDeposit); ClientsDeposit Fond = context.ClientsDeposits.Where(c => c.ClientID == 0).FirstOrDefault(); ClientsDeposit tempFond = Fond; tempFond.Amount -= clientDeposit.Amount; context.Entry(Fond).CurrentValues.SetValues(tempFond); context.SaveChanges(); return(RedirectToAction("/DepositList/" + clientDeposit.ClientID.ToString())); }