// GET: Requests public ActionResult Index() { GetCompletedRequisitionList(); List <RequestListVM> rsList = new List <RequestListVM>(); var requestList = db.Requests.Include(e => e.Configuration).Where(e => e.Configuration.Name != "Assigned").ToList(); foreach (var item in requestList) { var employee = db.Employees.Include(e => e.Department).Include(e => e.Designation).Where(e => e.EmpIdNo == item.EmpIdNo).ToList(); var employeeName = employee.Select(e => e.Name).FirstOrDefault(); var department = employee.Select(e => e.Department.Name).FirstOrDefault(); var designation = employee.Select(e => e.Designation.Name).FirstOrDefault(); RequestListVM rs = new RequestListVM(); rs.Id = item.Id; rs.Description = item.Description; rs.Location = item.Location; rs.Persons = item.Persons; rs.DepartureTime = item.DepartureTime; rs.CheckInTime = item.CheckInTime; rs.EmpIdNo = item.EmpIdNo; rs.Name = employeeName; rs.Designation = designation; rs.Configuration = item.Configuration.Name; rs.Department = department; rs.IsCanceled = item.IsCanceled; rsList.Add(rs); } //var requests = db.Requests.Include(r => r.Configuration).Include(r => r.Employee).Include(r => r.Employee.Department).Include(r => r.Employee.Designation); return(View(rsList)); }
public ActionResult List([FromBody] int Id, [FromQuery] string sortOrder, [FromQuery] string direction, [FromQuery] string searchString, [FromQuery] string currentFilter, [FromQuery] int?page) { RequestListVM requestList = new RequestListVM(); requestList.Filter = searchString; requestList.Order.Column = sortOrder ?? "name"; requestList.Order.Direction = direction ?? "ASC"; requestList.Page = page ?? 1; if (requestList.Filter != null) { requestList.Page = 1; } else { requestList.Filter = currentFilter; } var requests = _vacationRequestRepository.GetPage(requestList.Page, requestList.PageSize, (query) => ApplySortOrder(query, requestList.Order.Column, requestList.Order.Direction)); if (Id > 0) { if (_employeeRepository.GetById(Id).RoleId != (int)EmployeeType.Manager) { requests.Where(x => x.EmployeeId == Id).ToList(); } } foreach (var c in requests) { var user = _employeeRepository.GetById(c.EmployeeId); requestList.Items.Add(new RequestGridModel { Id = c.Id, Approved = c.Approved, Name = $"{user.Name} {user.Surname}", EndDate = c.EndDate, StartDate = c.StartDate }); } requestList.TotalPages = (int)Math.Ceiling(requests.TotalCount / (double)requestList.PageSize); return(Ok(requestList)); }
private RequestListVM PrepareRequestListVM(EnvType env, int?page, int?pageSize) { RequestListVM model = new RequestListVM(); try { var requests = _requestSrv.GetAllQueryable(env).OrderByDescending(x => x.Id); var pageNumber = page ?? 1; var size = pageSize ?? 20; IPagedList <RequestVM> onePageOfRequests = requests.ToPagedList(pageNumber, size) .ToMappedPagedList <Request, RequestVM>(); model.Requests = onePageOfRequests; model.Env = env; model.Description = $"Requests from {model.Env}"; model.PageSize = size; } catch (Exception ex) { string cs = _requestSrv.GetConnectionString(); _logger.LogError("[PrepareRequestListVM] Ex for cs: '{0}' -> {1}", cs, ex.ToString()); throw ex; } return(model); }
private RequestListVM SetRequestDetails(int?id) { Request rs = db.Requests.Find(id); var employee = db.Employees.Include(e => e.Department) .Include(e => e.Designation) .Where(e => e.EmpIdNo == rs.EmpIdNo) .ToList(); var employeeName = employee.Select(e => e.Name).FirstOrDefault(); var department = employee.Select(e => e.Department.Name).FirstOrDefault(); var designation = employee.Select(e => e.Designation.Name).FirstOrDefault(); var status = db.Configurations.Where(e => e.Id == rs.ConfigurationId).Select(e => e.Name).FirstOrDefault(); RequestListVM rsVM = new RequestListVM { Id = rs.Id, Description = rs.Description, Location = rs.Location, Persons = rs.Persons, DepartureTime = rs.DepartureTime, CheckInTime = rs.CheckInTime, EmpIdNo = rs.EmpIdNo, Name = employeeName, Designation = designation, Configuration = status, Department = department, IsCanceled = rs.IsCanceled }; return(rsVM); }
private async Task <RequestListVM> PrepareRequestListVM(EnvType env) { RequestListVM model = new RequestListVM(); var requests = (await _requestSrv.GetAllAsync(env)).OrderByDescending(x => x.Id); model.Requests = requests.ToPagedList().ToMappedPagedList <Request, RequestVM>(); model.Env = env; model.Description = $"All Requests from {model.Env}"; model.PageSize = 1; model.ShowingAll = true; return(model); }
public async Task <IActionResult> GetRequestList([FromBody] RequestListVM requestVM) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } IEnumerable <object> request = await _requestRepository.getRequestsList(requestVM.requestID, requestVM.RequsetPrivateNumber, requestVM.employeeID, requestVM.managerId, requestVM.requestTypeID, requestVM.statusCode, requestVM.showMyEmployee); if (request == null) { return(NotFound()); } // return Json(new { data = requests }); return(Ok(request)); }
public async Task <IActionResult> Add([FromBody] RequestListVM data) { int r = -2; var trans = this._projectReqservice.GetTransaction(); try { using (trans) { var temp = new RequestList(); temp.ApiName = data.ApiName; temp.Nik = data.Nik; temp.Id = data.Id; temp.Category = data.Category; temp.Detail = data.Detail; temp.ProjectName = data.ProjectName; temp.Status = data.Status; temp.SubTitle = data.SubTitle; temp.Title = data.Title; temp.UrlAction = data.UrlAction; temp.UrlProject = data.UrlProject; temp.Displayed = false; temp.readOnlyOnce = data.ReadOnlyOnce; temp.CreatedAt = DateTime.Now; var check = this._projectReqservice.GetSpecificId(temp); if (check != null) { check.Category = data.Category; check.Detail = data.Detail; check.Status = data.Status; check.Title = data.Title; check.SubTitle = data.SubTitle; check.UrlAction = data.UrlAction; check.UrlProject = data.UrlProject; check.ProjectName = data.ProjectName; check.readOnlyOnce = data.ReadOnlyOnce; this._projectReqservice.Update(check); r = this._projectReqservice.save(); } else { this._projectReqservice.Add(temp); r = this._projectReqservice.save(); } if (r > 0) { var res = new CustomResponse { message = "Data sudah ditambahkan", title = "Penambahan Data Sukses", ok = true }; trans.Commit(); this._notifService.sendNotifReferToData(data.Nik, data.ApiName, data.Id, data.DataNotif.Title, data.DataNotif.Message); return(Ok(res)); } else { var res = new CustomResponse { message = "Data gagal ditambahkan", title = "Penambahan Data Gagal", ok = false }; trans.Commit(); return(Ok(res)); } } } catch (Exception ex) { var res = new CustomResponse { errors = new List <string>() { ex.InnerException.Message }, message = ex.Message, title = "Error", ok = false }; return(BadRequest(res)); } }
public IActionResult List(EnvType env, int?page, int?pageSize) { RequestListVM model = PrepareRequestListVM(env, page, pageSize); return(View("RequestList", model)); }
public async Task <IActionResult> All(EnvType env) { RequestListVM model = await PrepareRequestListVM(env); return(View("RequestList", model)); }