fix: import legacy projects without wrapper folder

This commit is contained in:
2026-07-13 15:27:57 +08:00
parent 07aa10ef27
commit 4f8df12fb0
2 changed files with 34 additions and 5 deletions
+2 -3
View File
@@ -81,7 +81,7 @@ export async function importLegacyProjects(input: {
sourceRelativePath: entry.sourceRelativePath,
};
await writeState(input.stateFile, { version: 1, projects });
const folderId = await ensureFolderPath(input.prisma, input.organizationId, ["旧教学资产", ...entry.folderPath]);
const folderId = await ensureFolderPath(input.prisma, input.organizationId, entry.folderPath);
input.onProgress?.(`import ${entry.legacyId}: ${entry.name}`);
const created = await createProjectFromOrgAdmin(input.prisma, {
organizationId: input.organizationId,
@@ -123,7 +123,7 @@ async function ensureFolderPath(
prisma: PrismaClient,
organizationId: string,
parts: readonly string[],
): Promise<string> {
): Promise<string | undefined> {
let parentId: string | undefined;
for (const name of parts) {
const existing = await prisma.folder.findFirst({
@@ -141,7 +141,6 @@ async function ensureFolderPath(
});
parentId = created.id;
}
if (parentId === undefined) throw new Error("legacy import folder path is empty");
return parentId;
}