From d8a4b06ca34f4e9368d5b45d70c3c0d3f3031ae8 Mon Sep 17 00:00:00 2001 From: cxt <853663049@qq.com> Date: Fri, 6 Dec 2019 17:43:51 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E7=9A=84=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=92=8C=E7=BB=9F=E8=AE=A1=E7=BB=93=E6=9E=9C=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/polls_controller.rb | 32 +++++++++++-------- .../_commit_answers_result.json.jbuilder | 4 +-- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/app/controllers/polls_controller.rb b/app/controllers/polls_controller.rb index 63511c8f9..0c442a613 100644 --- a/app/controllers/polls_controller.rb +++ b/app/controllers/polls_controller.rb @@ -1409,23 +1409,29 @@ class PollsController < ApplicationController poll_questions.each do |q| user_poll_votes = u_user.poll_votes.find_current_vote("poll_question_id",q.id) if user_poll_votes.present? - user_poll_answer_ids = user_poll_votes.pluck(:poll_answer_id).reject(&:blank?) - user_poll_vote_texts = user_poll_votes.pluck(:vote_text).reject(&:blank?) - if user_poll_answer_ids.count > 0 - answer_content = q.poll_answers.find_answer_by_custom("id",user_poll_answer_ids) - if user_poll_answer_ids.count >1 - u_answer = answer_content.pluck(:answer_text).join(";") + if q.question_type < 3 + user_poll_answer_ids = user_poll_votes.pluck(:poll_answer_id).reject(&:blank?) + if user_poll_answer_ids.count > 0 + answer_content = q.poll_answers.find_answer_by_custom("id",user_poll_answer_ids) + if user_poll_answer_ids.count >1 + u_answer = answer_content.pluck(:answer_text).join(";") + else + u_answer = answer_content.first&.answer_text + end else - u_answer = answer_content.first&.answer_text + u_answer = "--" end - elsif user_poll_vote_texts.count > 0 - if user_poll_vote_texts.count > 1 - u_answer = user_poll_vote_texts.join(";") + else + user_poll_vote_texts = user_poll_votes.pluck(:vote_text).reject(&:blank?) + if user_poll_vote_texts.count > 0 + if user_poll_vote_texts.count > 1 + u_answer = user_poll_vote_texts.join(";") + else + u_answer = user_poll_vote_texts.first + end else - u_answer = user_poll_vote_texts.first + u_answer = "--" end - else - u_answer = "--" end else u_answer = "--" diff --git a/app/views/polls/_commit_answers_result.json.jbuilder b/app/views/polls/_commit_answers_result.json.jbuilder index 51e84000b..2d33731f1 100644 --- a/app/views/polls/_commit_answers_result.json.jbuilder +++ b/app/views/polls/_commit_answers_result.json.jbuilder @@ -21,7 +21,5 @@ json.question do json.answer_percent question_vote_user.present? ? (answer_users_count.to_f / question_vote_user.to_f).round(3) : 0.0 end end - if question_votes.find_vote_text.present? - json.vote_text question_votes.pluck(:vote_text).reject(&:blank?) #问题的回答是否有用户手动输入的内容 - end + json.vote_text question_votes.find_vote_text.present? ? question_votes.pluck(:vote_text).reject(&:blank?) : "--" #问题的回答是否有用户手动输入的内容 end \ No newline at end of file