diff --git a/data/skills/art_skills/2D_flat_design/art_prompt/art_character_flat.md b/data/skills/art_skills/2D_flat_design/art_prompt/art_character.md similarity index 100% rename from data/skills/art_skills/2D_flat_design/art_prompt/art_character_flat.md rename to data/skills/art_skills/2D_flat_design/art_prompt/art_character.md diff --git a/data/skills/art_skills/2D_flat_design/art_prompt/art_character_derivative_flat.md b/data/skills/art_skills/2D_flat_design/art_prompt/art_character_derivative.md similarity index 100% rename from data/skills/art_skills/2D_flat_design/art_prompt/art_character_derivative_flat.md rename to data/skills/art_skills/2D_flat_design/art_prompt/art_character_derivative.md diff --git a/data/skills/art_skills/2D_flat_design/art_prompt/art_prop_flat.md b/data/skills/art_skills/2D_flat_design/art_prompt/art_prop.md similarity index 100% rename from data/skills/art_skills/2D_flat_design/art_prompt/art_prop_flat.md rename to data/skills/art_skills/2D_flat_design/art_prompt/art_prop.md diff --git a/data/skills/art_skills/2D_flat_design/art_prompt/art_prop_derivative_flat.md b/data/skills/art_skills/2D_flat_design/art_prompt/art_prop_derivative.md similarity index 100% rename from data/skills/art_skills/2D_flat_design/art_prompt/art_prop_derivative_flat.md rename to data/skills/art_skills/2D_flat_design/art_prompt/art_prop_derivative.md diff --git a/data/skills/art_skills/2D_flat_design/art_prompt/art_scene_flat.md b/data/skills/art_skills/2D_flat_design/art_prompt/art_scene.md similarity index 100% rename from data/skills/art_skills/2D_flat_design/art_prompt/art_scene_flat.md rename to data/skills/art_skills/2D_flat_design/art_prompt/art_scene.md diff --git a/data/skills/art_skills/2D_flat_design/art_prompt/art_scene_derivative_flat.md b/data/skills/art_skills/2D_flat_design/art_prompt/art_scene_derivative.md similarity index 100% rename from data/skills/art_skills/2D_flat_design/art_prompt/art_scene_derivative_flat.md rename to data/skills/art_skills/2D_flat_design/art_prompt/art_scene_derivative.md diff --git a/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character_modern.md b/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character_modern.md rename to data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character.md diff --git a/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character_derivative_modern.md b/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character_derivative.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character_derivative_modern.md rename to data/skills/art_skills/realpeople_urban_modern/art_prompt/art_character_derivative.md diff --git a/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop_modern.md b/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop_modern.md rename to data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop.md diff --git a/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop_derivative_modern.md b/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop_derivative.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop_derivative_modern.md rename to data/skills/art_skills/realpeople_urban_modern/art_prompt/art_prop_derivative.md diff --git a/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene_modern.md b/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene_modern.md rename to data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene.md diff --git a/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene_derivative_modern.md b/data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene_derivative.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene_derivative_modern.md rename to data/skills/art_skills/realpeople_urban_modern/art_prompt/art_scene_derivative.md diff --git a/data/skills/art_skills/realpeople_urban_modern/driector_skills/director_planning.md b/data/skills/art_skills/realpeople_urban_modern/driector_skills/director_planning_style.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/driector_skills/director_planning.md rename to data/skills/art_skills/realpeople_urban_modern/driector_skills/director_planning_style.md diff --git a/data/skills/art_skills/realpeople_urban_modern/driector_skills/director_storyboard_table.md b/data/skills/art_skills/realpeople_urban_modern/driector_skills/director_storyboard_table_style.md similarity index 100% rename from data/skills/art_skills/realpeople_urban_modern/driector_skills/director_storyboard_table.md rename to data/skills/art_skills/realpeople_urban_modern/driector_skills/director_storyboard_table_style.md diff --git a/src/routes/assets/delAssets.ts b/src/routes/assets/delAssets.ts index 162e55b..d5195df 100644 --- a/src/routes/assets/delAssets.ts +++ b/src/routes/assets/delAssets.ts @@ -14,6 +14,7 @@ export default router.post( const { id } = req.body; const assetsData = await u.db("o_image").where("assetsId", id); await Promise.all(assetsData.map((i) => i.filePath && u.oss.deleteFile(i.filePath))); + await u.db("o_image").where({ assetsId: id }).delete(); await u.db("o_assets").where({ id }).delete(); res.status(200).send(success({ message: "删除资产成功" })); }, diff --git a/src/routes/production/workbench/delVideo.ts b/src/routes/production/workbench/delVideo.ts index 4b87855..dd1c300 100644 --- a/src/routes/production/workbench/delVideo.ts +++ b/src/routes/production/workbench/delVideo.ts @@ -13,6 +13,9 @@ export default router.post( async (req, res) => { const { id } = req.body; await u.db("o_video").where("id", id).delete(); + await u.db("o_videoTrack").where("videoId", id).update({ + videoId: null, + }); res.status(200).send(success({ message: "视频删除成功" })); }, ); diff --git a/src/routes/production/workbench/generateVideoPrompt.ts b/src/routes/production/workbench/generateVideoPrompt.ts index d3fd0f2..74a1deb 100644 --- a/src/routes/production/workbench/generateVideoPrompt.ts +++ b/src/routes/production/workbench/generateVideoPrompt.ts @@ -76,9 +76,7 @@ export default router.post( const projectData = await u.db("o_project").select("*").where({ id: projectId }).first(); const videoPrompt = await u.db("o_prompt").where("type", "videoPromptGeneration").first(); const artStyle = projectData?.artStyle || "无"; - const data = projectData?.directorManual || "无"; const visualManual = u.getArtPrompt(artStyle, "art_skills", "art_storyboard_video"); - const directorManual = u.getArtPrompt(data, "story_skills", "narrative_sweet_romance"); const content = ` **模型名称**:${modelData}, **资产信息**(角色、场景、道具):${assets.map((i) => `[id:${i.id},type:${i.type},name:${i.name}]`).join(",")}, @@ -99,7 +97,7 @@ export default router.post( messages: [ { role: "assistant", - content: `${visualManual}\n${directorManual}`, + content: `${visualManual}`, }, { role: "user", diff --git a/src/routes/project/addVisualManual.ts b/src/routes/project/addVisualManual.ts index b185614..65a2170 100644 --- a/src/routes/project/addVisualManual.ts +++ b/src/routes/project/addVisualManual.ts @@ -50,10 +50,10 @@ export default router.post( { value: "art_prop_derivative", subDir: "art_prompt" }, { value: "art_scene", subDir: "art_prompt" }, { value: "art_scene_derivative", subDir: "art_prompt" }, - { value: "art_storyboard", subDir: "art_prompt" }, + { value: "director_storyboard", subDir: "driector_skills" }, { value: "art_storyboard_video", subDir: "art_prompt" }, - { value: "director_planning", subDir: "driector_skills" }, - { value: "director_storyboard_table", subDir: "driector_skills" }, + { value: "director_planning_style", subDir: "driector_skills" }, + { value: "director_storyboard_table_style", subDir: "driector_skills" }, ]; // 根据 DATA_MAP 构建 value -> subDir 的映射 diff --git a/src/routes/project/delProject.ts b/src/routes/project/delProject.ts index 4ceed7c..68ec155 100644 --- a/src/routes/project/delProject.ts +++ b/src/routes/project/delProject.ts @@ -13,27 +13,35 @@ export default router.post( }), async (req, res) => { const { id } = req.body; - - const scriptData = await u.db("o_script").where("projectId", id).select("id"); - const scriptIds = scriptData.map((item: any) => item.id); - + //删除项目 + await u.db("o_project").where("id", id).delete(); + //删除项目下的原文 + await u.db("o_novel").where("projectId", id).delete(); + // 删除项目下的剧本信息 + await u.db("o_script").where("projectId", id).delete(); + await u.db("o_outline").where("projectId", id).delete(); + // 删除项目下的任务 + await u.db("o_tasks").where("projectId", id).delete(); + // 删除项目下的分镜 + await u.db("o_storyboard").where("projectId", id).delete(); + // 删除项目下的资产 + await u.db("o_assets").where("projectId", id).delete(); + //删除需要删除资产的归属图片 const assetsData = await u.db("o_assets").where("projectId", id).select("id"); const assetsIds = assetsData.map((item: any) => item.id); - - await u.db("o_project").where("id", id).delete(); - await u.db("o_novel").where("projectId", id).delete(); - await u.db("o_outline").where("projectId", id).delete(); - await u.db("o_tasks").where("projectId", id).delete(); - - await u.db("o_script").where("projectId", id).delete(); - await u.db("o_assets").where("projectId", id).delete(); - if (assetsIds.length > 0) { - await u.db("o_image").where("projectId", id).orWhereIn("assetsId", assetsIds).delete(); + await u.db("o_image").orWhereIn("assetsId", assetsIds).delete(); } - - await u.db("o_video").whereIn("scriptId", scriptIds).delete(); - + //删除项目下的视频 + const videoData = await u.db("o_video").where("projectId", id).select("id"); + const videoIds = videoData.map((item: any) => item.id); + if (videoIds.length > 0) { + await u.db("o_videoTrack").whereIn("videoId", videoIds).update({ + videoId: null, + }); + } + await u.db("o_video").where("projectId", id).delete(); + //删除项目下的资源 try { await u.oss.deleteDirectory(`${id}/`); console.log(`项目 ${id} 的OSS文件夹删除成功`); diff --git a/src/routes/project/editVisualManual.ts b/src/routes/project/editVisualManual.ts index efbaa09..27bab04 100644 --- a/src/routes/project/editVisualManual.ts +++ b/src/routes/project/editVisualManual.ts @@ -51,10 +51,10 @@ export default router.post( { value: "art_prop_derivative", subDir: "art_prompt" }, { value: "art_scene", subDir: "art_prompt" }, { value: "art_scene_derivative", subDir: "art_prompt" }, - { value: "art_storyboard", subDir: "art_prompt" }, + { value: "director_storyboard", subDir: "driector_skills" }, { value: "art_storyboard_video", subDir: "art_prompt" }, - { value: "director_planning", subDir: "driector_skills" }, - { value: "director_storyboard_table", subDir: "driector_skills" }, + { value: "director_planning_style", subDir: "driector_skills" }, + { value: "director_storyboard_table_style", subDir: "driector_skills" }, ]; // 根据 DATA_MAP 构建 value -> subDir 的映射 diff --git a/src/routes/project/getVisualManual.ts b/src/routes/project/getVisualManual.ts index 9d13410..72e27cb 100644 --- a/src/routes/project/getVisualManual.ts +++ b/src/routes/project/getVisualManual.ts @@ -15,10 +15,10 @@ const DATA_MAP: { label: string; value: string; subDir?: string }[] = [ { label: "道具衍生", value: "art_prop_derivative", subDir: "art_prompt" }, { label: "场景", value: "art_scene", subDir: "art_prompt" }, { label: "场景衍生", value: "art_scene_derivative", subDir: "art_prompt" }, - { label: "分镜", value: "art_storyboard", subDir: "art_prompt" }, + { label: "分镜", value: "director_storyboard", subDir: "driector_skills" }, { label: "分镜视频", value: "art_storyboard_video", subDir: "art_prompt" }, - { label: "技法-导演规划", value: "director_planning", subDir: "driector_skills" }, - { label: "技法-分镜表设计", value: "director_storyboard_table", subDir: "driector_skills" }, + { label: "技法-导演规划", value: "director_planning_style", subDir: "driector_skills" }, + { label: "技法-分镜表设计", value: "director_storyboard_table_style", subDir: "driector_skills" }, ]; // 读取 md 文件内容,文件不存在时返回空字符串 diff --git a/src/routes/setting/vendorConfig/enableVendor.ts b/src/routes/setting/vendorConfig/enableVendor.ts index fc8be90..8536504 100644 --- a/src/routes/setting/vendorConfig/enableVendor.ts +++ b/src/routes/setting/vendorConfig/enableVendor.ts @@ -8,6 +8,7 @@ export default router.post( "/", validateFields({ id: z.string(), + enable: z.number(), }), async (req, res) => { const { id, enable } = req.body; diff --git a/src/routes/setting/vendorConfig/updateCode.ts b/src/routes/setting/vendorConfig/updateCode.ts index 58b6ca7..d0ab2c1 100644 --- a/src/routes/setting/vendorConfig/updateCode.ts +++ b/src/routes/setting/vendorConfig/updateCode.ts @@ -95,7 +95,6 @@ export default router.post( inputValues: JSON.stringify(vendor.inputValues ?? {}), models: JSON.stringify(vendor.models ?? []), code: tsCode, - enable: 0, createTime: Date.now(), }); res.status(200).send(success(result.data)); diff --git a/src/routes/setting/vendorConfig/updateVendor.ts b/src/routes/setting/vendorConfig/updateVendor.ts index 6313450..0d066b8 100644 --- a/src/routes/setting/vendorConfig/updateVendor.ts +++ b/src/routes/setting/vendorConfig/updateVendor.ts @@ -67,7 +67,6 @@ export default router.post( inputs: JSON.stringify(inputs), inputValues: JSON.stringify(inputValues), models: JSON.stringify(models), - enable: id == "toonflow" ? 1 : 0, }); res.status(200).send(success("更新成功")); },