diff --git a/.vscode/launch.json b/.vscode/launch.json index 7740e81..9ba9547 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -9,7 +9,7 @@ "url": "http://localhost:5555", "env": { "NODE_ENV": "development" }, "sourceMaps": true, - "webRoot": "${workspaceFolder}" + "webRoot": "${workspaceFolder}/apps/web-antd" }, { "type": "chrome", diff --git a/.vscode/settings.json b/.vscode/settings.json index 8b76b27..c61a369 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,6 +1,7 @@ { "tailwindCSS.experimental.configFile": "internal/tailwind-config/src/index.ts", // workbench + "editor.fontFamily": "JetBrains Mono, Menlo, Monaco, 'Courier New', monospace", "workbench.list.smoothScrolling": true, "workbench.startupEditor": "newUntitledFile", "workbench.tree.indent": 10, diff --git a/apps/web-antd/.vscode/launch.json b/apps/web-antd/.vscode/launch.json index 3c3a1b8..14ebc57 100644 --- a/apps/web-antd/.vscode/launch.json +++ b/apps/web-antd/.vscode/launch.json @@ -6,29 +6,13 @@ "configurations": [ { - "name": "Launch via NPM", - "request": "launch", - "runtimeArgs": [ - "dev", - "antd", - ], - "runtimeExecutable": "pnpm", - "skipFiles": [ - "/**" - ], - "type": "node" + "type": "chrome", + "name": "vben admin antd dev", + "request": "launch", + "url": "http://localhost:5666", + "env": { "NODE_ENV": "development" }, + "sourceMaps": true, + "webRoot": "${workspaceFolder}" }, - { - "address": "localhost", - "localRoot": "${workspaceFolder}", - "name": "Attach to Remote", - "port": 5666, - "remoteRoot": "F:/Github/admin/apps", - "request": "attach", - "skipFiles": [ - "/**" - ], - "type": "node" - } ] } \ No newline at end of file diff --git a/apps/web-antd/.vscode/settings.json b/apps/web-antd/.vscode/settings.json new file mode 100644 index 0000000..99205dd --- /dev/null +++ b/apps/web-antd/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "workbench.colorTheme": "GitHub Light Colorblind (Beta)" +} \ No newline at end of file diff --git a/apps/web-antd/public/MMM_loading_logo1.png b/apps/web-antd/public/MMM_loading_logo1.png new file mode 100644 index 0000000..4038522 Binary files /dev/null and b/apps/web-antd/public/MMM_loading_logo1.png differ diff --git a/apps/web-antd/src/api/core/admin.user.ts b/apps/web-antd/src/api/core/admin.user.ts new file mode 100644 index 0000000..8904d1e --- /dev/null +++ b/apps/web-antd/src/api/core/admin.user.ts @@ -0,0 +1,17 @@ +import { requestClient } from '#/api/request'; +import type { UserInfo } from '#/model/admin.user'; + +export interface UserParam { + uid: string; +} +export async function getAdminInfoApi(param: UserParam) { + return requestClient.post('/admin/info', param); +} + +export async function getAdminListApi() { + return requestClient.post('/admin/list'); +} + +export async function addAdminApi(param: UserInfo) { + return requestClient.post('/admin/add', param); +} diff --git a/apps/web-antd/src/api/core/auth.ts b/apps/web-antd/src/api/core/auth.ts index 71d9f99..0ebabe7 100644 --- a/apps/web-antd/src/api/core/auth.ts +++ b/apps/web-antd/src/api/core/auth.ts @@ -7,6 +7,11 @@ export namespace AuthApi { username?: string; } + export interface PhoneCodeParams { + phoneNumber?: string; + code?:string; + } + /** 登录接口返回值 */ export interface LoginResult { accessToken: string; @@ -25,6 +30,9 @@ export async function loginApi(data: AuthApi.LoginParams) { return requestClient.post('/auth/login', data); } +export async function phoneLoginApi(data: AuthApi.PhoneCodeParams) { + return requestClient.post('/auth/phoneLogin', data); +} /** * 刷新accessToken */ @@ -47,5 +55,17 @@ export async function logoutApi() { * 获取用户权限码 */ export async function getAccessCodesApi() { - return requestClient.get('/auth/codes'); + return requestClient.get('/auth/Codes'); } + +/** + * 获取手机验证码 + * @param phoneNumber + * @returns + */ +export async function getPhoneCodeApi(phoneNumber: string) { + return requestClient.post('/auth/phoneCode', { + phoneNumber, + }); +} + diff --git a/apps/web-antd/src/api/core/player.ts b/apps/web-antd/src/api/core/player.ts deleted file mode 100644 index ba41193..0000000 --- a/apps/web-antd/src/api/core/player.ts +++ /dev/null @@ -1,11 +0,0 @@ - -import { requestClient } from '#/api/request'; -import type { PlayerInfo } from '#/model/player'; - -export interface PlayerParam { - uid :string -} -export async function getPlayerInfoApi(param : PlayerParam) { - return requestClient.post('/player/info', param); -} - \ No newline at end of file diff --git a/apps/web-antd/src/layouts/auth.vue b/apps/web-antd/src/layouts/auth.vue index 18d415b..a79a372 100644 --- a/apps/web-antd/src/layouts/auth.vue +++ b/apps/web-antd/src/layouts/auth.vue @@ -1,13 +1,10 @@ diff --git a/apps/web-antd/src/views/admin/user/addUser.vue b/apps/web-antd/src/views/admin/user/addUser.vue new file mode 100644 index 0000000..bdf9489 --- /dev/null +++ b/apps/web-antd/src/views/admin/user/addUser.vue @@ -0,0 +1,108 @@ + + + diff --git a/apps/web-antd/src/views/admin/user/index.vue b/apps/web-antd/src/views/admin/user/index.vue new file mode 100644 index 0000000..c06b42b --- /dev/null +++ b/apps/web-antd/src/views/admin/user/index.vue @@ -0,0 +1,6 @@ + + diff --git a/apps/web-antd/src/views/admin/user/user-table.vue b/apps/web-antd/src/views/admin/user/user-table.vue new file mode 100644 index 0000000..6b455db --- /dev/null +++ b/apps/web-antd/src/views/admin/user/user-table.vue @@ -0,0 +1,61 @@ + + + diff --git a/apps/web-antd/src/views/operation/mail/mail-info.vue b/apps/web-antd/src/views/operation/mail/mail-info.vue index b2d4669..c5b3e78 100644 --- a/apps/web-antd/src/views/operation/mail/mail-info.vue +++ b/apps/web-antd/src/views/operation/mail/mail-info.vue @@ -1,17 +1,15 @@ diff --git a/playground/src/views/_core/authentication/code-login.vue b/playground/src/views/_core/authentication/code-login.vue index 556b273..0552e91 100644 --- a/playground/src/views/_core/authentication/code-login.vue +++ b/playground/src/views/_core/authentication/code-login.vue @@ -30,6 +30,10 @@ const formSchema = computed((): VbenFormSchema[] => { { component: 'VbenPinInput', componentProps: { + updated() { + loading.value = false; + console.log('PinInput updated'); + }, createText: (countdown: number) => { const text = countdown > 0