[Route("UserBalances")] //***************************************************************************************************************** public IHttpActionResult GetUserBalances() { var loggedUserID = User.Identity.GetUserId(); ApplicationDbContext db = new ApplicationDbContext(); #region assign duumy values //var loggedUser = db.Users.FirstOrDefault(u => u.Id == loggedUserID); //loggedUser.AnnualBalance = 21; //loggedUser.SuddenBalance = 3; //loggedUser.SickBalance = 7; //db.Users.AddOrUpdate(loggedUser); #endregion var loggedinUser = db.Users.FirstOrDefault(u => u.Id == loggedUserID); LeaveBalanceViewModel balances = new LeaveBalanceViewModel { AnnualBalance = loggedinUser.AnnualBalance, SickBalance = loggedinUser.SickBalance, SuddenBalance = loggedinUser.SuddenBalance }; if (balances == null) { return(NotFound()); } return(Ok(balances)); }
/// <summary> /// Maps the specified original. /// </summary> /// <param name="original">The original.</param> /// <returns></returns> public static LeaveBalanceViewModel Map(this LeaveBalanceModel original) { var mappedOutcome = new LeaveBalanceViewModel { EmployeeId = original.EmployeeId, Balance = original.Balance, Name = original.Name, Surname = original.Surname }; return(mappedOutcome); }
public ActionResult LeaveBalanceAdmin() { LeaveBalanceViewModel lbvm = new LeaveBalanceViewModel(); int roleid = Convert.ToInt32(Session["RoleId"]); lbvm.EmpList = _employeeServices.GetEmployeeList(roleid); List <int> neapaliyear = _reportServices.GetYearList(); List <SelectListItem> year = new List <SelectListItem>(); foreach (int str in neapaliyear) { year.Add(new SelectListItem { Text = str.ToString(), Value = str.ToString() }); } lbvm.YearList = year; return(View(lbvm)); }
private LeaveBalanceViewModel GetBalanceVM(string userId, int rowId) { double[] balances = new double[3]; ADUser user = timesheetDb.ADUsers.Where(u => u.Email == userId).FirstOrDefault(); string userName = (user == null) ? string.Empty : user.UserName; for (int i = 0; i < 3; i++) { var leaveBalance = timesheetDb.LeaveBalances.Find(userId, (_leaveType)i); balances[i] = (leaveBalance == null) ? 0 : Math.Round(leaveBalance.AvailableLeaveHours, 2, MidpointRounding.AwayFromZero); } LeaveBalanceViewModel model = new LeaveBalanceViewModel() { RowId = rowId, UserId = userId, UserName = userName, Balances = balances }; return(model); }
private List <LeaveBalanceViewModel> ReadCSV(HttpPostedFileBase file) { List <LeaveBalanceViewModel> model = new List <LeaveBalanceViewModel>(); using (StreamReader csvreader = new StreamReader(file.InputStream)) { LeaveBalanceViewModel balanceVM = new LeaveBalanceViewModel(); int i = 1; while (!csvreader.EndOfStream) { var row = csvreader.ReadLine(); var cols = row.Split(','); if (cols.Length == 3) { balanceVM = new LeaveBalanceViewModel(); string lastname = cols[0].Replace("\"", string.Empty) .Replace(" ", string.Empty); string firstname = cols[1].Replace("\"", string.Empty).Substring(1); balanceVM.UserName = firstname + " " + lastname; } else if (cols.Length == 2) { double leaveHours = 0; if (cols[0] != string.Empty && cols[1] == string.Empty) { balanceVM = new LeaveBalanceViewModel(); balanceVM.UserName = cols[0]; } else if (cols[1] == string.Empty && cols[1] == string.Empty) { if (balanceVM != null) { ADUser user = timesheetDb.ADUsers .Where(u => u.UserName == balanceVM.UserName) .FirstOrDefault(); if (user == null) { ModelState.AddModelError("", "User '" + balanceVM.UserName + "' doesn't exit in Database."); } else { balanceVM.UserId = user.Email; balanceVM.UserName = balanceVM.UserName; model.Add(balanceVM); } balanceVM = null; } } else if (Double.TryParse(cols[1], out leaveHours) || cols[1].StartsWith("0.00")) { if (cols[1].StartsWith("0.00")) { leaveHours = 0; } switch (cols[0]) { case "Holiday Leave Accrual": balanceVM.Balances[(int)_leaveType.annual] = leaveHours; break; case "Sick Leave Accrual": balanceVM.Balances[(int)_leaveType.sick] = leaveHours; break; case "Time in Lieu (Flex) Accrual": balanceVM.Balances[(int)_leaveType.flexi] = leaveHours; break; default: ModelState.AddModelError("", "Undefined leaves type in row " + i + " ."); break; } } } else { ModelState.AddModelError("", "Undefined format in row " + i + " ."); } i++; } if (balanceVM != null) { ADUser user = timesheetDb.ADUsers .Where(u => u.UserName == balanceVM.UserName) .FirstOrDefault(); if (user == null) { ModelState.AddModelError("", "User '" + balanceVM.UserName + "' doesn't exit in Database."); } else { balanceVM.UserId = user.Email; balanceVM.UserName = balanceVM.UserName; model.Add(balanceVM); balanceVM = null; } } } return(model); }