public JsonResult GetEvaluationRespondedUnits(EvaluationResponseFilters selectedFilter, int currentActiveEvaluationId, int offset = 0, string searchText = null) { try { var token = _tokenValidator.Validate(HttpContext); if (!token.Success) { return(Json(new ReturnData <string> { Success = false, NotAuthenticated = true, Message = $"Unauthorized:-{token.Message}", })); } selectedFilter.AcademicYear = selectedFilter.AcademicYear ?? ""; selectedFilter.Semester = selectedFilter.Semester ?? ""; selectedFilter.UnitCode = selectedFilter.UnitCode ?? ""; selectedFilter.LecturerName = selectedFilter.LecturerName ?? ""; selectedFilter.Programme = selectedFilter.Programme ?? ""; selectedFilter.Campus = selectedFilter.Campus ?? ""; selectedFilter.Department = selectedFilter.Department ?? ""; searchText = string.IsNullOrEmpty(searchText) ? "" : searchText; if (!string.IsNullOrEmpty(selectedFilter.LecturerEmpNo)) { var result = _unisolApiProxy.GetUnitLecturer(selectedFilter.LecturerEmpNo).Result; var response = JsonConvert.DeserializeObject <ReturnData <dynamic> >(result); selectedFilter.LecturerName = response.Data?.dname ?? ""; } var sectionWithMean = GetSectionMeans(selectedFilter.AcademicYear, selectedFilter.Semester, selectedFilter.UnitCode, selectedFilter.LecturerName, selectedFilter.Programme, selectedFilter.Campus, selectedFilter.Department, currentActiveEvaluationId); var totalItems = _context .EvaluationTakenUnitWiseByUsers.Count(n => (n.UnitCode.CaseInsensitiveContains(searchText) || n.TargetNames.CaseInsensitiveContains(searchText)) && n.EvaluationCurrentActiveId == currentActiveEvaluationId ); return(Json(sectionWithMean)); } catch (Exception ex) { return(Json(new ReturnData <dynamic> { Success = false, Message = "An error occured ,please try again ", Error = new Error(ex) })); } }
public JsonResult GetEvaluationTargets(EvaluationResponseFilters selectedFilter, int currentActiveEvaluationId = 0) { try { var token = _tokenValidator.Validate(HttpContext); if (!token.Success) { return(Json(new ReturnData <string> { Success = false, NotAuthenticated = true, Message = $"Unauthorized:-{token.Message}", })); } selectedFilter.AcademicYear = selectedFilter.AcademicYear ?? ""; selectedFilter.Semester = selectedFilter.Semester ?? ""; selectedFilter.UnitCode = selectedFilter.UnitCode ?? ""; selectedFilter.LecturerName = selectedFilter.LecturerName ?? ""; selectedFilter.Programme = selectedFilter.Programme ?? ""; selectedFilter.Campus = selectedFilter.Campus ?? ""; selectedFilter.Department = selectedFilter.Department ?? ""; selectedFilter.LecturerEmpNo = selectedFilter.LecturerEmpNo ?? ""; if (!string.IsNullOrEmpty(selectedFilter.LecturerEmpNo)) { var result = _unisolApiProxy.GetUnitLecturer(selectedFilter.LecturerEmpNo).Result; var response = JsonConvert.DeserializeObject <ReturnData <dynamic> >(result); selectedFilter.LecturerName = response.Data?.dname ?? ""; } var target = _context.EvaluationTargetGroups .Where(e => e.EvaluationsCurrentActiveId == currentActiveEvaluationId) .ToList(); var evaluationTaken = _context.EvaluationTakenUnitWiseByUsers.Where(u => u.EvaluationCurrentActiveId == currentActiveEvaluationId && u.AcademicYear.CaseInsensitiveContains(selectedFilter.AcademicYear) && u.Semester.CaseInsensitiveContains(selectedFilter.Semester) && u.UnitCode.CaseInsensitiveContains(selectedFilter.UnitCode) && u.LecturerName.CaseInsensitiveContains(selectedFilter.LecturerName) && u.Programme.CaseInsensitiveContains(selectedFilter.Programme) && u.Campus.CaseInsensitiveContains(selectedFilter.Campus) && u.Department.CaseInsensitiveContains(selectedFilter.Department)).ToList(); var evaluationFilters = new { AcademicYear = evaluationTaken.Select(u => u.AcademicYear).Distinct().ToList(), Semester = evaluationTaken.Select(u => u.Semester).Distinct().ToList(), Campus = evaluationTaken.Select(u => u.Campus).Distinct().ToList(), CertType = evaluationTaken.Select(u => u.CertType).Distinct().ToList(), Department = evaluationTaken.Select(u => u.Department).Distinct().ToList(), LecturerName = evaluationTaken.Select(u => u.LecturerName).Distinct().ToList(), Programme = evaluationTaken.Select(u => u.Programme).Distinct().ToList(), Schools = evaluationTaken.Select(u => u.Schools).Distinct().ToList(), UnitCode = evaluationTaken.Select(u => u.UnitCode).Distinct().ToList(), }; return(Json(new ReturnData <dynamic> { Success = true, Data = new { target, evaluationFilters } })); } catch (Exception ex) { return(Json(new ReturnData <dynamic> { Success = false, Message = "An error occured ,please try again ", Error = new Error(ex) })); } }