From bb90aa29a097a6a7ad01feb44124d2e2c9205669 Mon Sep 17 00:00:00 2001 From: zhangjiming Date: Tue, 11 Feb 2025 17:15:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/services/user/userManager.ts | 4 ++ src/views/userManage/UserManage.vue | 45 ++++++++++++++------- src/views/userManage/components/AddUser.vue | 62 +++++++++++++++++++++++++++++ 3 files changed, 96 insertions(+), 15 deletions(-) create mode 100644 src/views/userManage/components/AddUser.vue diff --git a/src/services/user/userManager.ts b/src/services/user/userManager.ts index 914574f..bc80667 100644 --- a/src/services/user/userManager.ts +++ b/src/services/user/userManager.ts @@ -19,3 +19,7 @@ export function getUserList(params: { pageNum: number; pageSize: number }) { export function getCurrentUser() { return httpRequest>({ url: "/api/user/current" }); } + +export function createUser(params: { username: string; nickname: string; password: string }) { + return httpRequest({ url: "/api/user/", method: "POST", params }); +} diff --git a/src/views/userManage/UserManage.vue b/src/views/userManage/UserManage.vue index f6fe33c..6f5ba88 100644 --- a/src/views/userManage/UserManage.vue +++ b/src/views/userManage/UserManage.vue @@ -1,7 +1,7 @@ @@ -34,7 +38,8 @@ import icon_unselect from "@/assets/Icon-unselect.svg"; import icon_select from "@/assets/Icon-select.svg"; import { showToast } from "vant"; import { onMounted, ref } from "vue"; -import { getCurrentUser, getUserList, type User } from "@/services/user/userManager"; +import { createUser, getCurrentUser, getUserList, type User } from "@/services/user/userManager"; +import AddUser from "./components/AddUser.vue"; const isSelect = ref(false); const opDisable = ref(true); @@ -42,7 +47,7 @@ const showEditDialog = ref(false); const userList = ref([]); -onMounted(() => { +function getUsers() { getUserList({ pageNum: 1, pageSize: 9999 }).then(res => { if (res.success) { userList.value = res.data.list; @@ -50,14 +55,24 @@ onMounted(() => { showToast(res.msg); } }); +} + +onMounted(() => { + getUsers(); }); -function addUser() { - // TEST - getCurrentUser().then(res => { - if (res.success) { - console.log("current user:", res.data) - } - }) +function onAddUser() { + showEditDialog.value = true; +} + +function addUser(user: { username: string; nickname: string; password: string }) { + createUser(user).then(res => { + if (res.success) { + showEditDialog.value = false; + getUsers(); + } else { + showToast(res.msg); + } + }); } diff --git a/src/views/userManage/components/AddUser.vue b/src/views/userManage/components/AddUser.vue new file mode 100644 index 0000000..c872ac7 --- /dev/null +++ b/src/views/userManage/components/AddUser.vue @@ -0,0 +1,62 @@ + + +