/// <summary> /// Used to add a student nickname to the system /// </summary> /// <param name="request">The information required to add a student nickname</param> /// <returns>A response indictaes if the action was successful</returns> public AddStudentResponse AddStudentNickname(AddStudentRequest request) { AddStudentResponse response = new AddStudentResponse(); try { response = (AddStudentResponse)request.CheckValidation(response); if (response.Status == HttpStatusCode.BadRequest) { return(response); } StudentDatalayer studentDatalayer = new StudentDatalayer(); var nickname = studentDatalayer.GetStudentNicknameByNickname(request.Nickname); if (nickname != null) { response.Status = HttpStatusCode.BadRequest; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.BadRequest, "This nickname is already being used.")); return(response); } var dataLayer = new StudentDatalayer(); int id = dataLayer.AddStudentNickname(request); response.StudentID = id; response.Status = HttpStatusCode.OK; } catch (Exception ex) { s_logger.Error(ex, "Unable to add a nickname"); response.Status = HttpStatusCode.InternalServerError; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.InternalServerError, "Unable to add a nickname")); } return(response); }