/// <summary> /// Check is exist id, save isCorrect in db and if isCorrect == true - update score for user /// </summary> ///<table style=""width:100%""> ///<tr> /// <th>ERROR#</th> /// <th>ERROR CODE</th> /// <th>ERROR DESCRIPTION</th> ///</tr> ///<tr> /// <td>5012</td> /// <td>NOT_EXIST_QUESTION_ID</td> /// <td>Question Id is not exist in data base</td> ///</tr> ///<tr> /// <td>5011</td> /// <td>NOT_EXIST_USER_ID</td> /// <td>Student Id is not exist in data base</td> ///</tr> ///<tr> /// <td>9006</td> /// <td>DATA_BASE_ERROR</td> /// <td></td> ///</tr> ///</table> /// <param name="questionId"></param> /// <param name="studentId"></param> /// <param name="request"></param> /// <returns></returns> public Errors ConfirmAnswer(int questionId, int studentId, ConfirmAnswerRequest request) { try { if (!_dbManager.isExistUserId(studentId)) { return(Errors.NOT_EXIST_USER_ID); } if (!_dbManager.isExistQuestionId(questionId)) { return(Errors.NOT_EXIST_QUESTION_ID); } ConfirmAnswerDBRequest answer = new ConfirmAnswerDBRequest() { QuestionId = questionId, UserId = studentId, IsCorrect = request.IsCorrect }; _dbManager.ConfirmAnswer(answer); if (request.IsCorrect) { _dbManager.UpdateSurveyScore(answer); } return(Errors.OK); } catch (Exception ex) { _logger.Error(ex.Message); return(Errors.DATA_BASE_ERROR); } }
public IHttpActionResult ConfirmAnswer([FromUri] int questionId, [FromUri] int studentId, [FromBody] ConfirmAnswerRequest request) { if (questionId <= 0) { return(Content(HttpStatusCode.BadRequest, new ErrorResponse(Errors.INVALID_QUESTION_ID))); } if (studentId <= 0) { return(Content(HttpStatusCode.BadRequest, new ErrorResponse(Errors.INVALID_USER_ID))); } var operationSuccess = _answersManager.ConfirmAnswer(questionId, studentId, request); if (operationSuccess == Errors.OK) { return(Ok()); } else { return(Content(HttpStatusCode.BadRequest, operationSuccess)); } }