From 8a6be6b37a20f732a019e00aa44d58cbe686fc88 Mon Sep 17 00:00:00 2001 From: zhishi <1951671751@qq.com> Date: Fri, 27 Mar 2026 17:05:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=8E=B7=E5=8F=96model?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/routes/modelSelect/getModelList.ts | 30 ++++++++++---------------- 1 file changed, 11 insertions(+), 19 deletions(-) diff --git a/src/routes/modelSelect/getModelList.ts b/src/routes/modelSelect/getModelList.ts index 5e4fa8e..e0a9687 100644 --- a/src/routes/modelSelect/getModelList.ts +++ b/src/routes/modelSelect/getModelList.ts @@ -12,32 +12,24 @@ export default router.post( }), async (req, res) => { const { type } = req.body; - const data = await u.db("o_vendorConfig").select("id", "models", "name").first(); - if (!data) { + const dataList = await u.db("o_vendorConfig").select("id", "models", "name"); + if (!dataList || dataList.length === 0) { return res.status(404).send({ error: "模型未找到" }); } - const models = JSON.parse(data.models!); - if (type === "all") { - const allData = models - .filter((item: { type: string }) => item.type !== "video") - .map((item: { name: string; modelName: string; type: string }) => ({ - id: data.id, - label: item.name, - value: item.modelName, - type: item.type, - name: data.name, - })); - return res.status(200).send(success(allData)); - } - const filteredData = models - .filter((item: { type: string }) => item.type === type) - .map((item: { name: string; modelName: string; type: string }) => ({ + const result = dataList.flatMap((data) => { + const models = JSON.parse(data.models!); + const filtered = + type === "all" + ? models.filter((item: { type: string }) => item.type !== "video") + : models.filter((item: { type: string }) => item.type === type); + return filtered.map((item: { name: string; modelName: string; type: string }) => ({ id: data.id, label: item.name, value: item.modelName, type: item.type, name: data.name, })); - res.status(200).send(success(filteredData)); + }); + res.status(200).send(success(result)); }, );