// GET: Requests/Edit/5 public ActionResult AllRequests(string name, State?state, string date1, string date2) { ViewBag.CurrentDate = GetPersianTime.GetPersainDateTime()[0]; //droplist options var Users = repository.GetallUsersNames(); SelectList list = new SelectList(Users); ViewBag.AllUsers = list; List <Request> requests = repository.GetRequestsByNameAndState(name, state); if (!string.IsNullOrEmpty(date1) && !string.IsNullOrEmpty(date2)) { DateTime firstTime = TimeSetting.SetTime(date1); DateTime secondTime = TimeSetting.SetTime(date2); requests = requests.Where(w => (w.RequestTime.Year >= firstTime.Year && w.RequestTime.Month >= firstTime.Month && w.RequestTime.Day >= firstTime.Day) && (w.RequestTime.Year <= secondTime.Year && w.RequestTime.Month <= secondTime.Month && w.RequestTime.Day <= secondTime.Day)).ToList(); } requests = requests.OrderByDescending(s => s.UserID).ThenBy(t => t.RequestTime).ToList(); var result = SetRequestView.SetRequest(requests); ViewBag.AllWorkingTime = AllWorkTimeCalculation.AllWorkTimeSum(result); return(View(result)); }
// GET: Requests public ActionResult Index(string date1, string date2, string ID, State?requestType) { IEnumerable <Request> requests = new List <Request>(); //get current date in persian format ViewBag.CurrentDate = GetPersianTime.GetPersainDateTime()[0]; string userid = string.Empty; if (ID == null) { userid = User.Identity.GetUserId(); } else { userid = ID; } if (!string.IsNullOrEmpty(date1) && !string.IsNullOrEmpty(date2)) { DateTime firstTime = TimeSetting.SetTime(date1); DateTime secondTime = TimeSetting.SetTime(date2); requests = repository.GetRequestsByDatePeriod(firstTime, secondTime, userid); } else { requests = repository.GetRequestByUserID(userid); } requests = requests.OrderBy(s => s.RequestTime); var requestViews = SetRequestView.SetRequest(requests); ViewBag.AllWorkingTime = AllWorkTimeCalculation.AllWorkTimeSum(requestViews); ////sorting by date //if (sortOrder == "Date") // requestViews = requestViews.OrderByDescending(o => o.Date).ThenBy(o => o.ArrivalTime).ToList(); //else if (sortOrder == "WorkingTime") // requestViews = requestViews.OrderByDescending(o => o.WorkingTime).ThenBy(o => o.Name).ToList(); //else //requestViews = requestViews.OrderBy(o => o.Name).ThenBy(o => o.Date).ToList(); if (requestType == State.accepted) { requestViews = requestViews.Where(w => w.State == State.accepted).ToList(); } else if (requestType == State.rejected) { requestViews = requestViews.Where(w => w.State == State.rejected).ToList(); } else if (requestType == State.Processing) { requestViews = requestViews.Where(w => w.State == State.Processing).ToList(); } else { requestViews = requestViews.Where(w => w.State == State.accepted).ToList(); } return(View(requestViews)); }