Merge pull request 'update sca' (#420) from KingChan/forgeplus:sca_service into dev_osredm_server

This commit is contained in:
KingChan 2025-09-25 11:46:34 +08:00
commit 6e35e6776e
5 changed files with 52 additions and 0 deletions

View File

@ -49,6 +49,21 @@ class Api::V1::Projects::ScaController < Api::V1::BaseController
render :index
end
def dependency_tree
@result = Api::V1::Projects::Sca::DependencyTreeService.call(params[:scan_id])
render :index
end
def scan_issues
@result = Api::V1::Projects::Sca::ScanIssuesService.call(params[:scan_id],params[:scan_library_id], params[:page], params[:limit])
render :index
end
def scan_library
@result = Api::V1::Projects::Sca::ScanLibraryService.call(params[:scan_id],params[:scan_library_id])
render :index
end
private
def set_sca_cookie
cookies[:access_token] = {

View File

@ -0,0 +1,10 @@
class Api::V1::Projects::Sca::DependencyTreeService < Api::V1::Projects::Sca::BaseService
def initialize(scan_id)
@scan_id = scan_id
end
def call
sca_get_request("scans/#{@scan_id}/scan_library_version/dependency_tree/")
end
end

View File

@ -0,0 +1,13 @@
class Api::V1::Projects::Sca::ScanIssuesService < Api::V1::Projects::Sca::BaseService
def initialize(scan_id,library_id,page,limit)
@scan_id = scan_id
@library_id = library_id
@page = page
@limit = limit
end
def call
sca_get_request("scans/#{@scan_id}/scan_library_version/#{@library_id}/issues/?page=#{@page}&limit=#{@limit}")
end
end

View File

@ -0,0 +1,11 @@
class Api::V1::Projects::Sca::ScanLibraryService < Api::V1::Projects::Sca::BaseService
def initialize(scan_id,library_id)
@scan_id = scan_id
@library_id = library_id
end
def call
sca_get_request("scans/#{@scan_id}/scan_library_version/#{@library_id}/")
end
end

View File

@ -231,6 +231,9 @@ defaults format: :json do
post :reports
get :report_list
get :report_export
get :dependency_tree
get :scan_library
get :scan_issues
end
end
resources :pipelines do