static private void SetRepayment(Loan loan) { db Sgmach = new db(); // DateTime date1 = loan.BeginningRepayment; // DateTime date2 = date1.AddMonths(loan.month); int c = loan.Months / loan.Num_payments; int amount = loan.Amount / loan.Months; for (int i = 0; i <= loan.Num_payments; i = ++i) { Repayments repayment = new Repayments() { }; repayment.Amount = amount; if (i == loan.Num_payments) { repayment.Amount = loan.Amount - (amount * (loan.Num_payments - 1)); } repayment.Date = loan.RepaymentStart.AddMonths(i + c); repayment.LoanId = loan.LoanId; Sgmach.Repayments.Add(repayment); Sgmach.SaveChanges(); } }
public static List <UserDTO> GetUsersList() { var sumPayThisMonth = 0; List <UserDTO> userList = new List <UserDTO> (); List <AlertsUsers> alertsUsers = new List <AlertsUsers> (); using (SuperGmachEntities db = new SuperGmachEntities()) { foreach (User u in db.Users) { UserDTO user = Userconvert.DALtoDTO(u); //cheac if the user Proper else add alret if (user.Management_status.Id != "Proper") { AlertsUsers alert = new AlertsUsers() { UserId = user.Id_user, Alret = " סטטוס ניהול לחבר " + user.Last_name + " " + user.First_name + " " + user.Management_status.Name + " סיבת הסטטוס " + user.Status_reason }; alertsUsers.Add(alert); } /// cheack if the user have active loan Loan loan = db.Loans.FirstOrDefault(l => l.UserId == u.UserId && l.NameManagement_status != "performed"); if (loan != null) { var thisMonth = DateTime.Now.Month; List <Repayments> repayments = db.Repayments.Where(r => r.LoanId == loan.LoanId && r.NameStatus != "performed").ToList(); List <Repayments> pastRepayments = repayments.Where(r => r.Date.Month < thisMonth && r.Date.Month != thisMonth).ToList(); foreach (var repayment in pastRepayments) { sumPayThisMonth += repayment.Amount; } if (pastRepayments.ToArray().Length > 0) { // user.payThisMonth = ":החזר הלוואה מחודשים קודמים שטרם החזרו" + sumPayThisMonth.ToString (); AlertsUsers alert = new AlertsUsers() { UserId = user.Id_user, Alret = " יש החזרים מחודשים קודמים שלא שולמו לחבר " + user.Last_name + " " + user.First_name }; alertsUsers.Add(alert); } Repayments repaymentThisMonth = repayments.FirstOrDefault(r => r.Date.Month == thisMonth); if (repaymentThisMonth != null) { // user.payThisMonth += " :תשלום פררעון לחודש זה" + repaymentThisMonth.Amount.ToString (); sumPayThisMonth += repaymentThisMonth.Amount; } } user.Loans = loan != null?LoanBL.Balance(loan.LoanId) : 0; User_in_fund rachelLea = db.UserInFunds.FirstOrDefault(uf => u.UserId == uf.UserId && uf.FundId == "rachelLea"); user.RachelLea = rachelLea != null ? (int)rachelLea.balance : 0; // Repayment repayment=db.Repayments.Where(r=>r. userList.Add(user); } } return(userList); }
public static RepaymentsDTO getRepaymentById(int id) { db DB = new db(); Repayments repyment = DB.Repayments.FirstOrDefault(r => r.RepaymentId == id); User user = DB.Users.FirstOrDefault(u => u.UserId == repyment.UserId); RepaymentsDTO repaymentDTO = RepaymentConvert.DALtoDTO(repyment); repaymentDTO.UserName = user.firstName + " " + user.lastname; return(repaymentDTO); }
public static RepaymentsDTO DALtoDTO(Repayments repayment) { RepaymentsDTO repaymentDTO = new RepaymentsDTO() { UserId = repayment.UserId, Amount = repayment.Amount, Date = repayment.Date, Id = repayment.RepaymentId, LoanID = repayment.LoanId, // Remark = repayment.Re, status = repayment.NameStatus }; return(repaymentDTO); }
} // ToString /// <summary> /// Creates a deep copy of current model. /// </summary> /// <returns>A copy of current model.</returns> public LoanCalculatorModel DeepClone() { var lcm = new LoanCalculatorModel { InterestOnlyRepayments = InterestOnlyRepayments, }; lcm.DiscountPlan.AddRange(DiscountPlan); lcm.Repayments.AddRange(Repayments.Select(v => v.DeepClone())); lcm.Fees.AddRange(Fees.Select(v => v.DeepClone())); lcm.BadPeriods.AddRange(BadPeriods.Select(v => v.DeepClone())); lcm.LoanHistory.Clear(); lcm.LoanHistory.AddRange(LoanHistory.Select(v => v.DeepClone())); return lcm; } // DeepClone
public static void Update(RepaymentsDTO repayment) { db DB = new db(); Repayments repaymentDal = DB.Repayments.FirstOrDefault(r => r.RepaymentId == repayment.Id); if (repayment.NameStatus == "performed" && repaymentDal.NameStatus != "performed") { FundBL.AddBalance(repayment.Amount); } repaymentDal.Amount = repayment.Amount; repaymentDal.NameStatus = repayment.NameStatus; repaymentDal.Date = repayment.Date; // repaymentDal.remark= repayment.Remark; DB.SaveChanges(); }
public static UserDTO GetUserById(int id) { User userDal = new User(); try { using (SuperGmachEntities db = new SuperGmachEntities()) { userDal = db.Users.FirstOrDefault(u => u.UserId == id); UserDTO user = Userconvert.DALtoDTO(userDal); ///cheack pay thisMonth var sumPayThisMonth = 0; Loan loan = db.Loans.FirstOrDefault(l => l.UserId == id && l.NameManagement_status != "performed"); if (loan != null) { var thisMonth = DateTime.Now.Month; List <Repayments> repayments = db.Repayments.Where(r => r.LoanId == loan.LoanId && r.NameStatus != "performed").ToList(); List <Repayments> pastRepayments = repayments.Where(r => r.Date.Month < thisMonth && r.Date.Month != thisMonth).ToList(); foreach (var repayment in pastRepayments) { sumPayThisMonth += repayment.Amount; } user.payThisMonth.Add(" תשלום פרעות מחודשים קודמים שטרם שלמו :" + sumPayThisMonth.ToString()); ; Repayments repaymentThisMonth = repayments.FirstOrDefault(r => r.Date.Month == thisMonth); if (repaymentThisMonth != null) { user.payThisMonth.Add("תשלום פררעון לחודש זה :" + repaymentThisMonth.Amount.ToString()); sumPayThisMonth += repaymentThisMonth.Amount; } } if (user.Friend == true) { sumPayThisMonth += 50; user.payThisMonth.Add(" הוראת קבע: 50 "); } user.payThisMonth.Add("סהכ :" + sumPayThisMonth.ToString()); return(user); } } catch (Exception e) { throw e; } }
public static UserDTO GetUserById(int id) { User userDal = new User(); try { using (SuperGmachEntities db = new SuperGmachEntities()) { userDal = db.Users.FirstOrDefault(u => u.UserId == id); UserDTO user = Userconvert.DALtoDTO(userDal); ///cheack pay thisMonth var sumPayThisMonth = 0; var paid = 0; Loan loan = db.Loans.FirstOrDefault(l => l.UserId == id && l.NameManagement_status != "performed"); if (loan != null) { var thisMonth = DateTime.Now.Month; List <Repayments> repayments = db.Repayments.Where(r => r.LoanId == loan.LoanId && r.NameStatus != "performed").ToList(); List <Repayments> pastRepayments = repayments.Where(r => r.Date.Month < thisMonth && r.Date.Month != thisMonth).ToList(); if (pastRepayments.ToArray().Length > 0) { foreach (var repayment in pastRepayments) { sumPayThisMonth += repayment.Amount; } user.payThisMonth.Add(" תשלום פרעות מחודשים קודמים שטרם שלמו :" + sumPayThisMonth.ToString());; } Repayments repaymentThisMonth = repayments.FirstOrDefault(r => r.Date.Month == thisMonth); if (repaymentThisMonth != null) { sumPayThisMonth += repaymentThisMonth.Amount; if (repaymentThisMonth.NameStatus != "performed") { user.payThisMonth.Add("תשלום פררעון לחודש זה :" + repaymentThisMonth.Amount.ToString()); } else { user.payThisMonth.Add("תשלום פררעון לחודש זה :" + repaymentThisMonth.Amount.ToString() + " -שולם "); paid += repaymentThisMonth.Amount; } } } if (user.Friend == true) { var last_Debit_order = user.last_Debit_order; var today = DateTime.Now; var month = ((today.Year - last_Debit_order.Year) * 12) + today.Month - last_Debit_order.Month; if (month == 0) { sumPayThisMonth += 50; paid += 50; user.payThisMonth.Add(" שולם:הוראת קבע: 50 "); } else { var amount = 50 * month; sumPayThisMonth += amount; user.payThisMonth.Add("הוראת קבע: " + amount.ToString()); } } user.payThisMonth.Add("סהכ :" + sumPayThisMonth.ToString()); user.payThisMonth.Add("שולם :" + paid.ToString()); var toPay = sumPayThisMonth - paid; user.payThisMonth.Add("סהכ לתשלום :" + toPay.ToString()); return(user); } } catch (Exception e) { throw e; } }
public static ListUsers GetUsersList() { var sumPayThisMonth = 0; // List<UserDTO> userList = new List<UserDTO> (); ListUsers userList = new ListUsers(); using (SuperGmachEntities db = new SuperGmachEntities()) { foreach (User u in db.Users) { UserDTO user = Userconvert.DALtoDTO(u); //cheac if the user Proper else add alret if (user.Management_status.Id != "Proper") { AlertsUsers alert = new AlertsUsers() { UserId = user.Id_user, Alret = " סטטוס ניהול לחבר " + user.Last_name + " " + user.First_name + " " + user.Management_status.Name + " סיבת הסטטוס " + user.Status_reason }; userList.alertsUsers.Add(alert); } /// cheack if the user have active loan Loan loan = db.Loans.FirstOrDefault(l => l.UserId == u.UserId && l.NameStatus != "performed"); if (loan != null) { var today = DateTime.Now; var thisMonth = DateTime.Now.Month; List <Repayments> repayments = db.Repayments.Where(r => r.LoanId == loan.LoanId && r.NameStatus != "performed").ToList(); List <Repayments> pastRepayments = repayments.Where(r => r.Date < today && r.Date != today).ToList(); foreach (var repayment in pastRepayments) { sumPayThisMonth += repayment.Amount; } if (pastRepayments.ToArray().Length > 0) { // user.payThisMonth = ":החזר הלוואה מחודשים קודמים שטרם החזרו" + sumPayThisMonth.ToString (); AlertsUsers alert = new AlertsUsers() { UserId = user.Id_user, Alret = " יש החזרים מחודשים קודמים שלא שולמו לחבר " + user.Last_name + " " + user.First_name }; userList.alertsUsers.Add(alert); } Repayments repaymentThisMonth = repayments.FirstOrDefault(r => r.Date.Month == thisMonth); if (repaymentThisMonth != null) { // user.payThisMonth += " :תשלום פררעון לחודש זה" + repaymentThisMonth.Amount.ToString (); sumPayThisMonth += repaymentThisMonth.Amount; } } if (loan != null) { switch (loan.NameManagement_status) { case "Invalid": user.Loans = " לא תקין " + LoanBL.Balance(loan.LoanId).ToString(); break; case "Unauthorized": user.Loans = "לא מאושר"; break; case "Proper": user.Loans = loan.NameStatus == "active" ? ("-" + LoanBL.Balance(loan.LoanId).ToString()) : "ממתין לאישור"; break; case "Approved": user.Loans = loan.NameStatus == "future" ? loan.Amount.ToString() + " עתידי" : loan.Amount.ToString() + "מאושר "; break; } } // user.Loans = loan != IChangeTracking null ? LoanBL.Balance (loan.LoanId) : 0; User_in_fund rachelLea = db.UserInFunds.FirstOrDefault(uf => u.UserId == uf.UserId && uf.FundId == "2"); user.RachelLea = rachelLea != null ? (int)rachelLea.balance : 0; // Repayment repayment=db.Repayments.Where(r=>r. userList.Users.Add(user); } } return(userList); }