public IActionResult GetAllFacultyInfo() { try { var allFaculty = _repository.Faculty.GetAllFaculty(); allFacultyInfo = new List <FacultyInfo>(); foreach (Faculty current in allFaculty) { facultyInfoObject = new FacultyInfo { Faculty_Id = current.Faculty_Id, Faculty_Status = current.Faculty_Status, User_Id = current.User_Id, }; var user = _repository.Users.GetUserById(current.User_Id); facultyInfoObject.Last_Name = user.Last_Name; facultyInfoObject.First_Name = user.First_Name; facultyInfoObject.Birth_Date = user.Birth_Date; facultyInfoObject.Address = user.Address; facultyInfoObject.EMail = user.EMail; facultyInfoObject.Dept_Id = user.Dept_Id; facultyInfoObject.Type_Code = user.Type_Code; facultyInfoObject.User_Id = user.User_Id; facultyInfoObject.Start_Date = user.Start_Date; allFacultyInfo.Add(facultyInfoObject); _logger.LogInfo(facultyInfoObject.ToString()); } _logger.LogInfo($"Returned all faculty from database. " + Enumerable.Count(allFaculty)); return(Ok(allFacultyInfo.OrderBy(ow => ow.Start_Date))); } catch (Exception ex) { _logger.LogError($"Something went wrong inside GetAllFacultyInfo action: {ex.Message}"); return(StatusCode(500, "Internal server error")); } }
public IActionResult GetFacultyByDepartmentId(int id) { var allFaculty = _repository.Faculty.GetAllFaculty(); allFacultyInfo = new List <FacultyInfo>(); foreach (Faculty current in allFaculty) { facultyInfoObject = new FacultyInfo { Faculty_Id = current.Faculty_Id, Faculty_Status = current.Faculty_Status, User_Id = current.User_Id, }; var user = _repository.Users.GetUserById(current.User_Id); facultyInfoObject.Last_Name = user.Last_Name; facultyInfoObject.First_Name = user.First_Name; facultyInfoObject.Birth_Date = user.Birth_Date; facultyInfoObject.Address = user.Address; facultyInfoObject.EMail = user.EMail; facultyInfoObject.Dept_Id = user.Dept_Id; facultyInfoObject.Type_Code = user.Type_Code; facultyInfoObject.User_Id = user.User_Id; facultyInfoObject.Start_Date = user.Start_Date; allFacultyInfo.Add(facultyInfoObject); _logger.LogInfo(facultyInfoObject.ToString()); } List <FacultyInfo> facultyByDepartment = new List <FacultyInfo>(); foreach (var current in allFacultyInfo) { if (current.Dept_Id == id) { facultyByDepartment.Add(current); } } _logger.LogInfo("Number of faculty: " + allFacultyInfo.Count); return(Ok(facultyByDepartment.OrderBy(ow => ow.Start_Date))); }