From 39d3a631f06d6712dcfbaff8904859291ba87219 Mon Sep 17 00:00:00 2001 From: zhishi <1951671751@qq.com> Date: Thu, 2 Apr 2026 23:49:05 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=8E=BB=E9=99=A4=20oss=E5=89=8D=E7=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/routes/production/assets/updateAssetsUrl.ts | 2 +- src/routes/production/editImage/updateImageFlow.ts | 5 +++-- src/routes/production/storyboard/addStoryboard.ts | 2 +- .../production/storyboard/updateStoryboardUrl.ts | 2 +- src/utils.ts | 2 ++ src/utils/replaceUrl.ts | 12 ++++++++++++ 6 files changed, 20 insertions(+), 5 deletions(-) create mode 100644 src/utils/replaceUrl.ts diff --git a/src/routes/production/assets/updateAssetsUrl.ts b/src/routes/production/assets/updateAssetsUrl.ts index 6317e83..906165a 100644 --- a/src/routes/production/assets/updateAssetsUrl.ts +++ b/src/routes/production/assets/updateAssetsUrl.ts @@ -16,7 +16,7 @@ export default router.post( async (req, res) => { const { id, url, flowId } = req.body; const [imageId] = await u.db("o_image").insert({ - filePath: new URL(url).pathname, + filePath: u.replaceUrl(url), state: "已完成", assetsId: id, }); diff --git a/src/routes/production/editImage/updateImageFlow.ts b/src/routes/production/editImage/updateImageFlow.ts index f22ce67..945be6f 100644 --- a/src/routes/production/editImage/updateImageFlow.ts +++ b/src/routes/production/editImage/updateImageFlow.ts @@ -19,10 +19,11 @@ export default router.post( const { edges, nodes, flowId } = req.body; nodes.forEach((node: any) => { if (node.type == "upload") { - node.data.image = node.data.image ? new URL(node.data.image).pathname : ""; + node.data.image = node.data.image ? u.replaceUrl(node.data.image) : ""; } + if (node.type == "generated") { - node.data.generatedImage = node.data.generatedImage ? new URL(node.data.generatedImage).pathname : ""; + node.data.generatedImage = node.data.generatedImage ? u.replaceUrl(node.data.generatedImage) : ""; } }); // let imagePath = ""; diff --git a/src/routes/production/storyboard/addStoryboard.ts b/src/routes/production/storyboard/addStoryboard.ts index 54aebf1..64ecdae 100644 --- a/src/routes/production/storyboard/addStoryboard.ts +++ b/src/routes/production/storyboard/addStoryboard.ts @@ -35,7 +35,7 @@ export default router.post( prompt, duration, state, - filePath: new URL(src).pathname, + filePath: u.replaceUrl(src), trackId, videoDesc, shouldGenerateImage: src ? 1 : 0, diff --git a/src/routes/production/storyboard/updateStoryboardUrl.ts b/src/routes/production/storyboard/updateStoryboardUrl.ts index 708f43f..d8c195f 100644 --- a/src/routes/production/storyboard/updateStoryboardUrl.ts +++ b/src/routes/production/storyboard/updateStoryboardUrl.ts @@ -19,7 +19,7 @@ export default router.post( .db("o_storyboard") .where({ id }) .update({ - filePath: new URL(url).pathname, + filePath: u.replaceUrl(url), flowId, state: "已完成", shouldGenerateImage:url ? 1 : 0 diff --git a/src/utils.ts b/src/utils.ts index c7a584d..83cc36c 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -10,6 +10,7 @@ import task from "@/utils/taskRecord"; import Ai from "@/utils/ai"; import { getPrompts } from "@/utils/getPrompts"; import { getArtPrompt } from "@/utils/getArtPrompt"; +import replaceUrl from "@/utils/replaceUrl"; export default { db, @@ -24,4 +25,5 @@ export default { task, getPrompts, getArtPrompt, + replaceUrl }; diff --git a/src/utils/replaceUrl.ts b/src/utils/replaceUrl.ts new file mode 100644 index 0000000..bcdfec8 --- /dev/null +++ b/src/utils/replaceUrl.ts @@ -0,0 +1,12 @@ +export default function replaceUrl(url: string): string { + if (typeof url !== 'string' || !url.trim()) return ''; + let cleanedPath = ''; + try { + const pathname = new URL(url).pathname; + cleanedPath = pathname.replace(/^\/oss/, ''); + } catch (e) { + // 如果不是有效的URL,则直接返回原字符串 + cleanedPath = url; + } + return cleanedPath; +} From d7a220a8e4fc354b1cf9259417589fa7c892ea6c Mon Sep 17 00:00:00 2001 From: zhishi <1951671751@qq.com> Date: Fri, 3 Apr 2026 00:19:57 +0800 Subject: [PATCH 2/2] no message --- .../production/editImage/saveImageFlow.ts | 8 +++ .../production/editImage/updateImageFlow.ts | 21 ------ src/routes/production/getFlowData.ts | 3 + src/types/database.d.ts | 67 +++++++++++++++++-- 4 files changed, 72 insertions(+), 27 deletions(-) diff --git a/src/routes/production/editImage/saveImageFlow.ts b/src/routes/production/editImage/saveImageFlow.ts index ce3e2a6..b3c2380 100644 --- a/src/routes/production/editImage/saveImageFlow.ts +++ b/src/routes/production/editImage/saveImageFlow.ts @@ -13,7 +13,15 @@ export default router.post( }), async (req, res) => { const { edges, nodes } = req.body; + nodes.forEach((node: any) => { + if (node.type == "upload") { + node.data.image = node.data.image ? u.replaceUrl(node.data.image) : ""; + } + if (node.type == "generated") { + node.data.generatedImage = node.data.generatedImage ? u.replaceUrl(node.data.generatedImage) : ""; + } + }); const [insertFlowId] = await u.db("o_imageFlow").insert({ flowData: JSON.stringify({ edges, nodes }), }); diff --git a/src/routes/production/editImage/updateImageFlow.ts b/src/routes/production/editImage/updateImageFlow.ts index 945be6f..1c4bbd9 100644 --- a/src/routes/production/editImage/updateImageFlow.ts +++ b/src/routes/production/editImage/updateImageFlow.ts @@ -10,10 +10,7 @@ export default router.post( validateFields({ edges: z.any(), nodes: z.any(), - id: z.number(), - imageUrl: z.string(), flowId: z.number(), - episodesId: z.number(), }), async (req, res) => { const { edges, nodes, flowId } = req.body; @@ -26,24 +23,6 @@ export default router.post( node.data.generatedImage = node.data.generatedImage ? u.replaceUrl(node.data.generatedImage) : ""; } }); - // let imagePath = ""; - // try { - // imagePath = new URL(imageUrl).pathname; - // } catch (e) {} - // if (imagePath) { - // if (type == "storyboard") { - // await u.db("o_storyboard").where("id", id).update({ - // filePath: imagePath, - // }); - // } else { - // const [imageId] = await u.db("o_image").insert({ - // filePath: imagePath, - // assetsId: id, - // state: "已完成", - // }); - // await u.db("o_assets").where("id", id).update({ imageId }); - // } - // } await u .db("o_imageFlow") diff --git a/src/routes/production/getFlowData.ts b/src/routes/production/getFlowData.ts index 50818bf..4afd932 100644 --- a/src/routes/production/getFlowData.ts +++ b/src/routes/production/getFlowData.ts @@ -116,6 +116,7 @@ export default router.post( prompt: item.prompt ?? "", desc: item.describe ?? "", src: item.filePath && (await u.oss.getFileUrl(item.filePath!)), + flowId: item.flowId, derive: await Promise.all( childAssetsData .filter((child) => child.assetsId === item.id) @@ -129,6 +130,7 @@ export default router.post( src: child.filePath && (await u.oss.getFileUrl(child.filePath!)), state: child.state ?? "未生成", errorReason: child?.errorReason ?? "", + flowId: child.flowId, })), ), })), @@ -145,6 +147,7 @@ export default router.post( videoDesc: i.videoDesc, shouldGenerateImage: i.shouldGenerateImage, reason: i?.reason ?? "", + flowId: i.flowId, })) .sort((a, b) => (a.index ?? 0) - (b.index ?? 0)); res.status(200).send(success(flowData)); diff --git a/src/types/database.d.ts b/src/types/database.d.ts index 988bea3..a8c2754 100644 --- a/src/types/database.d.ts +++ b/src/types/database.d.ts @@ -1,10 +1,60 @@ -<<<<<<< HEAD -// @db-hash 6fa5017e455bc367c9c902ba574d11b4 -======= -// @db-hash 35cf00f711e9d4df398703de70511684 ->>>>>>> c7be353ef92bb888df3af432bb21220b2fd35d7d +// @db-hash 7af86e2bafe5cab7d175eb68cf76ed7a //该文件由脚本自动生成,请勿手动修改 +export interface _o_storyboard_old_20260402 { + 'createTime'?: number | null; + 'duration'?: string | null; + 'filePath'?: string | null; + 'flowId'?: number | null; + 'id'?: number; + 'index'?: number | null; + 'projectId'?: number | null; + 'prompt'?: string | null; + 'reason'?: string | null; + 'scriptId'?: number | null; + 'state'?: string | null; + 'trackId'?: number | null; +} +export interface _o_storyboard_old_20260402_1 { + 'createTime'?: number | null; + 'duration'?: string | null; + 'filePath'?: string | null; + 'flowId'?: number | null; + 'id'?: number; + 'index'?: number | null; + 'projectId'?: number | null; + 'prompt'?: string | null; + 'reason'?: string | null; + 'scriptId'?: number | null; + 'shouldGenerateImage'?: number | null; + 'state'?: string | null; + 'track'?: string | null; + 'trackId'?: number | null; + 'videoPrompt'?: string | null; +} +export interface _o_vendorConfig_old_20260401 { + 'author'?: string | null; + 'code'?: string | null; + 'createTime'?: number | null; + 'description'?: string | null; + 'enableEnglish'?: number | null; + 'icon'?: string | null; + 'id'?: string; + 'inputs'?: string | null; + 'inputValues'?: string | null; + 'models'?: string | null; + 'name'?: string | null; +} +export interface _o_videoTrack_old_20260402 { + 'id'?: number; + 'projectId'?: number | null; + 'prompt'?: string | null; + 'reason'?: string | null; + 'scriptId'?: number | null; + 'selectVideoId'?: number | null; + 'state'?: string | null; + 'videoId'?: number | null; +} export interface memories { 'content': string; 'createTime': number; @@ -80,6 +130,7 @@ export interface o_image { 'filePath'?: string | null; 'id'?: number; 'model'?: string | null; + 'reason'?: string | null; 'resolution'?: string | null; 'state'?: string | null; 'type'?: string | null; @@ -114,7 +165,6 @@ export interface o_outlineNovel { export interface o_project { 'artStyle'?: string | null; 'createTime'?: number | null; - 'directorManual'?: string | null; 'id'?: number | null; 'imageModel'?: string | null; 'imageQuality'?: string | null; @@ -205,6 +255,7 @@ export interface o_vendorConfig { 'createTime'?: number | null; 'description'?: string | null; 'enable'?: number | null; + 'enableEnglish'?: number | null; 'icon'?: string | null; 'id'?: string; 'inputs'?: string | null; @@ -234,6 +285,10 @@ export interface o_videoTrack { } export interface DB { + "_o_storyboard_old_20260402": _o_storyboard_old_20260402; + "_o_storyboard_old_20260402_1": _o_storyboard_old_20260402_1; + "_o_vendorConfig_old_20260401": _o_vendorConfig_old_20260401; + "_o_videoTrack_old_20260402": _o_videoTrack_old_20260402; "memories": memories; "o_agentDeploy": o_agentDeploy; "o_agentWorkData": o_agentWorkData;