feat: 转存记录记录文件大小, 详情展示使用账号+文件大小+时间格式
- quark/baidu 驱动 saveFromShare 返回 fileSize 总大小 - cloud.service.ts 写入 file_size 字段(非null时转字符串) - 详情页新增文件大小展示(formatFileSize 自动格式化) - 详情页时间改为 formatTime(yyyy-MM-dd HH:mm:ss) - SaveRecords 时间格式: 05-15 → 2026-05-15
This commit is contained in:
@@ -155,7 +155,7 @@ async function doSaveFromShare(shareUrl: string, cloudType: string, sourceTitle?
|
||||
const startTime = Date.now();
|
||||
|
||||
try {
|
||||
let driverResult: { success: boolean; message: string; shareUrl?: string; sharePwd?: string; folderName?: string; fileCount?: number; folderCount?: number; originalFolderName?: string };
|
||||
let driverResult: { success: boolean; message: string; shareUrl?: string; sharePwd?: string; folderName?: string; fileCount?: number; folderCount?: number; fileSize?: number; originalFolderName?: string };
|
||||
|
||||
switch (cloudType) {
|
||||
case 'quark': {
|
||||
@@ -194,7 +194,7 @@ async function doSaveFromShare(shareUrl: string, cloudType: string, sourceTitle?
|
||||
).run(
|
||||
cloudType, sourceTitle || driverResult.folderName || null, shareUrl, cloudType,
|
||||
driverResult.shareUrl || null, driverResult.sharePwd || null,
|
||||
null, driverResult.fileCount || 0, driverResult.folderCount || 0,
|
||||
driverResult.fileSize == null ? null : String(driverResult.fileSize), driverResult.fileCount || 0, driverResult.folderCount || 0,
|
||||
durationMs, driverResult.success ? 'success' : 'failed',
|
||||
driverResult.success ? null : driverResult.message,
|
||||
driverResult.folderName || null, driverResult.originalFolderName || null,
|
||||
|
||||
@@ -28,6 +28,7 @@ export async function saveFromShare(
|
||||
renamed?: string[];
|
||||
fileCount?: number;
|
||||
folderCount?: number;
|
||||
fileSize?: number;
|
||||
originalFolderName?: string;
|
||||
}> {
|
||||
try {
|
||||
@@ -203,6 +204,10 @@ export async function saveFromShare(
|
||||
}
|
||||
}
|
||||
|
||||
// Calculate total file size
|
||||
const allFiles = topDir && childFiles ? childFiles : topFiles;
|
||||
const fileSize = allFiles.reduce((sum, f) => sum + (Number(f.size) || 0), 0);
|
||||
|
||||
const renameMsg = renamed.length > 0
|
||||
? `,已重命名 ${renamed.length} 个文件`
|
||||
: '';
|
||||
@@ -218,6 +223,7 @@ export async function saveFromShare(
|
||||
renamed: renamed.map(r => `${r.original} → ${r.renamed}`),
|
||||
fileCount,
|
||||
folderCount,
|
||||
fileSize,
|
||||
originalFolderName,
|
||||
};
|
||||
} catch (err: any) {
|
||||
|
||||
@@ -150,7 +150,7 @@
|
||||
</div>
|
||||
<div class="detail-cell">
|
||||
<span class="detail-label">时间</span>
|
||||
<code class="detail-code">{{ row.created_at }}</code>
|
||||
<code class="detail-code">{{ formatTime(row.created_at) }}</code>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Row 5: 错误信息(整行) -->
|
||||
@@ -333,7 +333,7 @@ function formatTime(t: string): string {
|
||||
const d = new Date(ts)
|
||||
if (isNaN(d.getTime())) return t
|
||||
const pad = (n: number) => String(n).padStart(2, '0')
|
||||
return `${pad(d.getMonth() + 1)}-${pad(d.getDate())} ${pad(d.getHours())}:${pad(d.getMinutes())}:${pad(d.getSeconds())}`
|
||||
return `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())} ${pad(d.getHours())}:${pad(d.getMinutes())}:${pad(d.getSeconds())}`
|
||||
}
|
||||
|
||||
function formatDuration(ms: number): string {
|
||||
|
||||
Reference in New Issue
Block a user