From 4b46be03a160877f0ed32af6865a57341ae91bb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=B8=85?= <2944435683> Date: Sat, 28 Mar 2026 01:34:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8F=90=E7=A4=BA=E8=AF=8D?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/lib/initDB.ts | 3 +- src/router.ts | 78 ++++++++++--------- src/routes/setting/promptManage/getPrompt.ts | 10 +++ .../setting/promptManage/updatePrompt.ts | 23 ++++++ src/types/database.d.ts | 8 +- src/utils/cleanNovel.ts | 4 +- 6 files changed, 83 insertions(+), 43 deletions(-) create mode 100644 src/routes/setting/promptManage/getPrompt.ts create mode 100644 src/routes/setting/promptManage/updatePrompt.ts diff --git a/src/lib/initDB.ts b/src/lib/initDB.ts index 4334863..06195b3 100644 --- a/src/lib/initDB.ts +++ b/src/lib/initDB.ts @@ -190,7 +190,8 @@ export default async (knex: Knex, forceInit: boolean = false): Promise => builder: (table) => { table.integer("id").notNullable(); table.string("name"); - table.text("prompt"); + table.string("type"); + table.text("data"); table.primary(["id"]); table.unique(["id"]); }, diff --git a/src/router.ts b/src/router.ts index dcf1414..2dcb5be 100644 --- a/src/router.ts +++ b/src/router.ts @@ -1,4 +1,4 @@ -// @routes-hash 7027f20b3def330f442689eb22769f31 +// @routes-hash 921ad94cce5432d95991aab4272cbd4d import { Express } from "express"; import route1 from "./routes/agents/clearMemory"; @@ -91,24 +91,26 @@ import route87 from "./routes/setting/loginConfig/updateUserPwd"; import route88 from "./routes/setting/memoryConfig/delAllMemory"; import route89 from "./routes/setting/memoryConfig/getMemory"; import route90 from "./routes/setting/memoryConfig/sureMemory"; -import route91 from "./routes/setting/skillManagement/addSkill"; -import route92 from "./routes/setting/skillManagement/deleteSkill"; -import route93 from "./routes/setting/skillManagement/embeddingSkill"; -import route94 from "./routes/setting/skillManagement/generateDescription"; -import route95 from "./routes/setting/skillManagement/getSkillList"; -import route96 from "./routes/setting/skillManagement/scanSkills"; -import route97 from "./routes/setting/skillManagement/updateSkill"; -import route98 from "./routes/setting/vendorConfig/addVendor"; -import route99 from "./routes/setting/vendorConfig/deleteVendor"; -import route100 from "./routes/setting/vendorConfig/getVendorList"; -import route101 from "./routes/setting/vendorConfig/modelTest"; -import route102 from "./routes/setting/vendorConfig/updateCode"; -import route103 from "./routes/setting/vendorConfig/updateVendor"; -import route104 from "./routes/task/getProject"; -import route105 from "./routes/task/getTaskApi"; -import route106 from "./routes/task/getTaskCategories"; -import route107 from "./routes/task/taskDetails"; -import route108 from "./routes/test/test"; +import route91 from "./routes/setting/promptManage/getPrompt"; +import route92 from "./routes/setting/promptManage/updatePrompt"; +import route93 from "./routes/setting/skillManagement/addSkill"; +import route94 from "./routes/setting/skillManagement/deleteSkill"; +import route95 from "./routes/setting/skillManagement/embeddingSkill"; +import route96 from "./routes/setting/skillManagement/generateDescription"; +import route97 from "./routes/setting/skillManagement/getSkillList"; +import route98 from "./routes/setting/skillManagement/scanSkills"; +import route99 from "./routes/setting/skillManagement/updateSkill"; +import route100 from "./routes/setting/vendorConfig/addVendor"; +import route101 from "./routes/setting/vendorConfig/deleteVendor"; +import route102 from "./routes/setting/vendorConfig/getVendorList"; +import route103 from "./routes/setting/vendorConfig/modelTest"; +import route104 from "./routes/setting/vendorConfig/updateCode"; +import route105 from "./routes/setting/vendorConfig/updateVendor"; +import route106 from "./routes/task/getProject"; +import route107 from "./routes/task/getTaskApi"; +import route108 from "./routes/task/getTaskCategories"; +import route109 from "./routes/task/taskDetails"; +import route110 from "./routes/test/test"; export default async (app: Express) => { app.use("/api/agents/clearMemory", route1); @@ -201,22 +203,24 @@ export default async (app: Express) => { app.use("/api/setting/memoryConfig/delAllMemory", route88); app.use("/api/setting/memoryConfig/getMemory", route89); app.use("/api/setting/memoryConfig/sureMemory", route90); - app.use("/api/setting/skillManagement/addSkill", route91); - app.use("/api/setting/skillManagement/deleteSkill", route92); - app.use("/api/setting/skillManagement/embeddingSkill", route93); - app.use("/api/setting/skillManagement/generateDescription", route94); - app.use("/api/setting/skillManagement/getSkillList", route95); - app.use("/api/setting/skillManagement/scanSkills", route96); - app.use("/api/setting/skillManagement/updateSkill", route97); - app.use("/api/setting/vendorConfig/addVendor", route98); - app.use("/api/setting/vendorConfig/deleteVendor", route99); - app.use("/api/setting/vendorConfig/getVendorList", route100); - app.use("/api/setting/vendorConfig/modelTest", route101); - app.use("/api/setting/vendorConfig/updateCode", route102); - app.use("/api/setting/vendorConfig/updateVendor", route103); - app.use("/api/task/getProject", route104); - app.use("/api/task/getTaskApi", route105); - app.use("/api/task/getTaskCategories", route106); - app.use("/api/task/taskDetails", route107); - app.use("/api/test/test", route108); + app.use("/api/setting/promptManage/getPrompt", route91); + app.use("/api/setting/promptManage/updatePrompt", route92); + app.use("/api/setting/skillManagement/addSkill", route93); + app.use("/api/setting/skillManagement/deleteSkill", route94); + app.use("/api/setting/skillManagement/embeddingSkill", route95); + app.use("/api/setting/skillManagement/generateDescription", route96); + app.use("/api/setting/skillManagement/getSkillList", route97); + app.use("/api/setting/skillManagement/scanSkills", route98); + app.use("/api/setting/skillManagement/updateSkill", route99); + app.use("/api/setting/vendorConfig/addVendor", route100); + app.use("/api/setting/vendorConfig/deleteVendor", route101); + app.use("/api/setting/vendorConfig/getVendorList", route102); + app.use("/api/setting/vendorConfig/modelTest", route103); + app.use("/api/setting/vendorConfig/updateCode", route104); + app.use("/api/setting/vendorConfig/updateVendor", route105); + app.use("/api/task/getProject", route106); + app.use("/api/task/getTaskApi", route107); + app.use("/api/task/getTaskCategories", route108); + app.use("/api/task/taskDetails", route109); + app.use("/api/test/test", route110); } diff --git a/src/routes/setting/promptManage/getPrompt.ts b/src/routes/setting/promptManage/getPrompt.ts new file mode 100644 index 0000000..a698249 --- /dev/null +++ b/src/routes/setting/promptManage/getPrompt.ts @@ -0,0 +1,10 @@ +import express from "express"; +import u from "@/utils"; +import { success, error } from "@/lib/responseFormat"; + +const router = express.Router(); + +export default router.post("/", async (req, res) => { + const data = await u.db("o_prompt").select("*"); + res.status(200).send(success(data)); +}); diff --git a/src/routes/setting/promptManage/updatePrompt.ts b/src/routes/setting/promptManage/updatePrompt.ts new file mode 100644 index 0000000..6515dd9 --- /dev/null +++ b/src/routes/setting/promptManage/updatePrompt.ts @@ -0,0 +1,23 @@ +import express from "express"; +import u from "@/utils"; +import { z } from "zod"; +import { success, error } from "@/lib/responseFormat"; +import { validateFields } from "@/middleware/middleware"; +const router = express.Router(); + +export default router.post( + "/", + validateFields({ + id: z.number(), + }), + async (req, res) => { + const { id, data } = req.body; + await u + .db("o_prompt") + .where("id", id) + .update({ + data: JSON.stringify(data), + }); + res.status(200).send(success(123)); + }, +); diff --git a/src/types/database.d.ts b/src/types/database.d.ts index eea92c2..b49367a 100644 --- a/src/types/database.d.ts +++ b/src/types/database.d.ts @@ -1,4 +1,4 @@ -// @db-hash 05ecfd675f848d88631c1a546996caea +// @db-hash 8aa6e47033e9f59d1f8b797d5b4fccd3 //该文件由脚本自动生成,请勿手动修改 export interface memories { @@ -7,6 +7,7 @@ export interface memories { 'embedding'?: string | null; 'id'?: string; 'isolationKey': string; + 'name'?: string | null; 'relatedMessageIds'?: string | null; 'role'?: string | null; 'summarized'?: number | null; @@ -119,9 +120,10 @@ export interface o_project { 'videoRatio'?: string | null; } export interface o_prompt { + 'data'?: string | null; 'id'?: number; 'name'?: string | null; - 'prompt'?: string | null; + 'type'?: string | null; } export interface o_script { 'content'?: string | null; @@ -164,7 +166,7 @@ export interface o_storyboard { 'filePath'?: string | null; 'frameMode'?: string | null; 'id'?: number; - 'index'?: string | null; + 'index'?: number | null; 'lines'?: string | null; 'mode'?: string | null; 'model'?: string | null; diff --git a/src/utils/cleanNovel.ts b/src/utils/cleanNovel.ts index da16103..0f14a44 100644 --- a/src/utils/cleanNovel.ts +++ b/src/utils/cleanNovel.ts @@ -27,9 +27,9 @@ class CleanNovel { private async processChapter(novel: o_novel, intansce: ReturnType): Promise { try { const prompt = await u.getPrompts("event"); - const data = await u.db("o_prompt").where("name", "eventExtraction").first("prompt"); + const data = await u.db("o_prompt").where("type", "eventExtraction").first("data"); const resData = await intansce.invoke({ - system: data ? JSON.stringify(data.prompt) : (prompt as string), + system: data ? JSON.stringify(data.data) : (prompt as string), messages: [ { role: "user",