Files
Situation-Awareness-Platfor…/src/api/jyh/index.ts
2025-03-26 17:52:03 +08:00

266 lines
5.2 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { reqCatchV2, type catchRt } from '@/utils/catch';
import request from '@/utils/request';
import * as types from '@/api/repo/types';
// 详情-获取版本信息
export function releaseInfo(params: { softwareId: string }): Promise<any> {
const { softwareId } = params;
return request({
url: `/api/v1/repo/release/info?softwareId=${softwareId}`,
method: 'get'
});
}
// 详情-搜索结果列表
export function releasePage(data): Promise<any> {
return request({
url: `/api/v1/repo/release/page`,
method: 'post',
data
});
}
// 获取邀请列表
export function getInviteListData(): catchRt<any> {
return reqCatchV2(() =>
request(
{
url: '/api/v1/group/member/invite/list',
method: 'get'
},
{
customError: true
}
)
);
}
// 处理邀请
export function acceptInvite(params): catchRt<any> {
return reqCatchV2(() =>
request(
{
url: '/api/v1/group/member/invite/accept',
method: 'post',
data: params
},
{
customError: true
}
)
);
}
// 发送订阅
export function subscribeSoftware(params): catchRt<any> {
return reqCatchV2(() =>
request(
{
url: '/api/v1/alert/subscribe',
method: 'post',
data: params
},
{
customError: true
}
)
);
}
// 获取高级筛选语言列表
export function searchLanguageList() {
return request({
url: `/api/v1/repo/lan/list`,
method: 'get'
});
}
// 获取首页公告列表
export function getHomeNoticeList() {
return request({
url: '/api/v1/home/notice/list',
method: 'get',
params: {}
});
}
// 获取依赖关系列表
export function getDepencyList(softwareId: string) {
return request({
url: '/api/v1/repo/dependency/info',
method: 'POST',
data: {
softwareId: 47,
current: 1,
size: 20
}
});
}
// 获取AI修复建议
export function getRepairInfo(data) {
return request({
url: '/api/v1/repo/repair/info',
method: 'POST',
data
});
}
// 可信软件详情-AI 修复建议接口
export const remediationSearchRemediations = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: '/api/v1/repo/repair/info',
method: 'POST',
data
})
);
};
// 获取许可证列表
export function getLicenseList(data) {
return request({
url: '/api/v1/repo/license/info',
method: 'POST',
data
});
}
// 获取详情漏洞列表
export function getVulnerabilityList() {
return request({
url: '/api/v1/repo/vulnerability/page',
method: 'GET',
params: {
current: 1,
size: 10,
softwareId: 47
}
});
}
// 获取漏洞数据
export const getVulnList = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/repo/vulnerability/page`,
method: 'post',
data
})
);
};
// 获取SBOM依赖树
export const dependencyTree = (data: any): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/repo/dependency/tree`,
method: 'POST',
data
})
);
};
// 获取开发者社区信息
export const communityInfo = (softwareId: any): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/repo/community/info`,
method: 'POST',
data: {
softwareId
}
})
);
};
// 编辑用户信息(包含订阅默认预警方式)
export const userEdit = (data: any): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/user/edit`,
method: 'POST',
data
})
);
};
// 获取漏洞数据
export const getVulnDetail = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/repo/vulnerability/info`,
method: 'POST',
data
})
);
};
// 迁移批量导入
export function repoImport(data: types.commonRepoReqType) {
return reqCatchV2(() =>
request({
url: `/api/v1/home/software/valid`,
method: 'post',
data,
headers: {
'Content-Type': 'multipart/form-data' // 设置请求头
}
})
);
}
// 个人中心-获取预警列表
export const getNoticeList = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/alert/notice/list`,
method: 'POST',
data
})
);
};
// 个人中心-获取组织级预警列表
export const getgroupNoticeList = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/alert/group/notice/list`,
method: 'POST',
data
})
);
};
// 个人中心-获取订阅列表
export const getSubscribeList = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/alert/subscribe/list`,
method: 'POST',
data,
})
);
}
// 个人中心-获取组织级订阅列表
export const getGroupSubscribeList = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/alert/group/subscribe/list`,
method: 'POST',
data,
})
);
}
// 搜索结果导出接口
export const getReleaseExport = (data): Promise<any> => {
return reqCatchV2(() =>
request({
url: `/api/v1/repo/release/export`,
method: 'POST',
data,
responseType: 'blob' // 关键告诉axios这是二进制数据
})
);
}