feat: 新增数据库

This commit is contained in:
2026-04-25 21:52:18 +08:00
parent 223845b0ed
commit abd1b03529
23 changed files with 1890 additions and 97 deletions
+52
View File
@@ -0,0 +1,52 @@
import type { IImageHistoryListData } from "#shared/types/openai";
import {
clearNewApiAuthCookies,
getNewApiUserIdFromCookie,
isUnauthorizedError,
listImageGenerationHistory
} from "~~/server/utils";
const DEFAULT_PAGE = 1;
const DEFAULT_PAGE_SIZE = 10;
const MAX_PAGE_SIZE = 50;
export default defineEventHandler(async (event) => {
try {
const userId = getNewApiUserIdFromCookie(event);
const query = getQuery(event);
const page = normalizePositiveInt(query.page, DEFAULT_PAGE);
const pageSize = Math.min(
normalizePositiveInt(query.size, DEFAULT_PAGE_SIZE),
MAX_PAGE_SIZE
);
const result = await listImageGenerationHistory({
userId,
page,
pageSize
});
return createSuccessResponse<IImageHistoryListData>(
result,
"获取生图历史成功"
);
} catch (error) {
if (isUnauthorizedError(error)) {
clearNewApiAuthCookies(event);
return createErrorResponse(401, "未登录");
}
return createUpstreamErrorResponse(error, "获取生图历史失败");
}
});
const normalizePositiveInt = (
value: unknown,
fallbackValue: number
): number => {
const rawValue = Array.isArray(value) ? value[0] : value;
const numberValue = Number.parseInt(String(rawValue ?? ""), 10);
return Number.isInteger(numberValue) && numberValue > 0
? numberValue
: fallbackValue;
};