From 7946b1f3304dafdded8eecccf97ced7b795fa2c5 Mon Sep 17 00:00:00 2001 From: SunWuyuan <1847261658@qq.com> Date: Sat, 7 Dec 2024 11:40:30 +0800 Subject: [PATCH] 1 --- README.md | 3 +- package.json | 7 +- pnpm-lock.yaml | 74 +++++++------- prisma/schema.prisma | 45 ++++++--- public/Node.js.png | Bin 0 -> 170473 bytes server/lib/method/projects.js | 182 +++++++++++++++++++++------------- server/lib/method/users.js | 2 +- server/router_project.js | 22 ++-- server/router_scratch.js | 9 -- server/router_search.js | 52 +++++----- 10 files changed, 232 insertions(+), 164 deletions(-) create mode 100644 public/Node.js.png diff --git a/README.md b/README.md index 5111f40..1deb52e 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ QQ:964979747 想了解社区效果,请参考 [ZeroCat](https://ourworld.wuyuan.dev)。 ## 安装 - +![使用Nodejs开发](.public/Node.js.png) 这个项目使用 [node](http://nodejs.org) , [npm](https://npmjs.com), [docker](https://docker.com),请确保你本地已经安装了祂们 ```sh @@ -106,4 +106,5 @@ ZeroCat 的项目 遵循 [Contributor Covenant](http://contributor-covenant.org/ 感谢:https://gitee.com/scratch-cn/lite
此项目声明了 MIT 协议 + ![社区(Github图床)](https://github.com/ZeroCatDev/ZeroCat/assets/88357633/d6f4a6ba-daa1-45c8-88f7-4b20d9edbb22) diff --git a/package.json b/package.json index c08223a..322fa29 100644 --- a/package.json +++ b/package.json @@ -4,12 +4,13 @@ "scripts": { "test": "echo \"No test specified\" && exit 0", "start": "node .bin/www", - "prisma": "prisma db pull && prisma generate", + "prisma": "prisma generate", + "prisma:pull": "prisma db pull && prisma generate", "dev": "cross-env NODE_ENV=development nodemon node .bin/www" }, "dependencies": { "@aws-sdk/client-s3": "^3.693.0", - "@prisma/client": "^5.22.0", + "@prisma/client": "^6.0.1", "axios": "^1.7.3", "body-parser": "^1.20.1", "compression": "^1.7.5", @@ -36,6 +37,6 @@ }, "devDependencies": { "cross-env": "^7.0.3", - "prisma": "^5.22.0" + "prisma": "^6.0.1" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 005658c..496e560 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: specifier: ^3.693.0 version: 3.693.0 '@prisma/client': - specifier: ^5.22.0 - version: 5.22.0(prisma@5.22.0) + specifier: ^6.0.1 + version: 6.0.1(prisma@6.0.1) axios: specifier: ^1.7.3 version: 1.7.7 @@ -88,8 +88,8 @@ importers: specifier: ^7.0.3 version: 7.0.3 prisma: - specifier: ^5.22.0 - version: 5.22.0 + specifier: ^6.0.1 + version: 6.0.1 packages: @@ -267,29 +267,29 @@ packages: resolution: {integrity: sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==} engines: {node: ^14.21.3 || >=16} - '@prisma/client@5.22.0': - resolution: {integrity: sha512-M0SVXfyHnQREBKxCgyo7sffrKttwE6R8PMq330MIUF0pTwjUhLbW84pFDlf06B27XyCR++VtjugEnIHdr07SVA==} - engines: {node: '>=16.13'} + '@prisma/client@6.0.1': + resolution: {integrity: sha512-60w7kL6bUxz7M6Gs/V+OWMhwy94FshpngVmOY05TmGD0Lhk+Ac0ZgtjlL6Wll9TD4G03t4Sq1wZekNVy+Xdlbg==} + engines: {node: '>=18.18'} peerDependencies: prisma: '*' peerDependenciesMeta: prisma: optional: true - '@prisma/debug@5.22.0': - resolution: {integrity: sha512-AUt44v3YJeggO2ZU5BkXI7M4hu9BF2zzH2iF2V5pyXT/lRTyWiElZ7It+bRH1EshoMRxHgpYg4VB6rCM+mG5jQ==} + '@prisma/debug@6.0.1': + resolution: {integrity: sha512-jQylgSOf7ibTVxqBacnAlVGvek6fQxJIYCQOeX2KexsfypNzXjJQSS2o5s+Mjj2Np93iSOQUaw6TvPj8syhG4w==} - '@prisma/engines-version@5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2': - resolution: {integrity: sha512-2PTmxFR2yHW/eB3uqWtcgRcgAbG1rwG9ZriSvQw+nnb7c4uCr3RAcGMb6/zfE88SKlC1Nj2ziUvc96Z379mHgQ==} + '@prisma/engines-version@5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e': + resolution: {integrity: sha512-JmIds0Q2/vsOmnuTJYxY4LE+sajqjYKhLtdOT6y4imojqv5d/aeVEfbBGC74t8Be1uSp0OP8lxIj2OqoKbLsfQ==} - '@prisma/engines@5.22.0': - resolution: {integrity: sha512-UNjfslWhAt06kVL3CjkuYpHAWSO6L4kDCVPegV6itt7nD1kSJavd3vhgAEhjglLJJKEdJ7oIqDJ+yHk6qO8gPA==} + '@prisma/engines@6.0.1': + resolution: {integrity: sha512-4hxzI+YQIR2uuDyVsDooFZGu5AtixbvM2psp+iayDZ4hRrAHo/YwgA17N23UWq7G6gRu18NvuNMb48qjP3DPQw==} - '@prisma/fetch-engine@5.22.0': - resolution: {integrity: sha512-bkrD/Mc2fSvkQBV5EpoFcZ87AvOgDxbG99488a5cexp5Ccny+UM6MAe/UFkUC0wLYD9+9befNOqGiIJhhq+HbA==} + '@prisma/fetch-engine@6.0.1': + resolution: {integrity: sha512-T36bWFVGeGYYSyYOj9d+O9G3sBC+pAyMC+jc45iSL63/Haq1GrYjQPgPMxrEj9m739taXrupoysRedQ+VyvM/Q==} - '@prisma/get-platform@5.22.0': - resolution: {integrity: sha512-pHhpQdr1UPFpt+zFfnPazhulaZYCUqeIcPpJViYoq9R+D/yw4fjE+CtnsnKzPYm0ddUbeXUzjGVGIRVgPDCk4Q==} + '@prisma/get-platform@6.0.1': + resolution: {integrity: sha512-zspC9vlxAqx4E6epMPMLLBMED2VD8axDe8sPnquZ8GOsn6tiacWK0oxrGK4UAHYzYUVuMVUApJbdXB2dFpLhvg==} '@smithy/abort-controller@3.1.8': resolution: {integrity: sha512-+3DOBcUn5/rVjlxGvUPKc416SExarAQ+Qe0bqk30YSUjbepwpS7QN0cyKUSifvLJhdMZ0WPzPP5ymut0oonrpQ==} @@ -1121,9 +1121,9 @@ packages: phpass@0.1.1: resolution: {integrity: sha512-ZGkvcdZbIVN6k94p87LavU+GJbVJ8u1BKUkG/qRhdKi8v8YQONT8Ad1DaeXTeEjHBQbMK0+eiI03/M3PbNHB5g==} - prisma@5.22.0: - resolution: {integrity: sha512-vtpjW3XuYCSnMsNVBjLMNkTj6OZbudcPPTPYHqX0CJfpcdWciI1dM8uHETwmDxxiqEwCIE6WvXucWUetJgfu/A==} - engines: {node: '>=16.13'} + prisma@6.0.1: + resolution: {integrity: sha512-CaMNFHkf+DDq8zq3X/JJsQ4Koy7dyWwwtOKibkT/Am9j/tDxcfbg7+lB1Dzhx18G/+RQCMgjPYB61bhRqteNBQ==} + engines: {node: '>=18.18'} hasBin: true process-nextick-args@2.0.1: @@ -1868,30 +1868,30 @@ snapshots: '@noble/hashes@1.5.0': {} - '@prisma/client@5.22.0(prisma@5.22.0)': + '@prisma/client@6.0.1(prisma@6.0.1)': optionalDependencies: - prisma: 5.22.0 + prisma: 6.0.1 - '@prisma/debug@5.22.0': {} + '@prisma/debug@6.0.1': {} - '@prisma/engines-version@5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2': {} + '@prisma/engines-version@5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e': {} - '@prisma/engines@5.22.0': + '@prisma/engines@6.0.1': dependencies: - '@prisma/debug': 5.22.0 - '@prisma/engines-version': 5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2 - '@prisma/fetch-engine': 5.22.0 - '@prisma/get-platform': 5.22.0 + '@prisma/debug': 6.0.1 + '@prisma/engines-version': 5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e + '@prisma/fetch-engine': 6.0.1 + '@prisma/get-platform': 6.0.1 - '@prisma/fetch-engine@5.22.0': + '@prisma/fetch-engine@6.0.1': dependencies: - '@prisma/debug': 5.22.0 - '@prisma/engines-version': 5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2 - '@prisma/get-platform': 5.22.0 + '@prisma/debug': 6.0.1 + '@prisma/engines-version': 5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e + '@prisma/get-platform': 6.0.1 - '@prisma/get-platform@5.22.0': + '@prisma/get-platform@6.0.1': dependencies: - '@prisma/debug': 5.22.0 + '@prisma/debug': 6.0.1 '@smithy/abort-controller@3.1.8': dependencies: @@ -2880,9 +2880,9 @@ snapshots: phpass@0.1.1: {} - prisma@5.22.0: + prisma@6.0.1: dependencies: - '@prisma/engines': 5.22.0 + '@prisma/engines': 6.0.1 optionalDependencies: fsevents: 2.3.3 diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 2184bfa..12b50a5 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -115,23 +115,25 @@ model ow_counter { /// This model or at least one of its fields has comments in the database, and requires an additional setup for migrations: Read more: https://pris.ly/d/database-comments model ow_projects { - id Int @id @default(autoincrement()) @db.UnsignedInt - type String? @default("text") @db.VarChar(32) - licence String? @db.VarChar(32) + id Int @id @default(autoincrement()) @db.UnsignedInt + type String? @default("text") @db.VarChar(32) + licence String? @db.VarChar(32) authorid Int - teacherid Int? @default(0) @db.UnsignedInt - state String? @default("private") @db.VarChar(32) - view_count Int? @default(0) @db.UnsignedInt - like_count Int? @default(0) - favo_count Int? @default(0) - time DateTime? @default(now()) @db.Timestamp(0) - title String? @default("Scratch新项目") @db.VarChar(1000) - description String? @default("OurWorld上的Scratch项目") @db.VarChar(1000) - source String? @db.MediumText - history Boolean @default(true) - devenv Boolean @default(true) - devsource String @db.MediumText - tags String @default("") @db.VarChar(100) + teacherid Int? @default(0) @db.UnsignedInt + state String? @default("private") @db.VarChar(32) + view_count Int? @default(0) @db.UnsignedInt + like_count Int? @default(0) + favo_count Int? @default(0) + time DateTime? @default(now()) @db.Timestamp(0) + title String? @default("Scratch新项目") @db.VarChar(1000) + description String? @default("OurWorld上的Scratch项目") @db.VarChar(1000) + source String? @db.MediumText + history Boolean @default(true) + devenv Boolean @default(true) + devsource String @db.MediumText + // 移除原来的 tags 字符串字段 + // 添加与 tags 表的关联 + tags ow_projects_tags[] } /// This model or at least one of its fields has comments in the database, and requires an additional setup for migrations: Read more: https://pris.ly/d/database-comments @@ -364,6 +366,17 @@ model magiclinktoken { expiresAt DateTime @db.DateTime(0) } +model ow_projects_tags { + id Int @id @default(autoincrement()) + name String @db.VarChar(45) + projectid Int + created_at DateTime? @default(now()) @db.Timestamp(0) + // 添加与 projects 表的关联 + project ow_projects @relation(fields: [projectid], references: [id]) + + @@index([projectid]) +} + /// The underlying view does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client. /// This view or at least one of its fields has comments in the database, and requires an additional setup for migrations: Read more: https://pris.ly/d/database-comments view ow_projects_view { diff --git a/public/Node.js.png b/public/Node.js.png new file mode 100644 index 0000000000000000000000000000000000000000..a61e377eacad92b50ea0cc0cfbd11ef027a83619 GIT binary patch literal 170473 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

L`K=EV0VcD)`{%MEVOCAP_sgwvDA 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

|GW+yjl`D$XZOv$@ngga1CDG2b$A3uI_z10uCMz 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 m|FxwnZK#%K} list - List of project IDs + * @param {number} userid - User ID + * @returns {Promise>} + */ async function getProjectsByList(list, userid) { - var select = { - id: true, - type: true, - licence: true, - authorid: true, - state: true, - view_count: true, - time: true, - title: true, - description: true, - tags: true, - }; - - // 获取每个项目的详细信息 - var projects = await prisma.ow_projects.findMany({ - where: { - id: { in: list.map((item) => parseInt(item)) }, - }, - select: select, + const select = projectSelectionFields(); + const projectIds = list.map(Number); + const projects = await prisma.ow_projects.findMany({ + where: { id: { in: projectIds } }, + select, }); - - //logger.debug(projects); - projects = projects.filter((project) => { - return !(project.state == "private" && project.authorid != userid); - }); - //logger.debug(projects); - - return projects; + return projects.filter( + (project) => !(project.state === "private" && project.authorid !== userid) + ); } + +/** + * Get projects and users by list of IDs + * @param {Array} list - List of project IDs + * @param {number} userid - User ID + * @returns {Promise<{ projects: Array, users: Array}>} + */ async function getProjectsAndUsersByProjectsList(list, userid) { - var projects = await getProjectsByList(list, userid); - var userslist = [...new Set(projects.map((project) => project.authorid))]; - var users = await getUsersByList(userslist); - return { projects: projects, users: users }; + const projects = await getProjectsByList(list, userid); + const userslist = [...new Set(projects.map((project) => project.authorid))]; + const users = await getUsersByList(userslist); + return { projects, users }; } -//(async () => {logger.debug(await getProjectsAndUsersByProjectsList([3, 126, 130, 131, 129], 2));})(); - -//logger.debug(await getProjectsAndUsersByProjectsList([3, 126, 130, 131, 129], 2)) -// 工具函数:提取项目数据 +/** + * Extract project data from body + * @param {Object} body - Request body + * @returns {Object} - Extracted project data + */ function extractProjectData(body) { const fields = [ "type", @@ -57,7 +48,6 @@ function extractProjectData(body) { "title", "description", "history", - "tags", ]; return fields.reduce( (acc, field) => (body[field] ? { ...acc, [field]: body[field] } : acc), @@ -65,39 +55,71 @@ function extractProjectData(body) { ); } -// 工具函数:判断是否为有效 JSON -function isJson(str) { - try { - JSON.stringify(str); // 如果能成功解析,说明是合法的 JSON - return true; - } catch (error) { - logger.debug(error); - return false; // 如果解析失败,说明不是 JSON - } +/** + * Extract project tags from string or array + * @param {string | Array} tags - Project tags + * @returns {Array} - Extracted project tags + */ +const extractProjectTags = (tags) => + // 如果某项为空,则删除 + Array.isArray(tags) + ? tags.map(String).filter((tag) => tag) + : tags + .split(",") + .map((tag) => tag.trim()) + .filter((tag) => tag); +/** + * Handle tags change and save + * @param {number} projectId - Project ID + * @param {string | Array} tags - Project tags + * @returns {Promise} + */ +async function handleTagsChange(projectId, tags) { + const existingTags = await prisma.ow_projects_tags.findMany({ + where: { projectid: projectId }, + select: { id: true, name: true }, + }); + tags = extractProjectTags(tags); + + const tagNames = new Set(tags); + await Promise.all( + existingTags.map(async (tag) => { + if (!tagNames.has(tag.name)) { + await prisma.ow_projects_tags.delete({ where: { id: tag.id } }); + } else { + tagNames.delete(tag.name); + } + }) + ); + + await Promise.all( + [...tagNames].map(async (name) => { + await prisma.ow_projects_tags.create({ + data: { projectid: projectId, name }, + }); + }) + ); } -// 工具函数:设置项目文件 +/** + * Set project file + * @param {string | Object} source - Project source + * @returns {Promise} - SHA256 of the source + */ function setProjectFile(source) { - //logger.debug(source); - var sourcedata=''; - if (isJson(source)) { - sourcedata = JSON.stringify(source); - }else { - sourcedata = source; - } - logger.debug(typeof sourcedata); - + const sourcedata = isJson(source) ? JSON.stringify(source) : source; const sha256 = crypto.createHash("sha256").update(sourcedata).digest("hex"); - logger.debug("sha256:", sha256); - - //logger.debug(sourcedata); prisma.ow_projects_file - .create({ data: { sha256: sha256, source: sourcedata } }) + .create({ data: { sha256, source: sourcedata } }) .catch(logger.error); return sha256; } -// 工具函数:获取项目文件 +/** + * Get project file + * @param {string} sha256 - SHA256 of the source + * @returns {Promise<{ source: string }>} - Project source + */ async function getProjectFile(sha256) { return prisma.ow_projects_file.findFirst({ where: { sha256 }, @@ -105,13 +127,22 @@ async function getProjectFile(sha256) { }); } -// 工具函数:处理错误响应 +/** + * Handle error response + * @param {Response} res - Response object + * @param {Error} err - Error object + * @param {string} msg - Error message + * @returns {void} + */ function handleError(res, err, msg) { logger.error(err); res.status(500).send({ status: "0", msg, error: err }); } -// 工具函数:选择项目信息字段 +/** + * Select project information fields + * @returns {Object} - Selected fields + */ function projectSelectionFields() { return { id: true, @@ -128,7 +159,10 @@ function projectSelectionFields() { }; } -// 工具函数:选择作者信息字段 +/** + * Select author information fields + * @returns {Object} - Selected fields + */ function authorSelectionFields() { return { id: true, @@ -141,6 +175,17 @@ function authorSelectionFields() { }; } +// 工具函数:判断是否为有效 JSON +function isJson(str) { + try { + JSON.stringify(str); + return true; + } catch (error) { + logger.debug(error); + return false; + } +} + module.exports = { getProjectsByList, getUsersByList, @@ -149,7 +194,8 @@ module.exports = { isJson, setProjectFile, getProjectFile, - handleError, projectSelectionFields, authorSelectionFields, + extractProjectTags, + handleTagsChange, }; diff --git a/server/lib/method/users.js b/server/lib/method/users.js index 7a949cd..cb56cdd 100644 --- a/server/lib/method/users.js +++ b/server/lib/method/users.js @@ -22,7 +22,7 @@ async function getUsersByList(list) { select: select, }); - //logger.debug(users); + logger.debug(users); return users; } diff --git a/server/router_project.js b/server/router_project.js index 823507b..2df3694 100644 --- a/server/router_project.js +++ b/server/router_project.js @@ -6,16 +6,12 @@ const DB = require("./lib/database.js"); const I = require("./lib/global.js"); const default_project = require("./lib/default_project.js"); const { - getProjectsByList, - getUsersByList, - getProjectsAndUsersByProjectsList, extractProjectData, - isJson, setProjectFile, getProjectFile, - handleError, projectSelectionFields, authorSelectionFields, + handleTagsChange, } = require("./lib/method/projects.js"); const { Logger } = require("winston"); // 中间件,确保所有请求均经过该处理 @@ -94,7 +90,7 @@ router.put("/:id/source", async (req, res, next) => { } //logger.debug(req.body); var reqbody = req.body - logger.debug('1111111111111'); + //logger.debug('1111111111111'); logger.debug(typeof reqbody); const sha256 = setProjectFile(reqbody); const projectId = Number(req.params.id); @@ -132,6 +128,11 @@ router.put("/:id", async (req, res, next) => { where: { id: Number(req.params.id), authorid: Number(res.locals.userid) }, data: updatedData, }); + // 处理标签 + if(req.body.tags){ + await handleTagsChange(Number(req.params.id), req.body.tags); + } + res.status(200).send({ status: "1", msg: "保存成功" }); } catch (err) { logger.error("Error updating project information:", err); @@ -204,7 +205,16 @@ router.get("/:id", async (req, res, next) => { where: { id: Number(project.authorid) }, select: authorSelectionFields(), }); + + const tags = await I.prisma.ow_projects_tags.findMany({ + where: { projectid: Number(req.params.id) }, + select: { name: true, id: true ,created_at: true}, + }); + project.author = author; + project.tags = tags + logger.debug(tags); + logger.debug(project); res.status(200).send(project); } catch (err) { logger.error("Error fetching project information:", err); diff --git a/server/router_scratch.js b/server/router_scratch.js index c33fc00..a4cfa34 100644 --- a/server/router_scratch.js +++ b/server/router_scratch.js @@ -12,16 +12,7 @@ var I = require("./lib/global.js"); const { log, error } = require("console"); const { needlogin } = require("./middleware/auth.js"); const { - getProjectsByList, - getUsersByList, - getProjectsAndUsersByProjectsList, - extractProjectData, - isJson, - setProjectFile, getProjectFile, - handleError, - projectSelectionFields, - authorSelectionFields, } = require("./lib/method/projects.js"); router.all("*", function (req, res, next) { next(); diff --git a/server/router_search.js b/server/router_search.js index e13de3e..4a28690 100644 --- a/server/router_search.js +++ b/server/router_search.js @@ -5,7 +5,9 @@ const express = require("express"); const router = express.Router(); const I = require("./lib/global.js"); // 功能函数集 const DB = require("./lib/database.js"); // 数据库 - +const { + getUsersByList +} = require("./lib/method/projects.js"); // 搜索:Scratch项目列表:数据(只搜索标题) router.get("/", async (req, res, next) => { try { @@ -42,17 +44,30 @@ router.get("/", async (req, res, next) => { const orderBy = orderbyMap[orderbyField] || "time"; const order = orderDirectionMap[orderDirection] || "desc"; - // 搜索条件 + // 构建基本搜索条件 const searchinfo = { - title: { contains: title }, + title: title ? { contains: title } : undefined, source: source ? { contains: source } : undefined, - description: { contains: description }, - type: { contains: type }, + description: description ? { contains: description } : undefined, + type: type ? { contains: type } : undefined, state: { in: state }, - tags: { contains: tags }, authorid: userid ? { equals: Number(userid) } : undefined, }; + // 添加标签搜索条件 + if (tags) { + searchinfo['tags'] = { + some: { + name: { contains: tags } + } + }; + } + + // 查询项目总数 + const totalCount = await I.prisma.ow_projects.count({ + where: searchinfo, + }); + // 查询项目结果 const projectresult = await I.prisma.ow_projects.findMany({ where: searchinfo, @@ -66,34 +81,25 @@ router.get("/", async (req, res, next) => { description: true, view_count: true, time: true, - tags: true, + tags: { + select: { + name: true, + id: true + } + } }, skip: (Number(curr) - 1) * Number(limit), take: Number(limit), }); - logger.debug(searchinfo); - // 统计项目总数 - const projectcount = await I.prisma.ow_projects.count({ - where: searchinfo, - }); // 获取作者信息 const authorIds = [...new Set(projectresult.map((item) => item.authorid))]; - const userresult = await I.prisma.ow_users.findMany({ - where: { id: { in: authorIds } }, - select: { - id: true, - username: true, - display_name: true, - motto: true, - images: true, - }, - }); + const userresult = await getUsersByList(authorIds); res.status(200).send({ projects: projectresult, users: userresult, - totalCount: [{ totalCount: projectcount }], + totalCount: [{ totalCount }], }); } catch (error) { next(error);