关卡问题

schedule_job
daiao 5 years ago
parent a479ce56a8
commit 73dcaa9b6d

@ -164,6 +164,8 @@ class ChallengesController < ApplicationController
@challenges = @shixun.challenges.joins(join_sql).select(base_columns).uniq
@shixun_modify = (@challenges.select{|c| c.status.present? }.size == @challenges.size)
#@challenges = @shixun.challenges.fields_for_list
@editable = @shixun.status == 0 # before_action有判断权限如果没发布则肯定是管理人员
@user = current_user

@ -69,11 +69,15 @@ class Challenge < ApplicationRecord
end
# 开启挑战
def open_game shixun
def open_game shixun, shixun_modify
# 这里的identifier,status是关联了games取了games的identifier,status
identifier = self.identifier
if identifier.present?
(shixun.task_pass || self.status != 3) ? "/tasks/#{identifier}" : ""
if shixun_modify
"/shixuns/#{shixun.identifier}/shixun_exec.json"
else
(shixun.task_pass || self.status != 3) ? "/tasks/#{identifier}" : ""
end
else
(shixun.task_pass || position == 1) ? "/shixuns/#{shixun.identifier}/shixun_exec.json" : ""
end

@ -22,7 +22,7 @@ if @challenges.present?
#json.playing_count @play_games_map.fetch(challenge.id, 0)
json.playing_count (challenge.games.count - user_passed_count)
json.name_url shixun_challenge_path(challenge, shixun_identifier: @shixun.identifier)
json.open_game challenge.open_game(@shixun)
json.open_game challenge.open_game(@shixun, @shixun_modify)
#json.open_game challenge.open_game(@shixun, @user.id)
if @editable
json.edit_url edit_shixun_challenge_path(challenge, shixun_identifier: @shixun.identifier)

Loading…
Cancel
Save