import http from '@/api' import type { Dbms } from '@/api/system/dbms/interface' export const getDbmsOverview = () => { return http.get('/database/overview', {}, { loading: false }) } export const getDbmsConnectionList = (params: Dbms.ConnectionListParams) => { return http.post('/database/connections/list', params, { loading: false }) } export const addDbmsConnection = (params: Dbms.ConnectionPayload) => { return http.post('/database/connections/add', params) } export const updateDbmsConnection = (params: Dbms.ConnectionPayload) => { return http.post('/database/connections/update', params) } export const deleteDbmsConnection = (params: Dbms.DeleteConnectionParams) => { return http.post('/database/connections/delete', params) } export const testDbmsConnection = (params: Dbms.TestConnectionParams) => { return http.post('/database/connections/test', params) } export const getDbmsTableList = (params: Dbms.TableListParams) => { return http.post('/database/connections/tables', params) } export const createDbmsBackupTask = (params: Dbms.CreateBackupParams) => { return http.post('/database/backups/create', params) } export const getDbmsBackupTaskList = (params: Dbms.TaskListParams) => { return http.post('/database/backups/tasks/list', params, { loading: false }) } export const getDbmsBackupTaskStatus = (taskId: string) => { return http.get('/database/backups/tasks/status', { taskId }, { loading: false }) } export const getDbmsBackupFileList = (params: Dbms.FileListParams) => { return http.post('/database/backups/files/list', params, { loading: false }) } export const createDbmsRestoreTask = (params: Dbms.CreateRestoreParams) => { return http.post('/database/restores/create', params) } export const getDbmsRestoreTaskStatus = (taskId: string) => { return http.get('/database/restores/tasks/status', { taskId }, { loading: false }) } export const deleteDbmsBackupFile = (params: Dbms.DeleteBackupFileParams) => { return http.post('/database/delete/backup-file', params) } export const deleteDbmsTask = (params: Dbms.DeleteTaskParams) => { return http.post('/database/delete/task', params) }