Пример #1
0
        public static bool insertQuestionAnswer(TaskQuestionAnswerDTO pQuestionAnswer)
        {
            using (SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["connectionRRHHDatabase"].ConnectionString))
            {
                SqlCommand command = new SqlCommand("usp_insert_questionAnswer", connection);
                command.CommandType = System.Data.CommandType.StoredProcedure;

                command.Parameters.Add("@response", SqlDbType.VarBinary);
                command.Parameters["@response"].Value = pQuestionAnswer.responseData;

                command.Parameters.Add("@taskQuestion_id", SqlDbType.BigInt);
                command.Parameters["@taskQuestion_id"].Value = pQuestionAnswer.taskQuestion_id;

                command.Parameters.Add("@user_id", SqlDbType.Int);
                command.Parameters["@user_id"].Value = pQuestionAnswer.user_id;

                command.Parameters.Add("@userLog", SqlDbType.Int);
                command.Parameters["@userLog"].Value = pQuestionAnswer.userLog;

                command.Connection.Open();
                string result = command.ExecuteNonQuery().ToString();
                if (result != "0")
                {
                    return(true);
                }
            };
            return(false);
        }
 public IHttpActionResult postQuestionAnswer(TaskQuestionAnswerDTO pQuestion)
 {
     if (!TaskFormData.insertQuestionAnswer(pQuestion))
     {
         return(BadRequest());
     }
     return(Ok());
 }
Пример #3
0
 public async Task <bool> postQuestionAnswer(TaskQuestionAnswerDTO questionDTO)
 {
     using (var client = new HttpClient())
     {
         client.BaseAddress = new Uri(_BaseAddress);
         var serializer = new JavaScriptSerializer();
         serializer.MaxJsonLength = Int32.MaxValue;
         var         userJson    = serializer.Serialize(questionDTO);
         HttpContent contentPost = new StringContent(userJson, Encoding.UTF8, "application/json");
         client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", getToken());
         HttpResponseMessage response = client.PostAsync("api/tasks/questionAnswers", contentPost).Result;
         return(response.IsSuccessStatusCode);
     }
 }
 public ActionResult _AnswerTaskForm(List <string> answers, string id_task)
 {
     if (ModelState.IsValid)
     {
         var                    parameters     = Request.Params;
         TaskProvider           taskProvider   = new TaskProvider();
         TaskFormDTO            taskForm       = taskProvider.getTaskFormbyTask(id_task).Result;
         List <TaskQuestionDTO> taskQuestions  = taskProvider.getFormQuestions(taskForm.id_taskForm).Result;
         bool                   isFormAnswered = true;
         int                    iQuestion      = 0;
         foreach (var question in taskQuestions)
         {
             TaskQuestionAnswerDTO questionAnswer = new TaskQuestionAnswerDTO();
             questionAnswer.taskQuestion_id = question.id_taskQuestion;
             questionAnswer.user_id         = Request.Cookies["user_id"].Value;
             questionAnswer.userLog         = Request.Cookies["user_id"].Value;
             if (questionAnswer.questionType_id != "5") //string answer
             {
                 questionAnswer.responseData = Encoding.UTF8.GetBytes(answers[iQuestion]);
             }
             if (questionAnswer.questionType_id != "4") //string answer
             {
                 questionAnswer.responseData = Encoding.UTF8.GetBytes(answers[iQuestion]);
             }
             if (!taskProvider.postQuestionAnswer(questionAnswer).Result)
             {
                 isFormAnswered = false;
             }
             iQuestion++;
         }
         if (isFormAnswered)
         {
             return(new HttpStatusCodeResult(200));
         }
     }
     return(new HttpStatusCodeResult(404, "Error, no se puede agregar la notificación"));
 }
Пример #5
0
        public static List <TaskQuestionAnswerDTO> getQuestionsAnswers(string id_taskForm, string user_id)
        {
            List <TaskQuestionAnswerDTO> questionAnswers = new List <TaskQuestionAnswerDTO>();

            using (SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["connectionRRHHDatabase"].ConnectionString))
            {
                SqlCommand command = new SqlCommand("usp_get_questionAnswers", connection);
                command.CommandType = CommandType.StoredProcedure;
                command.Parameters.Add("@id_taskForm", SqlDbType.BigInt);
                command.Parameters["@id_taskForm"].Value = id_taskForm;
                command.Parameters.Add("@user_id", SqlDbType.Int);
                command.Parameters["@user_id"].Value = user_id;
                command.Connection.Open();
                SqlDataReader rdr = command.ExecuteReader();
                while (rdr.Read())
                {
                    TaskQuestionAnswerDTO taskQuestionAnswer = new TaskQuestionAnswerDTO();
                    taskQuestionAnswer.user_id           = rdr["user_id"].ToString();
                    taskQuestionAnswer.taskQuestion_id   = rdr["taskQuestion_id"].ToString();
                    taskQuestionAnswer.question          = rdr["question"].ToString();
                    taskQuestionAnswer.questionPosition  = rdr["questionPosition"].ToString();
                    taskQuestionAnswer.questionType_id   = rdr["questionType_id"].ToString();
                    taskQuestionAnswer.questionType_name = rdr["questionType_name"].ToString();
                    byte[] response = (byte[])rdr["response"];
                    if (taskQuestionAnswer.questionType_id != "5")
                    {
                        taskQuestionAnswer.response = Encoding.UTF8.GetString(response);
                    }
                    else
                    {
                        taskQuestionAnswer.response = Convert.ToBase64String(response);
                    }
                    questionAnswers.Add(taskQuestionAnswer);
                }
            };
            return(questionAnswers);
        }