feat: 3.5版本规划

This commit is contained in:
R524809
2026-09-24 17:14:38 +08:00
parent f82ac4d89d
commit 08d9a2792a
19 changed files with 769 additions and 45 deletions
+20 -9
View File
@@ -6,6 +6,7 @@
import { checkAndSaveImage } from './saveImage';
import tracker from './tracker';
import { addDownloadLog } from './downloadLogs';
import { generateUUID } from './uuid';
import {
getUnlockMethod,
isDownloadLimitEnabled,
@@ -131,23 +132,32 @@ function doDownload(
errorToast?: string;
trackerName?: string;
trackerMode?: string;
trackerPage?: string;
worksheetId?: string;
},
): Promise<boolean> {
if (options.trackerName) {
if (options.trackerMode) {
tracker.reportDownload(options.trackerName, options.trackerMode);
} else {
tracker.reportDownload(options.trackerName);
}
}
const exportId = generateUUID();
const trackerPage = options.trackerPage || options.trackerName || '';
const trackerParams = {
export_id: exportId,
...(options.worksheetId && { worksheet_id: options.worksheetId }),
...(options.trackerName && { worksheet_title: options.trackerName }),
...(options.trackerMode && { mode: options.trackerMode }),
};
return checkAndSaveImage(canvas).then((saved) => {
// 用户点击保存不等于保存成功,二者必须分开统计。
tracker.reportExportClick(trackerPage, trackerParams);
return checkAndSaveImage(canvas).then(async (saved) => {
if (saved) {
// 只在 wx.saveImageToPhotosAlbum 的 success 回调后进入此分支。
recordDownloadSuccess();
tracker.reportExportResult(trackerPage, true, trackerParams);
if (options.worksheetId) {
addDownloadLog(options.worksheetId);
await addDownloadLog(options.worksheetId, exportId);
}
} else {
tracker.reportExportResult(trackerPage, false, trackerParams);
}
return saved;
});
@@ -163,6 +173,7 @@ export async function downloadPrint(
errorToast?: string;
trackerName?: string;
trackerMode?: string;
trackerPage?: string;
worksheetId?: string;
} = {},
): Promise<boolean> {