<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # **查** ## **路由** ``` router.get("/admin/user/list/:id?", UserController.getUserList); // 獲取用戶列表,動態傳參,可選的路由參數 ``` ## **controller** ``` getUserList: async (req, res) => { let id = req.query.id || ""; // 是否根據單個id獲取指定id的用戶信息 默認為空 /admin/user/list?id=1 if (!id) { id = req.params.id || ""; // 是否根據單個id獲取指定id的用戶信息 默認為空 /admin/user/list/1 } let { results, total } = await UserServices.getUserList(id, req.query); res.send({ code: 200, data: { lists: id ? results[0] : results, total, }, }); }, ``` ## **service** ``` getUserList: async (id, query) => { let idQuery = { username: { $ne: "admin" }, // 排除username是admin的用戶 }; let queryFields = ["username", "gender", "role", "description", "avatar"]; if (id) { idQuery._id = id; // 查詢指定id的用戶 queryFields = null; // 返回全部字段 } const skipValue = ((query.page || 1) - 1) * (query.limit || 2); // 從數據庫第n條數據開始查詢 let data = await UserModel.find(idQuery, queryFields) .skip(skipValue) .limit(query.limit || 2).sort({ gender: -1 });// 分頁查詢,根據性別降序排序(1:升序,-1:降序) return { results: data, total: await UserModel.countDocuments(idQuery),// 查詢總數 }; } ``` # **刪** ## **路由** ``` router.delete("/admin/user/delete/:id", UserController.deleteUser); ``` ## **controller** ``` deleteUser: async (req, res) => { await UserServices.deleteUser(req.params.id); res.send({ code: 200, msg: "刪除成功" }); }, ``` ## **service** ``` deleteUser: async (_id) => { return UserModel.deleteOne({ _id }); }, ``` # **增** ## **路由** ``` router.post("/admin/user/add", upload.single("file"), UserController.addUser); // 添加用戶 ``` ## **controller** ``` addUser: async (req, res) => { let data = { username: req.body.username, password: req.body.password, instanceof: req.body.instanceof, role: Number(req.body.role), gender: Number(req.body.gender), avatar: `/uploads/avatar/${req.file.filename}`, }; await UserServices.addUser(data); res.send({ code: 200, msg: "添加成功" }); }, ``` ## **service** ``` addUser: async (userData) => { return UserModel.create(userData); }, ``` # **改** ## **路由** ``` // 修改指定id用戶 router.put("/admin/user/updateUser", UserController.updateUser); ``` ``` // 修改當前登錄用戶信息 router.post( "/admin/user/update", upload.single("file"), UserController.updateUserInfo ); ``` ## **controller** ``` // 修改指定id用戶 updateUser: async (req, res) => { let data = { username: req.body.username, password: req.body.password, role: Number(req.body.role), instanceof: req.body.instanceof, }; await UserServices.updateUser(req.body._id, data); res.send({ code: 200, msg: "更新成功" }); }, ``` ``` // 修改當前登錄用戶信息 updateUserInfo: async (req, res) => { const token = req.headers.authorization.split(" ")[1]; const payload = jwt.verify(token); let data = { username: req.body.username, gender: Number(req.body.gender), }; if (req.file) { data.avatar = `/uploads/avatar/${req.file.filename}`; } await UserServices.updateUserInfo(payload._id, data); res.send({ code: 200, msg: "更新成功" }); }, ``` ## **service** ``` // 修改指定id用戶 updateUser: async (_id, updateData) => { return UserModel.updateOne({ _id }, updateData); }, ``` ``` // 修改當前登錄用戶信息 updateUserInfo: async (_id, updateData) => { return UserModel.updateOne(_id, updateData); }, ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看