/** * 数据备份API接口 * Requirements: 11.1, 11.2, 11.3 */ import request from '@/utils/request' import type { PagedResult } from '@/types/api.d' import type { BackupListItem, BackupDetail, BackupQueryParams, BackupStatistics } from '@/types/backup.d' /** * 获取备份记录列表 * @param params 查询参数 * @returns 分页备份记录列表 */ export function getBackupList(params: BackupQueryParams): Promise> { return request.get('/admin/backups', { params }) } /** * 获取备份记录详情 * @param id 备份ID * @returns 备份详情 */ export function getBackupDetail(id: number): Promise { return request.get(`/admin/backups/${id}`) } /** * 执行手动备份 * @returns 备份记录 */ export function executeManualBackup(): Promise { return request.post('/admin/backups') } /** * 恢复数据 * @param id 备份ID * @returns 操作结果 */ export function restoreData(id: number): Promise { return request.post(`/admin/backups/${id}/restore`) } /** * 删除备份记录 * @param id 备份ID * @returns 操作结果 */ export function deleteBackup(id: number): Promise { return request.delete(`/admin/backups/${id}`) } /** * 获取备份统计信息 * @returns 统计信息 */ export function getBackupStatistics(): Promise { return request.get('/admin/backups/statistics') } /** * 清理过期备份 * @returns 清理数量 */ export function cleanupExpiredBackups(): Promise { return request.post('/admin/backups/cleanup') }