diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 3f44fdafc..3ec8ad0f7 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -404,25 +404,6 @@ class ApplicationController < ActionController::Base end end - # 处理返回非0就报错的请求 - def interface_post(uri, params, status, message) - begin - uid_logger_dubug("--uri_exec: params is #{params}, url is #{uri}") - uri = URI.parse(URI.encode(uri.strip)) - res = Net::HTTP.post_form(uri, params).body - uid_logger_dubug("--uri_exec: .....res is #{res}") - res = JSON.parse(res) - if (res && res['code'] != 0) - tip_exception(status, message) - else - res - end - rescue Exception => e - uid_logger("--uri_exec: exception #{e.message}") - raise Educoder::TipException.new("实训平台繁忙(繁忙等级:84)") - end - end - # json格式请求 def interface_json_post(uri, params, status, message) begin diff --git a/app/controllers/hack_user_lastest_codes_controller.rb b/app/controllers/hack_user_lastest_codes_controller.rb index 2d749ce75..d03b9bd7d 100644 --- a/app/controllers/hack_user_lastest_codes_controller.rb +++ b/app/controllers/hack_user_lastest_codes_controller.rb @@ -1,9 +1,9 @@ class HackUserLastestCodesController < ApplicationController before_action :require_login, except: [:listen_result] before_action :find_my_hack, only: [:show, :code_debug, :code_submit, :update_code, - :listen_result, :result, :submit_records] + :listen_result, :result, :submit_records, :restore_initial_code] before_action :update_user_hack_status, only: [:code_debug, :code_submit] - before_action :require_auth_identity, only: [:update_code] + before_action :require_auth_identity, only: [:update_code, :restore_initial_code] before_action :require_manager_identity, only: [:update_code] def show @@ -14,6 +14,11 @@ class HackUserLastestCodesController < ApplicationController @my_hack.update_attribute(:code, params[:code]) end + # 回复初始代码 + def restore_initial_code + @my_hack.update_attribute(:code, @hack.code) + end + # 调试代码 def code_debug exec_mode = "debug" diff --git a/app/views/hack_user_lastest_codes/restore_initial_code.json.jbuilder b/app/views/hack_user_lastest_codes/restore_initial_code.json.jbuilder new file mode 100644 index 000000000..3b272f298 --- /dev/null +++ b/app/views/hack_user_lastest_codes/restore_initial_code.json.jbuilder @@ -0,0 +1 @@ +json.code @hack.code \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 4d277cd54..577428c7a 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -42,7 +42,6 @@ Rails.application.routes.draw do member do post :publish get :start - get :result post :update_set delete :delete_set end @@ -57,7 +56,9 @@ Rails.application.routes.draw do get :code_debug get :code_submit match :listen_result, :via => [:get, :post] + get :result get :submit_records + post :restore_initial_code end collection do