Files
doodle-mini/miniprogram/utils/downloadLogs.ts
T
2026-05-06 18:32:15 +08:00

57 lines
1.4 KiB
TypeScript

import { getUser } from './auth';
export interface DownloadLogRecord {
_id: string;
userId: string;
worksheetId: string;
createdAt: string;
worksheet?: {
_id: string;
title: string;
subtitle: string;
category: string;
subcategory: string;
previewImg: string;
} | null;
}
/**
* 记录下载日志
*/
export async function addDownloadLog(worksheetId: string): Promise<boolean> {
if (!worksheetId) return false;
try {
await getUser();
const res = await wx.cloud.callFunction({
name: 'userDownloadLogs',
data: { action: 'add', worksheetId },
});
const result = (res?.result as any) || {};
return result.code === 0;
} catch (e) {
console.error('addDownloadLog failed', e);
return false;
}
}
/**
* 获取下载历史
*/
export async function getDownloadLogs(
page = 1,
pageSize = 20,
): Promise<DownloadLogRecord[]> {
try {
await getUser();
const res = await wx.cloud.callFunction({
name: 'userDownloadLogs',
data: { action: 'list', page, pageSize },
});
const result = (res?.result as any) || {};
return result.code === 0 ? result.data : [];
} catch (e) {
console.error('getDownloadLogs failed', e);
return [];
}
}