gitlink-forgeplus/app/controllers/trace/projects_controller.rb

60 lines
1.8 KiB
Ruby

class Trace::ProjectsController < Trace::BaseController
before_action :require_login
before_action :load_project
def tasks
branch_name = params[:branch_name]
[code, data, error] = Trace::CheckService.call(current_user.trace_token, @project, "1", branch_name)
if code == 200
render_ok
else
render_error(-1, "检测失败 Error:#{error}")
end
rescue Exception => exception
puts exception.message
normal_status(-1, exception.message)
end
def task_results
limit = params[:limit] || params[:per_page]
limit = (limit.to_i.zero? || limit.to_i > 15) ? 15 : limit.to_i
page = params[:page].to_i.zero? ? 1 : params[:page].to_i
[code, data, error] = Trace::CheckResultService.call(current_user.trace_token, @project, nil, page, limit)
if code == 200
render :json => {data: data}
else
render_error(-1, "获取检测记录失败 Error:#{error}")
end
rescue Exception => exception
puts exception.message
normal_status(-1, exception.message)
end
def reload_task
render_error(-1, "project_id错误") if params[:project_id].blank?
[code, data, error] = Trace::ReloadCheckService.call(current_user.trace_token, params[:project_id])
if code == 200
render_ok
else
render_error(-1, "重新检测失败 Error:#{error}")
end
rescue Exception => exception
puts exception.message
normal_status(-1, exception.message)
end
def task_pdf
render_error(-1, "task_id错误") if params[:task_id].blank?
[code, data, error] = Trace::PdfReportService.call(current_user.trace_token, params[:task_id])
if code == 200
render_ok
else
render_error(-1, "下载报告失败 Error:#{error}")
end
rescue Exception => exception
puts exception.message
normal_status(-1, exception.message)
end
end