Esempio n. 1
0
        public static void SetUserStatus(StatusUpdateData data)
        {
            CandidateUser user = GetUser <CandidateUser>(data.CandidateId);

            if (user == null)
            {
                throw new InterviewException.CandidateDoesntExistsException(data.CandidateId);
            }

            switch (data.Status)
            {
            case AdmissionStatus.Registered:
                user.Status = AdmissionStatus.Registered;
                break;

            case AdmissionStatus.PassedTests:
                user.Status = AdmissionStatus.PassedTests;
                InterviewManager.AddCandidateToInterviewQueue(data.CandidateId);
                break;

            case AdmissionStatus.Passed:
                user.Status = AdmissionStatus.Passed;
                break;

            case AdmissionStatus.Rejected:
                user.Status = AdmissionStatus.Rejected;
                break;
            }
        }
Esempio n. 2
0
 public InterviewController(
     IInterviewQuerier interviewQuerier,
     IJobQuerier jobQuerier,
     IUserQuerier userQuerier,
     ResumeManager resumeManager,
     InterviewManager interviewManager,
     IServiceProvider serviceProvider)
     : base(serviceProvider)
 {
     _interviewQuerier = interviewQuerier;
     _jobQuerier       = jobQuerier;
     _userQuerier      = userQuerier;
     _resumeManager    = resumeManager;
     _interviewManager = interviewManager;
 }
        public void UpdateGrade([FromBody] GradeInfoData data)
        {
            var tokenString = Request.Headers["Authorization"];
            var token       = new TokenData(tokenString); //todo check token

            if (!AuthManager.ValidateAuthToken(token))
            {
                Response.StatusCode = (int)HttpStatusCode.NetworkAuthenticationRequired;
                return;
            }
            if (!UsersManager.GetUser(token).HasRoot(RootEnum.Interviewer))
            {
                Response.StatusCode = (int)HttpStatusCode.Forbidden;
                return;
            }

            InterviewManager.SetInterviewResults(data.CandidateID, data.Grade);
        }
        public CandidateUser[] ShowAllCandidatesReadyForInterview()
        {
            var tokenString = Request.Headers["Authorization"];
            var token       = new TokenData(tokenString);

            if (!AuthManager.ValidateAuthToken(token))
            {
                Response.StatusCode = (int)HttpStatusCode.NetworkAuthenticationRequired;
                return(null);
            }
            if (!UsersManager.GetUser(token).HasRoot(RootEnum.Manager))
            {
                Response.StatusCode = (int)HttpStatusCode.Forbidden;
                return(null);
            }

            return(InterviewManager.GetCandidateUserList());
        }
        public void DeleteInterview([FromBody] InterviewInfoData data)
        {
            var tokenString = Request.Headers["Authorization"];
            var token       = new TokenData(tokenString);

            if (!AuthManager.ValidateAuthToken(token))
            {
                Response.StatusCode = (int)HttpStatusCode.NetworkAuthenticationRequired;
                return;
            }
            if (!UsersManager.GetUser(token).HasRoot(RootEnum.Manager))
            {
                Response.StatusCode = (int)HttpStatusCode.Forbidden;
                return;
            }

            InterviewManager.DeleteInterview(data);
        }