AI问数二期
This commit is contained in:
@@ -4,10 +4,20 @@ import { useAccessStore } from '@vben/stores';
|
||||
import { pyRequestClient } from '#/api/request';
|
||||
|
||||
export interface CubeReportScope {
|
||||
canGlobal: boolean;
|
||||
canRefreshMetadata: boolean;
|
||||
companies: Array<{ id: string; name: string }>;
|
||||
}
|
||||
|
||||
export interface CubeReportMetaStatus {
|
||||
available: boolean;
|
||||
changed?: boolean;
|
||||
cubeCount: number;
|
||||
memberCount: number;
|
||||
refreshedAt: null | string;
|
||||
refreshing: boolean;
|
||||
stale: boolean;
|
||||
}
|
||||
|
||||
export interface CubeReportAppParameters {
|
||||
fileUpload: Record<string, unknown>;
|
||||
openingStatement: string;
|
||||
@@ -18,16 +28,43 @@ export interface CubeReportAppParameters {
|
||||
}
|
||||
|
||||
export interface CubeReportSession {
|
||||
allowGlobal: boolean;
|
||||
createdAt: null | string;
|
||||
hasData?: boolean;
|
||||
id: string;
|
||||
tenantId: null | string;
|
||||
reportId?: null | string;
|
||||
tenantId: string;
|
||||
tenantName: string;
|
||||
title: string;
|
||||
updatedAt: null | string;
|
||||
}
|
||||
|
||||
export interface CubeReportSessionPage {
|
||||
hasMore: boolean;
|
||||
items: CubeReportSession[];
|
||||
nextCursor: null | string;
|
||||
}
|
||||
|
||||
export interface CubeSavedReport {
|
||||
conversationId: string;
|
||||
createdAt: null | string;
|
||||
id: string;
|
||||
limitSource: 'system' | 'user';
|
||||
message: string;
|
||||
query: Record<string, unknown>;
|
||||
requirement: string;
|
||||
tenantId: string;
|
||||
tenantName: string;
|
||||
title: string;
|
||||
updatedAt: null | string;
|
||||
}
|
||||
|
||||
export interface CubeSavedReportPage {
|
||||
items: CubeSavedReport[];
|
||||
page: number;
|
||||
pageSize: number;
|
||||
total: number;
|
||||
}
|
||||
|
||||
export interface CubeReportFile {
|
||||
belongsTo?: 'assistant' | 'user';
|
||||
id: string;
|
||||
@@ -83,7 +120,6 @@ export type CubeReportStreamEvent =
|
||||
| { text: string; type: 'status' };
|
||||
|
||||
export interface SendCubeReportMessage {
|
||||
allowGlobal: boolean;
|
||||
content: string;
|
||||
conversationId?: null | string;
|
||||
files: CubeReportFile[];
|
||||
@@ -116,14 +152,49 @@ export async function getCubeReportScope() {
|
||||
return pyRequestClient.get<CubeReportScope>('/llm/cube-report/scope');
|
||||
}
|
||||
|
||||
export async function getCubeReportMetaStatus() {
|
||||
return pyRequestClient.get<CubeReportMetaStatus>(
|
||||
'/llm/cube-report/meta/status',
|
||||
);
|
||||
}
|
||||
|
||||
export async function refreshCubeReportMeta() {
|
||||
return pyRequestClient.post<CubeReportMetaStatus>(
|
||||
'/llm/cube-report/meta/refresh',
|
||||
);
|
||||
}
|
||||
|
||||
export async function getCubeReportAppParameters() {
|
||||
return pyRequestClient.get<CubeReportAppParameters>(
|
||||
'/llm/cube-report/app-parameters',
|
||||
);
|
||||
}
|
||||
|
||||
export async function getCubeReportSessions() {
|
||||
return pyRequestClient.get<CubeReportSession[]>('/llm/cube-report/sessions');
|
||||
export async function getCubeReportSessions(params: {
|
||||
cursor?: string;
|
||||
keyword?: string;
|
||||
pageSize?: number;
|
||||
tenantId: string;
|
||||
}) {
|
||||
return pyRequestClient.get<CubeReportSessionPage>(
|
||||
'/llm/cube-report/sessions',
|
||||
{ params },
|
||||
);
|
||||
}
|
||||
|
||||
export async function getCubeReports(params: {
|
||||
keyword?: string;
|
||||
page: number;
|
||||
pageSize: number;
|
||||
tenantId: string;
|
||||
}) {
|
||||
return pyRequestClient.get<CubeSavedReportPage>('/llm/cube-report/reports', {
|
||||
params,
|
||||
});
|
||||
}
|
||||
|
||||
export async function getCubeReport(id: string) {
|
||||
return pyRequestClient.get<CubeSavedReport>(`/llm/cube-report/reports/${id}`);
|
||||
}
|
||||
|
||||
export async function getCubeReportSession(id: string) {
|
||||
@@ -133,22 +204,41 @@ export async function getCubeReportSession(id: string) {
|
||||
}>(`/llm/cube-report/sessions/${id}`);
|
||||
}
|
||||
|
||||
export async function getCubeReportData(
|
||||
id: string,
|
||||
params: { page: number; pageSize: number },
|
||||
) {
|
||||
export async function getCubeReportData(id: string, params: { page: number }) {
|
||||
return pyRequestClient.get<CubeReportPage>(
|
||||
`/llm/cube-report/sessions/${id}/data`,
|
||||
{ params },
|
||||
);
|
||||
}
|
||||
|
||||
export async function getCubeSavedReportData(
|
||||
id: string,
|
||||
params: { page: number },
|
||||
) {
|
||||
return pyRequestClient.get<CubeReportPage>(
|
||||
`/llm/cube-report/reports/${id}/data`,
|
||||
{ params },
|
||||
);
|
||||
}
|
||||
|
||||
export async function exportCubeReportSession(id: string) {
|
||||
return pyRequestClient.post<CubeReportExportResult>(
|
||||
`/llm/cube-report/sessions/${id}/export`,
|
||||
);
|
||||
}
|
||||
|
||||
export async function exportCubeSavedReport(id: string) {
|
||||
return pyRequestClient.post<CubeReportExportResult>(
|
||||
`/llm/cube-report/reports/${id}/export`,
|
||||
);
|
||||
}
|
||||
|
||||
export async function favoriteCubeReportSession(id: string) {
|
||||
return pyRequestClient.post<CubeSavedReport>(
|
||||
`/llm/cube-report/sessions/${id}/favorite`,
|
||||
);
|
||||
}
|
||||
|
||||
export async function renameCubeReportSession(id: string, name: string) {
|
||||
return pyRequestClient.post<CubeReportSession>(
|
||||
`/llm/cube-report/sessions/${id}/name`,
|
||||
@@ -162,6 +252,19 @@ export async function deleteCubeReportSession(id: string) {
|
||||
);
|
||||
}
|
||||
|
||||
export async function renameCubeSavedReport(id: string, name: string) {
|
||||
return pyRequestClient.post<CubeSavedReport>(
|
||||
`/llm/cube-report/reports/${id}/name`,
|
||||
{ name },
|
||||
);
|
||||
}
|
||||
|
||||
export async function deleteCubeSavedReport(id: string) {
|
||||
return pyRequestClient.delete<{ result: string }>(
|
||||
`/llm/cube-report/reports/${id}`,
|
||||
);
|
||||
}
|
||||
|
||||
export async function stopCubeReportTask(taskId: string) {
|
||||
return pyRequestClient.post<{ result: string }>(
|
||||
`/llm/cube-report/tasks/${taskId}/stop`,
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user