From 170d42921b55b466801b7725dcfb986adbfa7db3 Mon Sep 17 00:00:00 2001 From: shenjianbin <997186306@qq.com> Date: Sat, 15 Mar 2025 13:18:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=BC=8F=E6=B4=9E=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/repo/index.ts | 11 + src/api/repo/types.ts | 5 + .../Version/Detail/VulnerabilitiesList.vue | 17 +- .../Version/Detail/VulnerabilityDetail.vue | 204 ++++++++++++++++++ 4 files changed, 235 insertions(+), 2 deletions(-) create mode 100644 src/views/Jyh/Version/Detail/VulnerabilityDetail.vue diff --git a/src/api/repo/index.ts b/src/api/repo/index.ts index 7c9f060..3ba175c 100644 --- a/src/api/repo/index.ts +++ b/src/api/repo/index.ts @@ -1542,3 +1542,14 @@ export const getOriginalComment = (params: types.DiscussionCommentProps): Promis }) ); } + +// 获取漏洞数据 +export const getVulnDetail = (params: types.VulnDetailProps): Promise => { + return reqCatch(() => + request({ + url: `/api/v1/repo/vulnerability/info`, + method: 'get', + params, + }) + ); +} diff --git a/src/api/repo/types.ts b/src/api/repo/types.ts index afc8aeb..c3b50a3 100644 --- a/src/api/repo/types.ts +++ b/src/api/repo/types.ts @@ -207,3 +207,8 @@ export interface DiscussionCommentProps { discussionId: string | number, } +export interface VulnDetailProps { + repoId: string, + id: string, +} + diff --git a/src/views/Jyh/Version/Detail/VulnerabilitiesList.vue b/src/views/Jyh/Version/Detail/VulnerabilitiesList.vue index 13414f5..09d5a08 100644 --- a/src/views/Jyh/Version/Detail/VulnerabilitiesList.vue +++ b/src/views/Jyh/Version/Detail/VulnerabilitiesList.vue @@ -11,7 +11,7 @@ @filter-change="handleFilterChange" > 你确认删除此项:{{ item.cla_name }} ? + + + + + @@ -110,9 +115,10 @@ import { ref, reactive } from 'vue'; import { getGroupClaList, setGroupClaStatus, deleteGroupCla } from '@/api/cla'; import { useRouter, useRoute } from 'vue-router'; import { GModal } from '@/components/Setting/index'; -import { reqCatch } from '@/utils/catch'; +import { reqCatch } from '@/utils/catch'; import { getOrgInfo } from '@/views/Org/hooks/orgInfo'; import { Message } from 'vue-devui'; +import VulnerabilityDetail from '@/views/Jyh/Version/Detail/VulnerabilityDetail.vue' const { namespace } = getOrgInfo(); const tableData = ref([ @@ -233,6 +239,13 @@ const setClaStatus = async (row: any) => { const signCla = (row: any) => { router.push('/cla/' + row.object_id); }; + +const vulnDetailVisable = ref(false); +const currentVuln = ref(); +const openVulnDetail = (row) => { + vulnDetailVisable.value = true; + currentVuln.value = row; +} \ No newline at end of file