public static void Add(LoanDTO loan) { SetScore(loan); db Sgmach = new db(); //if its Approved Loan loanDAL = LoanConvert.DTOtoDAL(loan); loanDAL = Sgmach.Loans.Add(loanDAL).Entity; Sgmach.SaveChanges(); if (loan.management_Status == "Approved") { int FutureBalance = FundBL.GetFutureBalance("1", loan.date_start); if (FutureBalance < loan.amount) { loanDAL.remark += " יתרת הגמח ביום התחלת הלוואה קטנה מסכום ההלוואה"; loanDAL.NameManagement_status = "Invalid"; } else { SetRepayment(loanDAL); if (loan.NameStatus == "active") { FundBL.Subtract_Balance(loan.amount); } Sgmach.SaveChanges(); } loan.paid = false; // Loan loanDAL = LoanConvert.DTOtoDAL(loan); // loanDAL = Sgmach.Loans.Add(loanDAL).Entity; Sgmach.SaveChanges(); } }
public static void Update(LoanDTO loan) { db Sgmach = new db(); Loan loanDAL = Sgmach.Loans.FirstOrDefault(l => l.LoanId == loan.id_loan); if (loanDAL == null) { throw new Exception("loan not found"); } //if it became Approved if (loanDAL.NameManagement_status != "Approved" && loan.loan_status == "Approved") { int FutureBalance = FundBL.GetFutureBalance("1", loan.date_start); if (FutureBalance - 2000 < loan.amount) { throw new Exception("you can loanding :balance<loan.amount"); } if (FundBL.GetById("0").balance < loan.amount) { throw new Exception("you can loanding :balance<loan.amount"); } else { SetRepayment(loanDAL); } } // loanDAL.loan_status = loan.loan_status; loanDAL.Months = loan.month; loanDAL.RepaymentStart = loan.date_start; // loanDAL.paid = loan.paid; loanDAL.remark = loan.remark; Sgmach.SaveChanges(); }
public static void Update(LoanDTO loan) { db Sgmach = new db(); Loan loanDAL = Sgmach.Loans.FirstOrDefault(l => l.LoanId == loan.id_loan); loanDAL.Months = loan.month; loanDAL.remark = loan.remark; loanDAL.NameStatus = loan.NameStatus; loanDAL.RepaymentStart = loan.date_start; loanDAL.NameManagement_status = loan.management_Status; if (loanDAL == null) { throw new Exception("loan not found"); } //if it became Approved if (loanDAL.NameManagement_status != "Approved" && loan.management_Status == "Approved" && loanDAL.NameStatus != "active") { if (loan.NameStatus == "future") { int FutureBalance = FundBL.GetFutureBalance("1", loan.date_start); if (FutureBalance - 2000 < loan.amount) { loanDAL.remark = "סכום ההלוואה גדול מיתרת הגמח"; loanDAL.NameManagement_status = "Invalid"; } else { SetRepayment(loanDAL); loanDAL.NameManagement_status = "Approved"; } } } else if (loanDAL.NameManagement_status != "Approved" && loan.management_Status == "Approved" && loan.NameStatus == "active") { loanDAL.NameManagement_status = "Approved"; loanDAL.NameStatus = "active"; loanDAL.RepaymentStart = DateTime.Today; SetRepayment(loanDAL); } // if the loan become active (the friend get the money) the fund Balance have to Subtract if (loan.NameStatus == "active" && loanDAL.NameStatus != "active") { loanDAL.NameStatus = "active"; loan.management_Status = "Proper"; FundBL.Subtract_Balance(loan.amount); } Sgmach.SaveChanges(); }