From 32368caf1be91263cae10db93e7ccf6b2ba7feb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BB=96=E5=BD=A6=E6=A3=8B?= Date: Mon, 11 Mar 2024 15:59:15 +0800 Subject: [PATCH] =?UTF-8?q?feat(ui):=20=E6=96=B0=E5=A2=9E=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E7=AE=A1=E7=90=86=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gpt-vue/packages/request/index.ts | 2 +- gpt-vue/pnpm-lock.yaml | 104 ---------------- gpt-vue/projects/vue-admin/.env.development | 1 - gpt-vue/projects/vue-admin/.env.production | 1 - .../src/components/ConfirmSwitch.vue | 4 +- gpt-vue/projects/vue-admin/src/http/config.ts | 2 +- gpt-vue/projects/vue-admin/src/router/menu.ts | 10 ++ .../src/views/SysAdmin/SysAdminContainer.vue | 115 ++++++++++++++++++ .../src/views/SysAdmin/SysAdminForm.vue | 39 ++++++ .../src/views/SysAdmin/SysAdminResetPWD.vue | 28 +++++ .../vue-admin/src/views/SysAdmin/api.ts | 33 +++++ gpt-vue/projects/vue-admin/vite.config.ts | 9 +- 12 files changed, 233 insertions(+), 115 deletions(-) create mode 100644 gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminContainer.vue create mode 100644 gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminForm.vue create mode 100644 gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminResetPWD.vue create mode 100644 gpt-vue/projects/vue-admin/src/views/SysAdmin/api.ts diff --git a/gpt-vue/packages/request/index.ts b/gpt-vue/packages/request/index.ts index 23e452ef..63ba3326 100644 --- a/gpt-vue/packages/request/index.ts +++ b/gpt-vue/packages/request/index.ts @@ -3,7 +3,7 @@ import tokenHandler from "./token"; const { _tokenData, refreshToken, setCurRequest } = tokenHandler(); -const createInstance = (baseURL: string = (import.meta as any).env.VITE_PROXY_BASE_URL) => { +const createInstance = (baseURL: string) => { const instance = axios.create({ baseURL, diff --git a/gpt-vue/pnpm-lock.yaml b/gpt-vue/pnpm-lock.yaml index d1395123..0df63689 100644 --- a/gpt-vue/pnpm-lock.yaml +++ b/gpt-vue/pnpm-lock.yaml @@ -127,110 +127,6 @@ importers: specifier: ^1.8.27 version: 1.8.27(typescript@5.3.3) - projects/vue-mobile: - dependencies: - pinia: - specifier: ^2.1.7 - version: 2.1.7(typescript@5.3.3)(vue@3.4.21) - vue: - specifier: ^3.4.15 - version: 3.4.21(typescript@5.3.3) - vue-router: - specifier: ^4.2.5 - version: 4.3.0(vue@3.4.21) - devDependencies: - '@rushstack/eslint-patch': - specifier: ^1.3.3 - version: 1.7.2 - '@tsconfig/node20': - specifier: ^20.1.2 - version: 20.1.2 - '@types/node': - specifier: ^20.11.10 - version: 20.11.24 - '@vitejs/plugin-vue': - specifier: ^5.0.3 - version: 5.0.4(vite@5.1.5)(vue@3.4.21) - '@vitejs/plugin-vue-jsx': - specifier: ^3.1.0 - version: 3.1.0(vite@5.1.5)(vue@3.4.21) - '@vue/eslint-config-typescript': - specifier: ^12.0.0 - version: 12.0.0(eslint-plugin-vue@9.22.0)(eslint@8.57.0)(typescript@5.3.3) - '@vue/tsconfig': - specifier: ^0.5.1 - version: 0.5.1 - eslint: - specifier: ^8.49.0 - version: 8.57.0 - eslint-plugin-vue: - specifier: ^9.17.0 - version: 9.22.0(eslint@8.57.0) - npm-run-all2: - specifier: ^6.1.1 - version: 6.1.2 - typescript: - specifier: ~5.3.0 - version: 5.3.3 - vite: - specifier: ^5.0.11 - version: 5.1.5(@types/node@20.11.24)(less@4.2.0) - vue-tsc: - specifier: ^1.8.27 - version: 1.8.27(typescript@5.3.3) - - projects/vue-web: - dependencies: - pinia: - specifier: ^2.1.7 - version: 2.1.7(typescript@5.3.3)(vue@3.4.21) - vue: - specifier: ^3.4.15 - version: 3.4.21(typescript@5.3.3) - vue-router: - specifier: ^4.2.5 - version: 4.3.0(vue@3.4.21) - devDependencies: - '@rushstack/eslint-patch': - specifier: ^1.3.3 - version: 1.7.2 - '@tsconfig/node20': - specifier: ^20.1.2 - version: 20.1.2 - '@types/node': - specifier: ^20.11.10 - version: 20.11.24 - '@vitejs/plugin-vue': - specifier: ^5.0.3 - version: 5.0.4(vite@5.1.5)(vue@3.4.21) - '@vitejs/plugin-vue-jsx': - specifier: ^3.1.0 - version: 3.1.0(vite@5.1.5)(vue@3.4.21) - '@vue/eslint-config-typescript': - specifier: ^12.0.0 - version: 12.0.0(eslint-plugin-vue@9.22.0)(eslint@8.57.0)(typescript@5.3.3) - '@vue/tsconfig': - specifier: ^0.5.1 - version: 0.5.1 - eslint: - specifier: ^8.49.0 - version: 8.57.0 - eslint-plugin-vue: - specifier: ^9.17.0 - version: 9.22.0(eslint@8.57.0) - npm-run-all2: - specifier: ^6.1.1 - version: 6.1.2 - typescript: - specifier: ~5.3.0 - version: 5.3.3 - vite: - specifier: ^5.0.11 - version: 5.1.5(@types/node@20.11.24)(less@4.2.0) - vue-tsc: - specifier: ^1.8.27 - version: 1.8.27(typescript@5.3.3) - packages: /@aashutoshrathi/word-wrap@1.2.6: diff --git a/gpt-vue/projects/vue-admin/.env.development b/gpt-vue/projects/vue-admin/.env.development index 7402abdd..74dbd9ad 100644 --- a/gpt-vue/projects/vue-admin/.env.development +++ b/gpt-vue/projects/vue-admin/.env.development @@ -1,3 +1,2 @@ VITE_PROXY_BASE_URL="/api" VITE_TARGET_URL="http://172.22.11.2:5678" -VITE_SOCKET_IO_URL="http://172.28.1.3:8899" diff --git a/gpt-vue/projects/vue-admin/.env.production b/gpt-vue/projects/vue-admin/.env.production index a3c03b73..c70c13be 100644 --- a/gpt-vue/projects/vue-admin/.env.production +++ b/gpt-vue/projects/vue-admin/.env.production @@ -1,3 +1,2 @@ VITE_PROXY_BASE_URL="" VITE_TARGET_URL="/" -VITE_SOCKET_IO_URL="/" diff --git a/gpt-vue/projects/vue-admin/src/components/ConfirmSwitch.vue b/gpt-vue/projects/vue-admin/src/components/ConfirmSwitch.vue index 6f667023..8685e61e 100644 --- a/gpt-vue/projects/vue-admin/src/components/ConfirmSwitch.vue +++ b/gpt-vue/projects/vue-admin/src/components/ConfirmSwitch.vue @@ -8,6 +8,7 @@ type OriginProps = SwitchInstance["$props"]; interface Props extends /* @vue-ignore */ OriginProps { modelValue: boolean | string | number; api: (params?: any) => Promise>; + onSuccess?: (res?: any) => void; } const props = defineProps(); @@ -23,8 +24,9 @@ const _value = computed({ const onBeforeChange = async (params) => { try { - await props.api({ ...params, value: !_value.value }); + const res = await props.api({ ...params, value: !_value.value }); Message.success("操作成功"); + props?.onSuccess?.(res); return true; } catch (err) { console.log(err); diff --git a/gpt-vue/projects/vue-admin/src/http/config.ts b/gpt-vue/projects/vue-admin/src/http/config.ts index 1d024a94..e35fdd01 100644 --- a/gpt-vue/projects/vue-admin/src/http/config.ts +++ b/gpt-vue/projects/vue-admin/src/http/config.ts @@ -5,7 +5,7 @@ import type { BaseResponse } from "@gpt-vue/packages/type"; export const uploadUrl = import.meta.env.VITE_PROXY_BASE_URL + "/api/admin/upload"; -export const instance = createInstance() +export const instance = createInstance(import.meta.env.VITE_PROXY_BASE_URL) instance.interceptors.request.use((config) => { config.headers[__AUTH_KEY] = localStorage.getItem(__AUTH_KEY); diff --git a/gpt-vue/projects/vue-admin/src/router/menu.ts b/gpt-vue/projects/vue-admin/src/router/menu.ts index 9b047a6a..c2ee06bb 100644 --- a/gpt-vue/projects/vue-admin/src/router/menu.ts +++ b/gpt-vue/projects/vue-admin/src/router/menu.ts @@ -11,6 +11,7 @@ import { IconLock, IconCodepen, IconWechatpay, + IconRobot, } from "@arco-design/web-vue/es/icon"; const menu = [ @@ -123,6 +124,15 @@ const menu = [ }, component: () => import("@/views/LoginLog.vue"), }, + { + path: "/sysAdmin", + name: "SysAdmin", + meta: { + title: "系统管理员", + icon: IconRobot, + }, + component: () => import("@/views/SysAdmin/SysAdminContainer.vue"), + }, ]; export default menu; diff --git a/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminContainer.vue b/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminContainer.vue new file mode 100644 index 00000000..b559059d --- /dev/null +++ b/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminContainer.vue @@ -0,0 +1,115 @@ + + diff --git a/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminForm.vue b/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminForm.vue new file mode 100644 index 00000000..ba61f6b8 --- /dev/null +++ b/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminForm.vue @@ -0,0 +1,39 @@ + + + diff --git a/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminResetPWD.vue b/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminResetPWD.vue new file mode 100644 index 00000000..f4105540 --- /dev/null +++ b/gpt-vue/projects/vue-admin/src/views/SysAdmin/SysAdminResetPWD.vue @@ -0,0 +1,28 @@ + + + diff --git a/gpt-vue/projects/vue-admin/src/views/SysAdmin/api.ts b/gpt-vue/projects/vue-admin/src/views/SysAdmin/api.ts new file mode 100644 index 00000000..7b18f49e --- /dev/null +++ b/gpt-vue/projects/vue-admin/src/views/SysAdmin/api.ts @@ -0,0 +1,33 @@ +import http from "@/http/config"; + +export const getList = (params) => { + return http({ + url: "/api/admin/sysUser/list", + method: "get", + params + }) +} + +export const save = (data) => { + return http({ + url: "/api/admin/sysUser/save", + method: "post", + data + }) +} + +export const remove = (data) => { + return http({ + url: "/api/admin/sysUser/remove", + method: "post", + data + }) +} + +export const resetPass = (data) => { + return http({ + url: "/api/admin/sysUser/resetPass", + method: "post", + data + }) +} \ No newline at end of file diff --git a/gpt-vue/projects/vue-admin/vite.config.ts b/gpt-vue/projects/vue-admin/vite.config.ts index 18f5fbed..2b6c0f6e 100644 --- a/gpt-vue/projects/vue-admin/vite.config.ts +++ b/gpt-vue/projects/vue-admin/vite.config.ts @@ -36,12 +36,9 @@ export default defineConfig(({ mode }) => { output: { manualChunks: (id) => { if (id.includes("node_modules")) { - if (id.includes("arco")) { - return `arco`; - } - if (id.includes("vue") && !id.includes("arco")) { - return `vue`; - } + if (id.includes("echats")) return `echats`; + if (id.includes("arco")) return `arco`; + if (id.includes("vue") && !id.includes("arco")) return `vue`; return `vendor`; } },