json.single_questions do json.questions @single_questions.each do |question| json.(question, :id, :position, :score, :item_type) json.partial! "item_banks/item", locals: {item: question} end json.questions_score @single_questions.map(&:score).sum json.questions_count @single_questions.size end json.multiple_questions do json.questions @multiple_questions.each do |question| json.(question, :id, :position, :score, :item_type) json.partial! "item_banks/item", locals: {item: question} end json.questions_score @multiple_questions.map(&:score).sum json.questions_count @multiple_questions.size end json.judgement_questions do json.questions @judgement_questions.each do |question| json.(question, :id, :position, :score, :item_type) json.partial! "item_banks/item", locals: {item: question} end json.questions_score @judgement_questions.map(&:score).sum json.questions_count @judgement_questions.size end json.program_questions do json.questions @program_questions.each do |question| json.(question, :id, :position, :score, :item_type) json.partial! "item_banks/item", locals: {item: question} end json.questions_score @program_questions.map(&:score).sum json.questions_count @program_questions.size end json.exam do json.(@exam, :id, :name, :difficulty, :sub_discipline_id, :duration) json.all_score @items.map(&:score).sum json.all_questions_count @items.size json.discipline do if @exam.sub_discipline&.discipline.present? json.(@exam.sub_discipline&.discipline, :id, :name) end end json.sub_discipline do if @exam.sub_discipline.present? json.(@exam.sub_discipline, :id, :name) end end json.tag_disciplines @exam.tag_disciplines do |tag| json.(tag, :id, :name) end end