feat: 新增数据库
This commit is contained in:
@@ -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;
|
||||
};
|
||||
Reference in New Issue
Block a user