示例#1
0
        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"));
            }
        }
示例#2
0
        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)));
        }