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 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); }