@maketribe/ms-app 3.0.43 → 3.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/core/MSAppClient.d.ts +6 -1
- package/dist/cjs/core/MSAppClient.js +0 -6
- package/dist/cjs/core/MSAppClient.js.map +1 -1
- package/dist/cjs/dataview/member/MemberTable.js +76 -1
- package/dist/cjs/dataview/member/MemberTable.js.map +1 -1
- package/dist/cjs/layouts/components/header/tools.js +35 -24
- package/dist/cjs/layouts/components/header/tools.js.map +1 -1
- package/dist/esm/core/MSAppClient.d.ts +6 -1
- package/dist/esm/core/MSAppClient.js +0 -6
- package/dist/esm/core/MSAppClient.js.map +1 -1
- package/dist/esm/dataview/member/MemberTable.js +76 -1
- package/dist/esm/dataview/member/MemberTable.js.map +1 -1
- package/dist/esm/layouts/components/header/tools.js +35 -24
- package/dist/esm/layouts/components/header/tools.js.map +1 -1
- package/package.json +1 -1
|
@@ -79,5 +79,10 @@ export declare class MSAppClient {
|
|
|
79
79
|
avatarPath: string;
|
|
80
80
|
}>, any>>;
|
|
81
81
|
logout(): Promise<import("@maketribe/request").ResponseConfig<any, any>>;
|
|
82
|
-
changePassword(password: string, newPassword: string): Promise<import("@maketribe/request").ResponseConfig<
|
|
82
|
+
changePassword(password: string, newPassword: string): Promise<import("@maketribe/request").ResponseConfig<R<{
|
|
83
|
+
account: string;
|
|
84
|
+
email: string;
|
|
85
|
+
nickName: string;
|
|
86
|
+
avatarPath: string;
|
|
87
|
+
}>, any>>;
|
|
83
88
|
}
|
|
@@ -156,17 +156,11 @@ class MSAppClient {
|
|
|
156
156
|
return this.httpRequest.get("/api/ms-login/logout");
|
|
157
157
|
}
|
|
158
158
|
async changePassword(password, newPassword) {
|
|
159
|
-
console.log(454);
|
|
160
159
|
const response = await this.httpRequest.request({
|
|
161
160
|
url: "/api/dv/ms-member/modify/password",
|
|
162
161
|
method: "POST",
|
|
163
162
|
data: { password: utils.md5(`mkbl#${password}`), newPassword: utils.md5(`mkbl#${newPassword}`) }
|
|
164
163
|
});
|
|
165
|
-
if (response.data.code == 200) {
|
|
166
|
-
this.userSession?.dispose();
|
|
167
|
-
this.setUserSession(null);
|
|
168
|
-
return this.httpRequest.get("/api/ms-login/logout");
|
|
169
|
-
}
|
|
170
164
|
return response;
|
|
171
165
|
}
|
|
172
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\r\n createRouter,\r\n createWebHashHistory,\r\n Router as VueRouter,\r\n} from \"vue-router\";\r\nimport {\r\n DataViewRequest,\r\n DVQueryable,\r\n HttpRequest,\r\n R,\r\n WebHttpRequest,\r\n} from \"@maketribe/request\";\r\nimport { IComponents, DataModel, Components, Messager } from \"@maketribe/dm\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nimport { Event, md5 } from \"@maketribe/utils\";\r\nimport { UserSession } from \"./UserSession\";\r\nimport { authBeforeEach } from \"../router-middleware\";\r\nimport { PageManager } from \"./PageManager\";\r\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\r\n\r\nexport type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n};\r\n\r\nexport interface MSAppClientOptions {\r\n pageManager?: PageManager;\r\n projectName: string;\r\n httpRequest?: HttpRequest;\r\n origin: string;\r\n appID: string;\r\n logo?: string;\r\n locale?: string;\r\n vueRouter?: VueRouter;\r\n dataTableComponents?: IComponents;\r\n dataFormComponents?: IComponents;\r\n dataFilterComponents?: IComponents;\r\n whereFilterComponents?: IComponents;\r\n}\r\n\r\nexport class MSAppClient {\r\n static instance: MSAppClient | null = null;\r\n\r\n origin: string = \"\";\r\n\r\n private _options: Required<MSAppClientOptions>;\r\n\r\n projectName: string;\r\n\r\n logo: string;\r\n\r\n appID: string;\r\n\r\n userSession: UserSession | null = null;\r\n\r\n httpRequest: HttpRequest;\r\n\r\n ready: boolean = false;\r\n\r\n initd: boolean = false;\r\n\r\n pageManager: PageManager;\r\n\r\n /**\r\n * @deprecated\r\n * @description 使用 MSAppClient.instance.userSession.userInfo\r\n */\r\n get userInfo() {\r\n return this.userSession?.userInfo ?? null;\r\n }\r\n\r\n i18n: I18n;\r\n\r\n dataTableComponents: IComponents;\r\n dataFormComponents: IComponents;\r\n dataFilterComponents: IComponents;\r\n whereFilterComponents: IComponents;\r\n\r\n vueRouter: VueRouter;\r\n\r\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\r\n\r\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\r\n new Event();\r\n\r\n constructor(options: MSAppClientOptions) {\r\n this._options = this._normalizeOptions(options);\r\n\r\n this.appID = this._options.appID;\r\n\r\n this.logo = this._options.logo;\r\n\r\n this.projectName = options.projectName;\r\n\r\n this.i18n = I18n.instance;\r\n this.i18n.setCurrentLanguageName(this._options.locale);\r\n\r\n this.dataTableComponents = this._options.dataTableComponents;\r\n this.dataFormComponents = this._options.dataFormComponents;\r\n this.dataFilterComponents = this._options.dataFilterComponents;\r\n this.whereFilterComponents = this._options.whereFilterComponents;\r\n\r\n this.vueRouter = this._options.vueRouter;\r\n\r\n this.pageManager = this._options.pageManager;\r\n\r\n HttpRequest.appID = this.appID;\r\n\r\n this.httpRequest = this._options.httpRequest;\r\n\r\n DataModel.setHttpRequest(this.httpRequest);\r\n DVQueryable.setDefaultDataViewRequest(\r\n new DataViewRequest({ httpRequest: this.httpRequest })\r\n );\r\n }\r\n\r\n setUserSession(userSession: UserSession | null) {\r\n if (this.userSession) {\r\n this.userSession.dispose();\r\n }\r\n\r\n this.userSession = userSession;\r\n\r\n this.userSessionChangeEvent.emit({ userSession });\r\n }\r\n\r\n private _normalizeOptions(\r\n options: MSAppClientOptions\r\n ): Required<MSAppClientOptions> {\r\n return {\r\n appID: options.appID,\r\n projectName: options.projectName,\r\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\r\n origin: options.origin,\r\n logo: options.logo || \"\",\r\n locale: options.locale || \"zh-cn\",\r\n vueRouter:\r\n options.vueRouter ??\r\n createRouter({\r\n history: createWebHashHistory(),\r\n routes: [],\r\n }),\r\n pageManager: options.pageManager ?? new PageManager(),\r\n dataTableComponents: options.dataTableComponents ?? new Components(),\r\n dataFormComponents: options.dataFormComponents ?? new Components(),\r\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\r\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\r\n };\r\n }\r\n getI18n() {\r\n return this.i18n;\r\n }\r\n\r\n getOptions() {\r\n return this._options;\r\n }\r\n\r\n async loadCurrentUserSession(options?: {\r\n accessToken: string;\r\n xAccessToken: string;\r\n }) {\r\n const userSession = (this.userSession = new UserSession({\r\n msAppClient: this,\r\n ...options,\r\n }));\r\n this.userSession = null;\r\n\r\n this.beforeInitUserSessionEvent.emit({ userSession });\r\n const userSessionInitResult = await userSession.init();\r\n\r\n if (userSessionInitResult?.data.code !== 200) {\r\n userSession.dispose();\r\n return userSessionInitResult!;\r\n }\r\n\r\n this.setUserSession(userSession);\r\n }\r\n\r\n async init() {\r\n if (this.initd) {\r\n return;\r\n }\r\n\r\n this.vueRouter.beforeEach(async (to, from, next) => {\r\n const route = await authBeforeEach(this, to, from);\r\n\r\n if (route) {\r\n next(route);\r\n return;\r\n }\r\n\r\n next();\r\n });\r\n\r\n this.pageManager.init();\r\n this.pageManager.setMSAppCLient(this);\r\n\r\n this.httpRequest.getInterceptors().response.use((config) => {\r\n if (config.data.code === 401) {\r\n this.vueRouter.push({ name: \"login\" });\r\n // if (this.userSession) {\r\n // this.userSession.lock();\r\n // } else {\r\n // this.vueRouter.push({ name: \"login\" });\r\n // }\r\n }\r\n return config;\r\n });\r\n\r\n this.initd = true;\r\n }\r\n\r\n async login(account: string, password: string, code: string) {\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/login\",\r\n method: \"POST\",\r\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\r\n });\r\n\r\n if (response.data.code === 200) {\r\n await this.loadCurrentUserSession({\r\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\r\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\r\n });\r\n }\r\n\r\n return response;\r\n }\r\n\r\n formatURL(url: string) {\r\n return url;\r\n }\r\n\r\n async modifyPassword(account: string, code: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/modify-password\",\r\n method: \"POST\",\r\n data: { account, vCode: code },\r\n });\r\n\r\n return response;\r\n }\r\n\r\n async logout() {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n async changePassword(password: string, newPassword: string) {\r\n console.log(454);\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/dv/ms-member/modify/password\",\r\n method: \"POST\",\r\n data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) },\r\n });\r\n if (response.data.code == 200) {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n return response;\r\n }\r\n}\r\n"],"names":["Event","I18n","HttpRequest","DataModel","DVQueryable","DataViewRequest","WebHttpRequest","createRouter","createWebHashHistory","PageManager","Components","UserSession","authBeforeEach","md5","ACCESS_TOKEN_HEADER","X_ACCESS_TOKEN_HEADER"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\r\n createRouter,\r\n createWebHashHistory,\r\n Router as VueRouter,\r\n} from \"vue-router\";\r\nimport {\r\n DataViewRequest,\r\n DVQueryable,\r\n HttpRequest,\r\n R,\r\n WebHttpRequest,\r\n} from \"@maketribe/request\";\r\nimport { IComponents, DataModel, Components, Messager } from \"@maketribe/dm\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nimport { Event, md5 } from \"@maketribe/utils\";\r\nimport { UserSession } from \"./UserSession\";\r\nimport { authBeforeEach } from \"../router-middleware\";\r\nimport { PageManager } from \"./PageManager\";\r\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\r\n\r\nexport type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n};\r\n\r\nexport interface MSAppClientOptions {\r\n pageManager?: PageManager;\r\n projectName: string;\r\n httpRequest?: HttpRequest;\r\n origin: string;\r\n appID: string;\r\n logo?: string;\r\n locale?: string;\r\n vueRouter?: VueRouter;\r\n dataTableComponents?: IComponents;\r\n dataFormComponents?: IComponents;\r\n dataFilterComponents?: IComponents;\r\n whereFilterComponents?: IComponents;\r\n}\r\n\r\nexport class MSAppClient {\r\n static instance: MSAppClient | null = null;\r\n\r\n origin: string = \"\";\r\n\r\n private _options: Required<MSAppClientOptions>;\r\n\r\n projectName: string;\r\n\r\n logo: string;\r\n\r\n appID: string;\r\n\r\n userSession: UserSession | null = null;\r\n\r\n httpRequest: HttpRequest;\r\n\r\n ready: boolean = false;\r\n\r\n initd: boolean = false;\r\n\r\n pageManager: PageManager;\r\n\r\n /**\r\n * @deprecated\r\n * @description 使用 MSAppClient.instance.userSession.userInfo\r\n */\r\n get userInfo() {\r\n return this.userSession?.userInfo ?? null;\r\n }\r\n\r\n i18n: I18n;\r\n\r\n dataTableComponents: IComponents;\r\n dataFormComponents: IComponents;\r\n dataFilterComponents: IComponents;\r\n whereFilterComponents: IComponents;\r\n\r\n vueRouter: VueRouter;\r\n\r\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\r\n\r\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\r\n new Event();\r\n\r\n constructor(options: MSAppClientOptions) {\r\n this._options = this._normalizeOptions(options);\r\n\r\n this.appID = this._options.appID;\r\n\r\n this.logo = this._options.logo;\r\n\r\n this.projectName = options.projectName;\r\n\r\n this.i18n = I18n.instance;\r\n this.i18n.setCurrentLanguageName(this._options.locale);\r\n\r\n this.dataTableComponents = this._options.dataTableComponents;\r\n this.dataFormComponents = this._options.dataFormComponents;\r\n this.dataFilterComponents = this._options.dataFilterComponents;\r\n this.whereFilterComponents = this._options.whereFilterComponents;\r\n\r\n this.vueRouter = this._options.vueRouter;\r\n\r\n this.pageManager = this._options.pageManager;\r\n\r\n HttpRequest.appID = this.appID;\r\n\r\n this.httpRequest = this._options.httpRequest;\r\n\r\n DataModel.setHttpRequest(this.httpRequest);\r\n DVQueryable.setDefaultDataViewRequest(\r\n new DataViewRequest({ httpRequest: this.httpRequest })\r\n );\r\n }\r\n\r\n setUserSession(userSession: UserSession | null) {\r\n if (this.userSession) {\r\n this.userSession.dispose();\r\n }\r\n\r\n this.userSession = userSession;\r\n\r\n this.userSessionChangeEvent.emit({ userSession });\r\n }\r\n\r\n private _normalizeOptions(\r\n options: MSAppClientOptions\r\n ): Required<MSAppClientOptions> {\r\n return {\r\n appID: options.appID,\r\n projectName: options.projectName,\r\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\r\n origin: options.origin,\r\n logo: options.logo || \"\",\r\n locale: options.locale || \"zh-cn\",\r\n vueRouter:\r\n options.vueRouter ??\r\n createRouter({\r\n history: createWebHashHistory(),\r\n routes: [],\r\n }),\r\n pageManager: options.pageManager ?? new PageManager(),\r\n dataTableComponents: options.dataTableComponents ?? new Components(),\r\n dataFormComponents: options.dataFormComponents ?? new Components(),\r\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\r\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\r\n };\r\n }\r\n getI18n() {\r\n return this.i18n;\r\n }\r\n\r\n getOptions() {\r\n return this._options;\r\n }\r\n\r\n async loadCurrentUserSession(options?: {\r\n accessToken: string;\r\n xAccessToken: string;\r\n }) {\r\n const userSession = (this.userSession = new UserSession({\r\n msAppClient: this,\r\n ...options,\r\n }));\r\n this.userSession = null;\r\n\r\n this.beforeInitUserSessionEvent.emit({ userSession });\r\n const userSessionInitResult = await userSession.init();\r\n\r\n if (userSessionInitResult?.data.code !== 200) {\r\n userSession.dispose();\r\n return userSessionInitResult!;\r\n }\r\n\r\n this.setUserSession(userSession);\r\n }\r\n\r\n async init() {\r\n if (this.initd) {\r\n return;\r\n }\r\n\r\n this.vueRouter.beforeEach(async (to, from, next) => {\r\n const route = await authBeforeEach(this, to, from);\r\n\r\n if (route) {\r\n next(route);\r\n return;\r\n }\r\n\r\n next();\r\n });\r\n\r\n this.pageManager.init();\r\n this.pageManager.setMSAppCLient(this);\r\n\r\n this.httpRequest.getInterceptors().response.use((config) => {\r\n if (config.data.code === 401) {\r\n this.vueRouter.push({ name: \"login\" });\r\n // if (this.userSession) {\r\n // this.userSession.lock();\r\n // } else {\r\n // this.vueRouter.push({ name: \"login\" });\r\n // }\r\n }\r\n return config;\r\n });\r\n\r\n this.initd = true;\r\n }\r\n\r\n async login(account: string, password: string, code: string) {\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/login\",\r\n method: \"POST\",\r\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\r\n });\r\n\r\n if (response.data.code === 200) {\r\n await this.loadCurrentUserSession({\r\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\r\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\r\n });\r\n }\r\n\r\n return response;\r\n }\r\n\r\n formatURL(url: string) {\r\n return url;\r\n }\r\n\r\n async modifyPassword(account: string, code: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/modify-password\",\r\n method: \"POST\",\r\n data: { account, vCode: code },\r\n });\r\n\r\n return response;\r\n }\r\n\r\n async logout() {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n async changePassword(password: string, newPassword: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/dv/ms-member/modify/password\",\r\n method: \"POST\",\r\n data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) },\r\n });\r\n \r\n return response;\r\n }\r\n}\r\n"],"names":["Event","I18n","HttpRequest","DataModel","DVQueryable","DataViewRequest","WebHttpRequest","createRouter","createWebHashHistory","PageManager","Components","UserSession","authBeforeEach","md5","ACCESS_TOKEN_HEADER","X_ACCESS_TOKEN_HEADER"],"mappings":"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"}
|
|
@@ -8,6 +8,65 @@ require('element-plus');
|
|
|
8
8
|
require('@maketribe/utils');
|
|
9
9
|
require('../../core/DataModelDefines.js');
|
|
10
10
|
var MSAppClient = require('../../core/MSAppClient.js');
|
|
11
|
+
require('../../components/data-model/data-form/index.js');
|
|
12
|
+
require('../../components/data-model/data-form-page/index.js');
|
|
13
|
+
require('../../components/data-model/data-table/index.js');
|
|
14
|
+
require('../../components/data-model/data-table-page/index.js');
|
|
15
|
+
require('../../components/data-model/data-table-pagination/index.js');
|
|
16
|
+
require('../../components/form-components/form-data-select/index.js');
|
|
17
|
+
require('../../components/form-components/form-icon-select/index.js');
|
|
18
|
+
require('../../components/form-components/form-radio-box/index.js');
|
|
19
|
+
require('../../components/form-components/form-detail/index.js');
|
|
20
|
+
require('../../components/form-components/form-data-table-select/index.js');
|
|
21
|
+
require('../../components/form-components/form-image-upload/index.js');
|
|
22
|
+
require('../../components/data-table-select/index.js');
|
|
23
|
+
require('../../components/form-components/form-detail-select/form-detail-select-options.js');
|
|
24
|
+
require('../../components/data-model/data-form/composables/use-form-item.js');
|
|
25
|
+
require('lodash-es');
|
|
26
|
+
require('../../components/form-components/form-date-picker/index.js');
|
|
27
|
+
require('../../components/form-components/form-rich-text-editor/index.js');
|
|
28
|
+
require('../../components/column-components/column-action/column-action-options.js');
|
|
29
|
+
var index = require('../../components/svg-icon/index.js');
|
|
30
|
+
require('../../components/button/button-options.js');
|
|
31
|
+
require('../../components/data-model/data-table/composables/use-column.js');
|
|
32
|
+
require('../../components/column-components/column-image/column-image-options.js');
|
|
33
|
+
require('../../components/image-view/index.js');
|
|
34
|
+
require('../../components/column-components/column-text/column-text-options.js');
|
|
35
|
+
require('../../components/column-components/column-object-mapping-text/column-object-mapping-text-options.js');
|
|
36
|
+
require('../../components/column-components/column-select/column-select-options.js');
|
|
37
|
+
require('../../components/column-components/column-select/column-select-header-options.js');
|
|
38
|
+
require('../../components/column-components/column-json/index.js');
|
|
39
|
+
require('../../components/column-components/column-date/column-date-options.js');
|
|
40
|
+
require('../../components/column-components/column-switch/column-switch-options.js');
|
|
41
|
+
require('../../components/column-components/column-tag/column-tag-options.js');
|
|
42
|
+
require('../../components/column-components/column-link/column-link-options.js');
|
|
43
|
+
require('../../components/condition-components/condition-input/index.js');
|
|
44
|
+
require('../../components/condition-components/condition-date/index.js');
|
|
45
|
+
require('../../components/condition-components/condition-number/index.js');
|
|
46
|
+
require('../../components/condition-components/condition-select/index.js');
|
|
47
|
+
require('../../components/config-provider/index.js');
|
|
48
|
+
require('../../components/video-view/index.js');
|
|
49
|
+
require('../../components/file-view/index.js');
|
|
50
|
+
require('../../components/data-table-select-dialog/index.js');
|
|
51
|
+
require('../../components/data-select/index.js');
|
|
52
|
+
require('../../components/pagination/index.js');
|
|
53
|
+
require('../../components/markdown-editor/index.js');
|
|
54
|
+
require('../../components/rich-text-editor/index.js');
|
|
55
|
+
require('../../components/system-provider/index.js');
|
|
56
|
+
require('../../components/material-list/index.js');
|
|
57
|
+
require('../../components/material-select/index.js');
|
|
58
|
+
require('../../components/role-permission-config/index.js');
|
|
59
|
+
require('../../components/image-select/index.js');
|
|
60
|
+
require('../../components/verify-dialog/index.js');
|
|
61
|
+
require('../../components/json-editor/index.js');
|
|
62
|
+
require('../../components/upload-file/upload-file.js');
|
|
63
|
+
require('@maketribe/request');
|
|
64
|
+
require('../../components/upload-file/context/material-upload-context.js');
|
|
65
|
+
require('../../components/upload-file/context/material-upload-context-options.js');
|
|
66
|
+
require('../../components/upload-file/context/web-file-upload-context.js');
|
|
67
|
+
require('../../components/upload-file/context/web-file-upload-context-options.js');
|
|
68
|
+
require('../../components/upload-file/ui/upload-image/index.js');
|
|
69
|
+
require('../../components/upload-file/upload-file-options.js');
|
|
11
70
|
|
|
12
71
|
class MemberTable extends dm.DataTable {
|
|
13
72
|
constructor(options = {}) {
|
|
@@ -149,7 +208,23 @@ class MemberTable extends dm.DataTable {
|
|
|
149
208
|
}
|
|
150
209
|
const res = await dm.Dialoger.instance.confirm({
|
|
151
210
|
title: "\u91CD\u7F6E\u5BC6\u7801\u6210\u529F",
|
|
152
|
-
message: vue.createVNode("p", null, [vue.createVNode("span", null, [vue.createTextVNode("\u4F60\u7684\u65B0\u5BC6\u7801\u4E3A"),
|
|
211
|
+
message: vue.createVNode("p", null, [vue.createVNode("span", null, [vue.createTextVNode("\u4F60\u7684\u65B0\u5BC6\u7801\u4E3A\uFF1A"), vue.createVNode("span", {
|
|
212
|
+
"style": {
|
|
213
|
+
color: "#1890ff"
|
|
214
|
+
}
|
|
215
|
+
}, [response.data.data]), vue.createTextVNode(" "), vue.createVNode(index.MKSvgIcon, {
|
|
216
|
+
"style": {
|
|
217
|
+
color: "#1890ff",
|
|
218
|
+
cursor: "pointer"
|
|
219
|
+
},
|
|
220
|
+
"onClick": () => {
|
|
221
|
+
navigator.clipboard.writeText(response.data.data);
|
|
222
|
+
dm.Messager.instance.success({
|
|
223
|
+
message: "\u590D\u5236\u6210\u529F"
|
|
224
|
+
});
|
|
225
|
+
},
|
|
226
|
+
"iconClass": "CopyDocument"
|
|
227
|
+
}, null)])]),
|
|
153
228
|
type: "warning",
|
|
154
229
|
cancelButtonText: "\u53D6\u6D88",
|
|
155
230
|
confirmButtonText: "\u590D\u5236"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\r\nimport {\r\n TableColumn,\r\n DataTable,\r\n DataTableOptions,\r\n FilterColumn,\r\n TableActionColumn,\r\n ActionButton,\r\n DeleteButton,\r\n EditButton,\r\n Messager,\r\n Dialoger,\r\n FormColumn,\r\n WhereFilter,\r\n\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\r\nimport { MSAppClient } from \"../../core\";\r\n\r\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\r\n\r\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\r\n activeMemberForm: MemberForm;\r\n\r\n isShowActiveMemberForm: boolean;\r\n\r\n constructor(options: DataTableOptions = {}) {\r\n super({ name: \"ms-member\", ...options });\r\n\r\n this.activeMemberForm = new MemberForm();\r\n\r\n this.isShowActiveMemberForm = false;\r\n }\r\n\r\n protected async initialize() {\r\n await super.initialize();\r\n\r\n await this.initActiveMemberForm();\r\n //超管才能导出\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n //只有超级管理员可以查看超级管理员\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n (this.dataFilter as WhereFilter).getDefaultGroup().addCondition(\"isSuper\", \"!=\", 1)\r\n }\r\n\r\n this.dataFilter.setColumns([\r\n // new FilterColumn({\r\n // name: \"createdAt\",\r\n // label: \"创建时间\",\r\n // componentInfo: \"MKConditionDate\",\r\n // defaultValue: [\"2024-01-20 00:00:00\", \"2024-01-21 00:00:00\"]\r\n // }),\r\n new FilterColumn({\r\n name: \"name\",\r\n label: \"姓名\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"wechatNo\",\r\n label: \"微信号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"nickName\",\r\n label: \"昵称\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"email\",\r\n label: \"邮箱\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"phone\",\r\n label: \"手机号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"account\",\r\n label: \"账号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n ]);\r\n\r\n this.setColumns([\r\n new TableColumn({\r\n name: \"id\",\r\n label: \"编号\",\r\n width: \"190px\",\r\n visible: false,\r\n }),\r\n new TableColumn({ name: \"name\", label: \"账号信息\", minWidth: \"300px\" }),\r\n // new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\r\n // new TableColumn({\r\n // name: \"avatar\",\r\n // label: \"头像\",\r\n // componentInfo: \"MKColumnImage\",\r\n // width: \"80px\",\r\n // }),\r\n new TableColumn({ name: \"roles\", label: \"角色\", minWidth: \"150px\" }),\r\n new TableColumn({ name: \"type\", label: \"状态\", minWidth: \"80px\" }),\r\n new TableColumn({ name: \"memo\", label: \"备注\", minWidth: \"150px\" }),\r\n // new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\r\n // new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\r\n // new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\r\n // new TableColumn({\r\n // name: \"valid\",\r\n // label: \"微信号\",\r\n // minWidth: \"140px\",\r\n // visible: false,\r\n // }),\r\n new TableActionColumn({\r\n width: \"240px\",\r\n buttons: [\r\n new ActionButton({\r\n label: \"激活用户\",\r\n handler: async (row) => {\r\n const response = await this.activeMemberForm.editRecord(row.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.isShowActiveMemberForm = true;\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 0,\r\n }),\r\n new ActionButton({\r\n label: \"重置密码\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"重置密码\",\r\n message: \"是否重置密码\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.dataViewRequest.callDVRequest<\r\n R<string>\r\n >({\r\n action: `${row.id}/password/reset`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({\r\n message: response.data.msg || \"重置密码失败\",\r\n });\r\n return;\r\n }\r\n\r\n const res = await Dialoger.instance.confirm({\r\n title: \"重置密码成功\",\r\n message: (\r\n <p>\r\n <span>你的新密码为{response.data.data}</span>\r\n </p>\r\n ),\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"复制\",\r\n });\r\n if (!res) {\r\n return;\r\n }\r\n\r\n navigator.clipboard.writeText(response.data.data);\r\n Messager.instance.success({ message: \"复制成功\" });\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"解锁\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"解锁\",\r\n message: \"是否解锁?\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.activeMemberForm.dataViewRequest.update({\r\n id: row.id,\r\n isLock: 0,\r\n errorCount: 0,\r\n unlockDatetime: null\r\n })\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.loadingManager.completeLoading();\r\n this.load();\r\n },\r\n predicate: (member: MemberTableItem) => member.isLock === 1,\r\n }),\r\n new EditButton({\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new DeleteButton(),\r\n ],\r\n }),\r\n ]);\r\n }\r\n\r\n protected async initActiveMemberForm() {\r\n const activeMemberForm = this.activeMemberForm;\r\n\r\n await activeMemberForm.init();\r\n\r\n activeMemberForm.setColumns([\r\n activeMemberForm.getColumn(\"id\")!,\r\n new FormColumn({\r\n name: \"approveResult\",\r\n label: \"是否通过\",\r\n defaultValue: \"0\",\r\n componentInfo: \"MKFormRadioBox\",\r\n required: true,\r\n componentProps: {\r\n options: [\r\n { label: \"通过\", value: \"1\" },\r\n { label: \"不通过\", value: \"0\" },\r\n ],\r\n },\r\n }),\r\n activeMemberForm.getColumn(\"roles\")!,\r\n activeMemberForm.getColumn(\"depts\")!,\r\n // activeMemberForm.getColumn(\"memo\")!,\r\n ]);\r\n\r\n\r\n }\r\n\r\n async approveMember() {\r\n try {\r\n const _data = this.activeMemberForm.data as any;\r\n\r\n if (!_data.approveResult) {\r\n Messager.instance.error({ message: \"请选择是否通过\" });\r\n return\r\n }\r\n if (_data.approveResult == 0) {\r\n this.isShowActiveMemberForm = false;\r\n return\r\n }\r\n this.activeMemberForm.getLoadingManager().startLoading();\r\n const result = await this.activeMemberForm.httpRequest?.post(\r\n \"/api/dv/ms-member/apply/account/approve\",\r\n {\r\n ...this.activeMemberForm.formatSubmitData({ approveResult: (_data as any).approveResult, roles: _data?.roles, depts: _data?.depts, id: _data?.id }),\r\n }\r\n );\r\n this.activeMemberForm.getLoadingManager().completeLoading();\r\n\r\n if (result?.data.code != 200) {\r\n Messager.instance.error(result?.data.msg || \"请求失败\");\r\n return;\r\n }\r\n this.isShowActiveMemberForm = false;\r\n Messager.instance.success({\r\n message: \"激活通过,密码已发送到邮箱\",\r\n });\r\n\r\n this.load();\r\n } catch (e) {\r\n console.error(e);\r\n Messager.instance.error({ message: \"网络异常\" });\r\n }\r\n }\r\n\r\n formatItem(item: MemberResult): MemberTableItem {\r\n // let avatar: string | null;\r\n // try {\r\n // avatar = item.avatar ? new URL(item.avatar).toString() : null;\r\n // } catch (e) {\r\n // avatar = null;\r\n // }\r\n return {\r\n id: item.id,\r\n name: item.name || \"\",\r\n wechatNo: item.wechatNo || \"\",\r\n nickName: item.nickName || \"\",\r\n email: item.email || \"\",\r\n phone: item.phone || \"\",\r\n account: item.account || \"\",\r\n avatar: item.avatar,\r\n roles: item.roles?.map((role) => ({\r\n id: role.id,\r\n name: role.roleName || \"\",\r\n desc: role.roleDesc || \"\",\r\n })),\r\n depts: item.depts?.map((department) => ({\r\n id: department.id,\r\n name: department.name || \"\",\r\n // memberID: department.memberID || null,\r\n pid: department.pid || null,\r\n })),\r\n valid: item.valid,\r\n isLock: item.isLock,\r\n errorCount: item.errorCount,\r\n unlockDatetime: item.unlockDatetime\r\n };\r\n }\r\n}\r\n\r\ndefineDataTable(MemberTable);\r\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","MSAppClient","instance","userSession","userInfo","isSuper","buttonTools","splice","dataFilter","getDefaultGroup","addCondition","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","navigator","clipboard","writeText","success","update","isLock","errorCount","unlockDatetime","load","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","_data","approveResult","getLoadingManager","result","httpRequest","post","formatSubmitData","roles","depts","e","console","formatItem","item","wechatNo","nickName","email","phone","account","avatar","map","role","roleName","desc","roleDesc","department","pid","defineDataTable"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\r\nimport {\r\n TableColumn,\r\n DataTable,\r\n DataTableOptions,\r\n FilterColumn,\r\n TableActionColumn,\r\n ActionButton,\r\n DeleteButton,\r\n EditButton,\r\n Messager,\r\n Dialoger,\r\n FormColumn,\r\n WhereFilter,\r\n\r\n\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\r\nimport { MSAppClient } from \"../../core\";\r\nimport { MKSvgIcon } from \"../../components\";\r\n\r\n\r\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\r\n\r\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\r\n activeMemberForm: MemberForm;\r\n\r\n isShowActiveMemberForm: boolean;\r\n\r\n constructor(options: DataTableOptions = {}) {\r\n super({ name: \"ms-member\", ...options });\r\n\r\n this.activeMemberForm = new MemberForm();\r\n\r\n this.isShowActiveMemberForm = false;\r\n }\r\n\r\n protected async initialize() {\r\n await super.initialize();\r\n\r\n await this.initActiveMemberForm();\r\n //超管才能导出\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n //只有超级管理员可以查看超级管理员\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n (this.dataFilter as WhereFilter).getDefaultGroup().addCondition(\"isSuper\", \"!=\", 1)\r\n }\r\n\r\n this.dataFilter.setColumns([\r\n // new FilterColumn({\r\n // name: \"createdAt\",\r\n // label: \"创建时间\",\r\n // componentInfo: \"MKConditionDate\",\r\n // defaultValue: [\"2024-01-20 00:00:00\", \"2024-01-21 00:00:00\"]\r\n // }),\r\n new FilterColumn({\r\n name: \"name\",\r\n label: \"姓名\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"wechatNo\",\r\n label: \"微信号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"nickName\",\r\n label: \"昵称\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"email\",\r\n label: \"邮箱\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"phone\",\r\n label: \"手机号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"account\",\r\n label: \"账号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n ]);\r\n\r\n this.setColumns([\r\n new TableColumn({\r\n name: \"id\",\r\n label: \"编号\",\r\n width: \"190px\",\r\n visible: false,\r\n }),\r\n new TableColumn({ name: \"name\", label: \"账号信息\", minWidth: \"300px\" }),\r\n // new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\r\n // new TableColumn({\r\n // name: \"avatar\",\r\n // label: \"头像\",\r\n // componentInfo: \"MKColumnImage\",\r\n // width: \"80px\",\r\n // }),\r\n new TableColumn({ name: \"roles\", label: \"角色\", minWidth: \"150px\" }),\r\n new TableColumn({ name: \"type\", label: \"状态\", minWidth: \"80px\" }),\r\n new TableColumn({ name: \"memo\", label: \"备注\", minWidth: \"150px\" }),\r\n // new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\r\n // new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\r\n // new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\r\n // new TableColumn({\r\n // name: \"valid\",\r\n // label: \"微信号\",\r\n // minWidth: \"140px\",\r\n // visible: false,\r\n // }),\r\n new TableActionColumn({\r\n width: \"240px\",\r\n buttons: [\r\n new ActionButton({\r\n label: \"激活用户\",\r\n handler: async (row) => {\r\n const response = await this.activeMemberForm.editRecord(row.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.isShowActiveMemberForm = true;\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 0,\r\n }),\r\n new ActionButton({\r\n label: \"重置密码\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"重置密码\",\r\n message: \"是否重置密码\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.dataViewRequest.callDVRequest<\r\n R<string>\r\n >({\r\n action: `${row.id}/password/reset`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({\r\n message: response.data.msg || \"重置密码失败\",\r\n });\r\n return;\r\n }\r\n\r\n const res = await Dialoger.instance.confirm({\r\n title: \"重置密码成功\",\r\n message: (\r\n <p>\r\n <span>你的新密码为:<span style={{ color: '#1890ff' }}>{response.data.data}</span> <MKSvgIcon style={{ color: '#1890ff', cursor: \"pointer\" }} onClick={() => { navigator.clipboard.writeText(response.data.data); Messager.instance.success({ message: \"复制成功\" }) }} iconClass=\"CopyDocument\" /></span>\r\n </p>\r\n ),\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"复制\",\r\n });\r\n if (!res) {\r\n return;\r\n }\r\n\r\n navigator.clipboard.writeText(response.data.data);\r\n Messager.instance.success({ message: \"复制成功\" });\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"解锁\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"解锁\",\r\n message: \"是否解锁?\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.activeMemberForm.dataViewRequest.update({\r\n id: row.id,\r\n isLock: 0,\r\n errorCount: 0,\r\n unlockDatetime: null\r\n })\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.loadingManager.completeLoading();\r\n this.load();\r\n },\r\n predicate: (member: MemberTableItem) => member.isLock === 1,\r\n }),\r\n new EditButton({\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new DeleteButton(),\r\n ],\r\n }),\r\n ]);\r\n }\r\n\r\n protected async initActiveMemberForm() {\r\n const activeMemberForm = this.activeMemberForm;\r\n\r\n await activeMemberForm.init();\r\n\r\n activeMemberForm.setColumns([\r\n activeMemberForm.getColumn(\"id\")!,\r\n new FormColumn({\r\n name: \"approveResult\",\r\n label: \"是否通过\",\r\n defaultValue: \"0\",\r\n componentInfo: \"MKFormRadioBox\",\r\n required: true,\r\n componentProps: {\r\n options: [\r\n { label: \"通过\", value: \"1\" },\r\n { label: \"不通过\", value: \"0\" },\r\n ],\r\n },\r\n }),\r\n activeMemberForm.getColumn(\"roles\")!,\r\n activeMemberForm.getColumn(\"depts\")!,\r\n // activeMemberForm.getColumn(\"memo\")!,\r\n ]);\r\n\r\n\r\n }\r\n\r\n async approveMember() {\r\n try {\r\n const _data = this.activeMemberForm.data as any;\r\n\r\n if (!_data.approveResult) {\r\n Messager.instance.error({ message: \"请选择是否通过\" });\r\n return\r\n }\r\n if (_data.approveResult == 0) {\r\n this.isShowActiveMemberForm = false;\r\n return\r\n }\r\n this.activeMemberForm.getLoadingManager().startLoading();\r\n const result = await this.activeMemberForm.httpRequest?.post(\r\n \"/api/dv/ms-member/apply/account/approve\",\r\n {\r\n ...this.activeMemberForm.formatSubmitData({ approveResult: (_data as any).approveResult, roles: _data?.roles, depts: _data?.depts, id: _data?.id }),\r\n }\r\n );\r\n this.activeMemberForm.getLoadingManager().completeLoading();\r\n\r\n if (result?.data.code != 200) {\r\n Messager.instance.error(result?.data.msg || \"请求失败\");\r\n return;\r\n }\r\n this.isShowActiveMemberForm = false;\r\n Messager.instance.success({\r\n message: \"激活通过,密码已发送到邮箱\",\r\n });\r\n\r\n this.load();\r\n } catch (e) {\r\n console.error(e);\r\n Messager.instance.error({ message: \"网络异常\" });\r\n }\r\n }\r\n\r\n formatItem(item: MemberResult): MemberTableItem {\r\n // let avatar: string | null;\r\n // try {\r\n // avatar = item.avatar ? new URL(item.avatar).toString() : null;\r\n // } catch (e) {\r\n // avatar = null;\r\n // }\r\n return {\r\n id: item.id,\r\n name: item.name || \"\",\r\n wechatNo: item.wechatNo || \"\",\r\n nickName: item.nickName || \"\",\r\n email: item.email || \"\",\r\n phone: item.phone || \"\",\r\n account: item.account || \"\",\r\n avatar: item.avatar,\r\n roles: item.roles?.map((role) => ({\r\n id: role.id,\r\n name: role.roleName || \"\",\r\n desc: role.roleDesc || \"\",\r\n })),\r\n depts: item.depts?.map((department) => ({\r\n id: department.id,\r\n name: department.name || \"\",\r\n // memberID: department.memberID || null,\r\n pid: department.pid || null,\r\n })),\r\n valid: item.valid,\r\n isLock: item.isLock,\r\n errorCount: item.errorCount,\r\n unlockDatetime: item.unlockDatetime\r\n };\r\n }\r\n}\r\n\r\ndefineDataTable(MemberTable);\r\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","MSAppClient","instance","userSession","userInfo","isSuper","buttonTools","splice","dataFilter","getDefaultGroup","addCondition","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","color","MKSvgIcon","cursor","onClick","navigator","clipboard","writeText","success","update","isLock","errorCount","unlockDatetime","load","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","_data","approveResult","getLoadingManager","result","httpRequest","post","formatSubmitData","roles","depts","e","console","formatItem","item","wechatNo","nickName","email","phone","account","avatar","map","role","roleName","desc","roleDesc","department","pid","defineDataTable"],"mappings":"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"}
|
|
@@ -80,6 +80,7 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
80
80
|
repeatPassword: ""
|
|
81
81
|
});
|
|
82
82
|
const formRef = vue.ref();
|
|
83
|
+
const btnLoading = vue.ref(false);
|
|
83
84
|
vue.watch(showDialog, async () => {
|
|
84
85
|
if (vue.unref(showDialog)) {
|
|
85
86
|
form.password = "";
|
|
@@ -92,22 +93,18 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
92
93
|
if (value == "") {
|
|
93
94
|
callback(new Error("\u8BF7\u8F93\u5165\u5BC6\u7801"));
|
|
94
95
|
}
|
|
95
|
-
if (value.length < 8) {
|
|
96
|
-
callback(new Error("\u5BC6\u7801\u7801\u957F\u5EA6\u4E0D\u80FD\u5C0F\u4E8E8\u4F4D"));
|
|
97
|
-
}
|
|
98
96
|
if (value != form.newPassword) {
|
|
99
97
|
callback(new Error("\u4E24\u6B21\u8F93\u5165\u4E0D\u4E00\u81F4"));
|
|
100
98
|
}
|
|
101
|
-
|
|
102
|
-
callback(new Error("\u5BC6\u7801\u5FC5\u987B\u5305\u542B\u6570\u5B57\uFF0C\u5B57\u6BCD\u548C\u7279\u6B8A\u7B26\u53F7"));
|
|
103
|
-
} else {
|
|
104
|
-
callback();
|
|
105
|
-
}
|
|
99
|
+
callback();
|
|
106
100
|
};
|
|
107
101
|
const validateCode = (rule, value, callback) => {
|
|
108
102
|
if (value == "") {
|
|
109
103
|
callback(new Error("\u8BF7\u8F93\u5165\u5BC6\u7801\u7801"));
|
|
110
104
|
}
|
|
105
|
+
if (value.length < 8) {
|
|
106
|
+
callback(new Error("\u5BC6\u7801\u7801\u957F\u5EA6\u4E0D\u80FD\u5C0F\u4E8E8\u4F4D"));
|
|
107
|
+
}
|
|
111
108
|
if (value == form.password) {
|
|
112
109
|
callback(new Error("\u65B0\u5BC6\u7801\u4E0D\u80FD\u4E0E\u65E7\u5BC6\u7801\u76F8\u540C"));
|
|
113
110
|
}
|
|
@@ -118,16 +115,26 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
118
115
|
}
|
|
119
116
|
};
|
|
120
117
|
const submitChangePassword = async () => {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
118
|
+
try {
|
|
119
|
+
btnLoading.value = true;
|
|
120
|
+
const isPass = await formRef.value.validate();
|
|
121
|
+
if (!isPass) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
let result = await msAppClient.changePassword(form.password, form.newPassword);
|
|
125
|
+
if (result.data.code != 200) {
|
|
126
|
+
dm.Messager.instance.error({
|
|
127
|
+
message: result.data.msg || "\u4FEE\u6539\u5BC6\u7801\u5931\u8D25"
|
|
128
|
+
});
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
btnLoading.value = false;
|
|
132
|
+
msAppClient.logout();
|
|
133
|
+
} catch (e) {
|
|
134
|
+
console.error(e);
|
|
135
|
+
} finally {
|
|
136
|
+
btnLoading.value = false;
|
|
129
137
|
}
|
|
130
|
-
msAppClient.logout();
|
|
131
138
|
};
|
|
132
139
|
return () => {
|
|
133
140
|
return vue.createVNode("div", {
|
|
@@ -153,19 +160,19 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
153
160
|
}, [vue.unref(userInfo).nickName])]),
|
|
154
161
|
dropdown: () => vue.createVNode(elementPlus.ElDropdownMenu, null, {
|
|
155
162
|
default: () => [vue.createVNode(elementPlus.ElDropdownItem, {
|
|
156
|
-
"onClick": () => msAppClient.logout()
|
|
157
|
-
}, {
|
|
158
|
-
default: () => [vue.createVNode(index.MKSvgIcon, {
|
|
159
|
-
"iconClass": "SwitchButton"
|
|
160
|
-
}, null), vue.createTextVNode("\u9000\u51FA\u767B\u5F55")]
|
|
161
|
-
}), vue.createVNode(elementPlus.ElDropdownItem, {
|
|
162
163
|
"onClick": () => {
|
|
163
164
|
showDialog.value = true;
|
|
164
165
|
}
|
|
165
166
|
}, {
|
|
166
167
|
default: () => [vue.createVNode(index.MKSvgIcon, {
|
|
167
|
-
"iconClass": "
|
|
168
|
+
"iconClass": "EditPen"
|
|
168
169
|
}, null), vue.createTextVNode("\u4FEE\u6539\u5BC6\u7801")]
|
|
170
|
+
}), vue.createVNode(elementPlus.ElDropdownItem, {
|
|
171
|
+
"onClick": () => msAppClient.logout()
|
|
172
|
+
}, {
|
|
173
|
+
default: () => [vue.createVNode(index.MKSvgIcon, {
|
|
174
|
+
"iconClass": "SwitchButton"
|
|
175
|
+
}, null), vue.createTextVNode("\u9000\u51FA\u767B\u5F55")]
|
|
169
176
|
})]
|
|
170
177
|
})
|
|
171
178
|
})]), vue.createVNode(elementPlus.ElDialog, {
|
|
@@ -193,6 +200,7 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
193
200
|
}, {
|
|
194
201
|
default: () => [vue.createVNode(elementPlus.ElInput, {
|
|
195
202
|
"model-value": form.password,
|
|
203
|
+
"placeholder": "\u8BF7\u8F93\u5165\u65E7\u5BC6\u7801",
|
|
196
204
|
"onUpdate:modelValue": (v) => {
|
|
197
205
|
form.password = v;
|
|
198
206
|
},
|
|
@@ -213,6 +221,7 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
213
221
|
}, {
|
|
214
222
|
default: () => [vue.createVNode(elementPlus.ElInput, {
|
|
215
223
|
"model-value": form.newPassword,
|
|
224
|
+
"placeholder": "\u8BF7\u8F93\u5165\u65B0\u5BC6\u7801",
|
|
216
225
|
"onUpdate:modelValue": (v) => {
|
|
217
226
|
form.newPassword = v;
|
|
218
227
|
},
|
|
@@ -233,6 +242,7 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
233
242
|
}, {
|
|
234
243
|
default: () => [vue.createVNode(elementPlus.ElInput, {
|
|
235
244
|
"model-value": form.repeatPassword,
|
|
245
|
+
"placeholder": "\u8BF7\u518D\u6B21\u8F93\u5165\u5BC6\u7801",
|
|
236
246
|
"onUpdate:modelValue": (v) => {
|
|
237
247
|
form.repeatPassword = v;
|
|
238
248
|
},
|
|
@@ -248,6 +258,7 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
|
|
|
248
258
|
default: () => [vue.createTextVNode("\u53D6\u6D88")]
|
|
249
259
|
}), vue.createVNode(elementPlus.ElButton, {
|
|
250
260
|
"type": "primary",
|
|
261
|
+
"loading": btnLoading.value,
|
|
251
262
|
"onClick": () => {
|
|
252
263
|
submitChangePassword();
|
|
253
264
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient.instance!;\r\n const userSession = msAppClient.userSession!;\r\n\r\n const userInfo = computed(() => userSession.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo).avatar);\r\n const showDialog = ref(false);\r\n const form = reactive({\r\n password: \"\",\r\n newPassword: \"\",\r\n repeatPassword: \"\",\r\n });\r\n const formRef = ref();\r\n\r\n watch(showDialog, async () => {\r\n if (unref(showDialog)) {\r\n form.password = \"\";\r\n form.newPassword = \"\";\r\n form.repeatPassword = \"\";\r\n }\r\n })\r\n\r\n const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/\r\n\r\n const validateCode1 = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码\"));\r\n }\r\n\r\n if (value.length < 8) {\r\n callback(new Error(\"密码码长度不能小于8位\"));\r\n }\r\n\r\n if (value != form.newPassword) {\r\n callback(new Error(\"两次输入不一致\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const validateCode = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码码\"));\r\n }\r\n\r\n if (value == form.password) {\r\n callback(new Error(\"新密码不能与旧密码相同\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const submitChangePassword = async () => {\r\n const isPass = await formRef.value.validate()\r\n if (!isPass) {\r\n return;\r\n }\r\n let result = await msAppClient.changePassword(form.password, form.newPassword)\r\n if (result.data.code != 200) {\r\n Messager.instance.error(result.data.msg || \"修改密码失败\")\r\n return;\r\n }\r\n msAppClient.logout()\r\n }\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo).nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <ElDialog model-value={showDialog.value} onUpdate:modelValue={(v) => { showDialog.value = v }} title={'修改密码'} width={'30%'} v-slots={{\r\n footer: () => (\r\n <div>\r\n <ElButton onClick={() => { showDialog.value = false }}>取消</ElButton>\r\n <ElButton type={\"primary\"} onClick={() => { submitChangePassword() }}>确定</ElButton>\r\n </div>\r\n )\r\n }}>\r\n <ElForm ref={formRef} model={form} label-width={'80px'}>\r\n <ElFormItem label={'旧密码'} required={true} prop={'password'} rules={[{ required: true, message: '请输入旧密码', trigger: 'change' }]}>\r\n <ElInput model-value={form.password} onUpdate:modelValue={(v) => { form.password = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'新密码'} required={true} prop={'newPassword'} rules={[{ required: true, message: '请输入新密码', trigger: 'change' }, { validator: validateCode, trigger: 'change' }]} >\r\n <ElInput model-value={form.newPassword} onUpdate:modelValue={(v) => { form.newPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'重复密码'} required={true} prop={'repeatPassword'} rules={[{ required: true, message: '请再次输入密码', trigger: 'change' }, { validator: validateCode1, trigger: 'change' }]} >\r\n <ElInput model-value={form.repeatPassword} onUpdate:modelValue={(v) => { form.repeatPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n </ElForm>\r\n </ElDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","defineComponent","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","form","reactive","password","newPassword","repeatPassword","formRef","watch","reg","validateCode1","rule","value","callback","Error","length","test","validateCode","submitChangePassword","isPass","validate","result","changePassword","data","code","Messager","error","msg","logout","_createVNode","ElDropdown","default","ElImage","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","_createTextVNode","ElDialog","v","ElForm","ElFormItem","required","message","trigger","ElInput","validator","footer","ElButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient.instance!;\r\n const userSession = msAppClient.userSession!;\r\n\r\n const userInfo = computed(() => userSession.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo).avatar);\r\n const showDialog = ref(false);\r\n const form = reactive({\r\n password: \"\",\r\n newPassword: \"\",\r\n repeatPassword: \"\",\r\n });\r\n const formRef = ref();\r\n const btnLoading = ref(false)\r\n\r\n watch(showDialog, async () => {\r\n if (unref(showDialog)) {\r\n form.password = \"\";\r\n form.newPassword = \"\";\r\n form.repeatPassword = \"\";\r\n }\r\n })\r\n\r\n const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/\r\n\r\n const validateCode1 = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码\"));\r\n }\r\n if (value != form.newPassword) {\r\n callback(new Error(\"两次输入不一致\"));\r\n }\r\n callback()\r\n }\r\n\r\n const validateCode = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码码\"));\r\n }\r\n\r\n if (value.length < 8) {\r\n callback(new Error(\"密码码长度不能小于8位\"));\r\n }\r\n\r\n if (value == form.password) {\r\n callback(new Error(\"新密码不能与旧密码相同\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const submitChangePassword = async () => {\r\n try {\r\n btnLoading.value = true\r\n const isPass = await formRef.value.validate();\r\n if (!isPass) {\r\n return;\r\n }\r\n\r\n let result = await msAppClient.changePassword(form.password, form.newPassword);\r\n if (result.data.code != 200) {\r\n Messager.instance.error({ message: result.data.msg || \"修改密码失败\" });\r\n return;\r\n }\r\n btnLoading.value = false\r\n msAppClient.logout()\r\n\r\n } catch (e) {\r\n console.error(e);\r\n } finally {\r\n btnLoading.value = false\r\n }\r\n\r\n }\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo).nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"EditPen\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <ElDialog model-value={showDialog.value} onUpdate:modelValue={(v) => { showDialog.value = v }} title={'修改密码'} width={'30%'} v-slots={{\r\n footer: () => (\r\n <div>\r\n <ElButton onClick={() => { showDialog.value = false }}>取消</ElButton>\r\n <ElButton type={\"primary\"} loading={btnLoading.value} onClick={() => { submitChangePassword() }}>确定</ElButton>\r\n </div>\r\n )\r\n }}>\r\n <ElForm ref={formRef} model={form} label-width={'80px'}>\r\n <ElFormItem label={'旧密码'} required={true} prop={'password'} rules={[{ required: true, message: '请输入旧密码', trigger: 'change' }]}>\r\n <ElInput model-value={form.password} placeholder={\"请输入旧密码\"} onUpdate:modelValue={(v) => { form.password = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'新密码'} required={true} prop={'newPassword'} rules={[{ required: true, message: '请输入新密码', trigger: 'change' }, { validator: validateCode, trigger: 'change' }]} >\r\n <ElInput model-value={form.newPassword} placeholder={\"请输入新密码\"} onUpdate:modelValue={(v) => { form.newPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'重复密码'} required={true} prop={'repeatPassword'} rules={[{ required: true, message: '请再次输入密码', trigger: 'change' }, { validator: validateCode1, trigger: 'change' }]} >\r\n <ElInput model-value={form.repeatPassword} placeholder={\"请再次输入密码\"} onUpdate:modelValue={(v) => { form.repeatPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n </ElForm>\r\n </ElDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","defineComponent","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","form","reactive","password","newPassword","repeatPassword","formRef","btnLoading","watch","reg","validateCode1","rule","value","callback","Error","validateCode","length","test","submitChangePassword","isPass","validate","result","changePassword","data","code","Messager","error","message","msg","logout","e","console","_createVNode","ElDropdown","default","ElImage","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","_createTextVNode","ElDialog","v","ElForm","ElFormItem","required","trigger","ElInput","validator","footer","ElButton"],"mappings":"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"}
|
|
@@ -79,5 +79,10 @@ export declare class MSAppClient {
|
|
|
79
79
|
avatarPath: string;
|
|
80
80
|
}>, any>>;
|
|
81
81
|
logout(): Promise<import("@maketribe/request").ResponseConfig<any, any>>;
|
|
82
|
-
changePassword(password: string, newPassword: string): Promise<import("@maketribe/request").ResponseConfig<
|
|
82
|
+
changePassword(password: string, newPassword: string): Promise<import("@maketribe/request").ResponseConfig<R<{
|
|
83
|
+
account: string;
|
|
84
|
+
email: string;
|
|
85
|
+
nickName: string;
|
|
86
|
+
avatarPath: string;
|
|
87
|
+
}>, any>>;
|
|
83
88
|
}
|
|
@@ -154,17 +154,11 @@ class MSAppClient {
|
|
|
154
154
|
return this.httpRequest.get("/api/ms-login/logout");
|
|
155
155
|
}
|
|
156
156
|
async changePassword(password, newPassword) {
|
|
157
|
-
console.log(454);
|
|
158
157
|
const response = await this.httpRequest.request({
|
|
159
158
|
url: "/api/dv/ms-member/modify/password",
|
|
160
159
|
method: "POST",
|
|
161
160
|
data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) }
|
|
162
161
|
});
|
|
163
|
-
if (response.data.code == 200) {
|
|
164
|
-
this.userSession?.dispose();
|
|
165
|
-
this.setUserSession(null);
|
|
166
|
-
return this.httpRequest.get("/api/ms-login/logout");
|
|
167
|
-
}
|
|
168
162
|
return response;
|
|
169
163
|
}
|
|
170
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\r\n createRouter,\r\n createWebHashHistory,\r\n Router as VueRouter,\r\n} from \"vue-router\";\r\nimport {\r\n DataViewRequest,\r\n DVQueryable,\r\n HttpRequest,\r\n R,\r\n WebHttpRequest,\r\n} from \"@maketribe/request\";\r\nimport { IComponents, DataModel, Components, Messager } from \"@maketribe/dm\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nimport { Event, md5 } from \"@maketribe/utils\";\r\nimport { UserSession } from \"./UserSession\";\r\nimport { authBeforeEach } from \"../router-middleware\";\r\nimport { PageManager } from \"./PageManager\";\r\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\r\n\r\nexport type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n};\r\n\r\nexport interface MSAppClientOptions {\r\n pageManager?: PageManager;\r\n projectName: string;\r\n httpRequest?: HttpRequest;\r\n origin: string;\r\n appID: string;\r\n logo?: string;\r\n locale?: string;\r\n vueRouter?: VueRouter;\r\n dataTableComponents?: IComponents;\r\n dataFormComponents?: IComponents;\r\n dataFilterComponents?: IComponents;\r\n whereFilterComponents?: IComponents;\r\n}\r\n\r\nexport class MSAppClient {\r\n static instance: MSAppClient | null = null;\r\n\r\n origin: string = \"\";\r\n\r\n private _options: Required<MSAppClientOptions>;\r\n\r\n projectName: string;\r\n\r\n logo: string;\r\n\r\n appID: string;\r\n\r\n userSession: UserSession | null = null;\r\n\r\n httpRequest: HttpRequest;\r\n\r\n ready: boolean = false;\r\n\r\n initd: boolean = false;\r\n\r\n pageManager: PageManager;\r\n\r\n /**\r\n * @deprecated\r\n * @description 使用 MSAppClient.instance.userSession.userInfo\r\n */\r\n get userInfo() {\r\n return this.userSession?.userInfo ?? null;\r\n }\r\n\r\n i18n: I18n;\r\n\r\n dataTableComponents: IComponents;\r\n dataFormComponents: IComponents;\r\n dataFilterComponents: IComponents;\r\n whereFilterComponents: IComponents;\r\n\r\n vueRouter: VueRouter;\r\n\r\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\r\n\r\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\r\n new Event();\r\n\r\n constructor(options: MSAppClientOptions) {\r\n this._options = this._normalizeOptions(options);\r\n\r\n this.appID = this._options.appID;\r\n\r\n this.logo = this._options.logo;\r\n\r\n this.projectName = options.projectName;\r\n\r\n this.i18n = I18n.instance;\r\n this.i18n.setCurrentLanguageName(this._options.locale);\r\n\r\n this.dataTableComponents = this._options.dataTableComponents;\r\n this.dataFormComponents = this._options.dataFormComponents;\r\n this.dataFilterComponents = this._options.dataFilterComponents;\r\n this.whereFilterComponents = this._options.whereFilterComponents;\r\n\r\n this.vueRouter = this._options.vueRouter;\r\n\r\n this.pageManager = this._options.pageManager;\r\n\r\n HttpRequest.appID = this.appID;\r\n\r\n this.httpRequest = this._options.httpRequest;\r\n\r\n DataModel.setHttpRequest(this.httpRequest);\r\n DVQueryable.setDefaultDataViewRequest(\r\n new DataViewRequest({ httpRequest: this.httpRequest })\r\n );\r\n }\r\n\r\n setUserSession(userSession: UserSession | null) {\r\n if (this.userSession) {\r\n this.userSession.dispose();\r\n }\r\n\r\n this.userSession = userSession;\r\n\r\n this.userSessionChangeEvent.emit({ userSession });\r\n }\r\n\r\n private _normalizeOptions(\r\n options: MSAppClientOptions\r\n ): Required<MSAppClientOptions> {\r\n return {\r\n appID: options.appID,\r\n projectName: options.projectName,\r\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\r\n origin: options.origin,\r\n logo: options.logo || \"\",\r\n locale: options.locale || \"zh-cn\",\r\n vueRouter:\r\n options.vueRouter ??\r\n createRouter({\r\n history: createWebHashHistory(),\r\n routes: [],\r\n }),\r\n pageManager: options.pageManager ?? new PageManager(),\r\n dataTableComponents: options.dataTableComponents ?? new Components(),\r\n dataFormComponents: options.dataFormComponents ?? new Components(),\r\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\r\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\r\n };\r\n }\r\n getI18n() {\r\n return this.i18n;\r\n }\r\n\r\n getOptions() {\r\n return this._options;\r\n }\r\n\r\n async loadCurrentUserSession(options?: {\r\n accessToken: string;\r\n xAccessToken: string;\r\n }) {\r\n const userSession = (this.userSession = new UserSession({\r\n msAppClient: this,\r\n ...options,\r\n }));\r\n this.userSession = null;\r\n\r\n this.beforeInitUserSessionEvent.emit({ userSession });\r\n const userSessionInitResult = await userSession.init();\r\n\r\n if (userSessionInitResult?.data.code !== 200) {\r\n userSession.dispose();\r\n return userSessionInitResult!;\r\n }\r\n\r\n this.setUserSession(userSession);\r\n }\r\n\r\n async init() {\r\n if (this.initd) {\r\n return;\r\n }\r\n\r\n this.vueRouter.beforeEach(async (to, from, next) => {\r\n const route = await authBeforeEach(this, to, from);\r\n\r\n if (route) {\r\n next(route);\r\n return;\r\n }\r\n\r\n next();\r\n });\r\n\r\n this.pageManager.init();\r\n this.pageManager.setMSAppCLient(this);\r\n\r\n this.httpRequest.getInterceptors().response.use((config) => {\r\n if (config.data.code === 401) {\r\n this.vueRouter.push({ name: \"login\" });\r\n // if (this.userSession) {\r\n // this.userSession.lock();\r\n // } else {\r\n // this.vueRouter.push({ name: \"login\" });\r\n // }\r\n }\r\n return config;\r\n });\r\n\r\n this.initd = true;\r\n }\r\n\r\n async login(account: string, password: string, code: string) {\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/login\",\r\n method: \"POST\",\r\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\r\n });\r\n\r\n if (response.data.code === 200) {\r\n await this.loadCurrentUserSession({\r\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\r\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\r\n });\r\n }\r\n\r\n return response;\r\n }\r\n\r\n formatURL(url: string) {\r\n return url;\r\n }\r\n\r\n async modifyPassword(account: string, code: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/modify-password\",\r\n method: \"POST\",\r\n data: { account, vCode: code },\r\n });\r\n\r\n return response;\r\n }\r\n\r\n async logout() {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n async changePassword(password: string, newPassword: string) {\r\n console.log(454);\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/dv/ms-member/modify/password\",\r\n method: \"POST\",\r\n data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) },\r\n });\r\n if (response.data.code == 200) {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n return response;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\r\n createRouter,\r\n createWebHashHistory,\r\n Router as VueRouter,\r\n} from \"vue-router\";\r\nimport {\r\n DataViewRequest,\r\n DVQueryable,\r\n HttpRequest,\r\n R,\r\n WebHttpRequest,\r\n} from \"@maketribe/request\";\r\nimport { IComponents, DataModel, Components, Messager } from \"@maketribe/dm\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nimport { Event, md5 } from \"@maketribe/utils\";\r\nimport { UserSession } from \"./UserSession\";\r\nimport { authBeforeEach } from \"../router-middleware\";\r\nimport { PageManager } from \"./PageManager\";\r\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\r\n\r\nexport type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n};\r\n\r\nexport interface MSAppClientOptions {\r\n pageManager?: PageManager;\r\n projectName: string;\r\n httpRequest?: HttpRequest;\r\n origin: string;\r\n appID: string;\r\n logo?: string;\r\n locale?: string;\r\n vueRouter?: VueRouter;\r\n dataTableComponents?: IComponents;\r\n dataFormComponents?: IComponents;\r\n dataFilterComponents?: IComponents;\r\n whereFilterComponents?: IComponents;\r\n}\r\n\r\nexport class MSAppClient {\r\n static instance: MSAppClient | null = null;\r\n\r\n origin: string = \"\";\r\n\r\n private _options: Required<MSAppClientOptions>;\r\n\r\n projectName: string;\r\n\r\n logo: string;\r\n\r\n appID: string;\r\n\r\n userSession: UserSession | null = null;\r\n\r\n httpRequest: HttpRequest;\r\n\r\n ready: boolean = false;\r\n\r\n initd: boolean = false;\r\n\r\n pageManager: PageManager;\r\n\r\n /**\r\n * @deprecated\r\n * @description 使用 MSAppClient.instance.userSession.userInfo\r\n */\r\n get userInfo() {\r\n return this.userSession?.userInfo ?? null;\r\n }\r\n\r\n i18n: I18n;\r\n\r\n dataTableComponents: IComponents;\r\n dataFormComponents: IComponents;\r\n dataFilterComponents: IComponents;\r\n whereFilterComponents: IComponents;\r\n\r\n vueRouter: VueRouter;\r\n\r\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\r\n\r\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\r\n new Event();\r\n\r\n constructor(options: MSAppClientOptions) {\r\n this._options = this._normalizeOptions(options);\r\n\r\n this.appID = this._options.appID;\r\n\r\n this.logo = this._options.logo;\r\n\r\n this.projectName = options.projectName;\r\n\r\n this.i18n = I18n.instance;\r\n this.i18n.setCurrentLanguageName(this._options.locale);\r\n\r\n this.dataTableComponents = this._options.dataTableComponents;\r\n this.dataFormComponents = this._options.dataFormComponents;\r\n this.dataFilterComponents = this._options.dataFilterComponents;\r\n this.whereFilterComponents = this._options.whereFilterComponents;\r\n\r\n this.vueRouter = this._options.vueRouter;\r\n\r\n this.pageManager = this._options.pageManager;\r\n\r\n HttpRequest.appID = this.appID;\r\n\r\n this.httpRequest = this._options.httpRequest;\r\n\r\n DataModel.setHttpRequest(this.httpRequest);\r\n DVQueryable.setDefaultDataViewRequest(\r\n new DataViewRequest({ httpRequest: this.httpRequest })\r\n );\r\n }\r\n\r\n setUserSession(userSession: UserSession | null) {\r\n if (this.userSession) {\r\n this.userSession.dispose();\r\n }\r\n\r\n this.userSession = userSession;\r\n\r\n this.userSessionChangeEvent.emit({ userSession });\r\n }\r\n\r\n private _normalizeOptions(\r\n options: MSAppClientOptions\r\n ): Required<MSAppClientOptions> {\r\n return {\r\n appID: options.appID,\r\n projectName: options.projectName,\r\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\r\n origin: options.origin,\r\n logo: options.logo || \"\",\r\n locale: options.locale || \"zh-cn\",\r\n vueRouter:\r\n options.vueRouter ??\r\n createRouter({\r\n history: createWebHashHistory(),\r\n routes: [],\r\n }),\r\n pageManager: options.pageManager ?? new PageManager(),\r\n dataTableComponents: options.dataTableComponents ?? new Components(),\r\n dataFormComponents: options.dataFormComponents ?? new Components(),\r\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\r\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\r\n };\r\n }\r\n getI18n() {\r\n return this.i18n;\r\n }\r\n\r\n getOptions() {\r\n return this._options;\r\n }\r\n\r\n async loadCurrentUserSession(options?: {\r\n accessToken: string;\r\n xAccessToken: string;\r\n }) {\r\n const userSession = (this.userSession = new UserSession({\r\n msAppClient: this,\r\n ...options,\r\n }));\r\n this.userSession = null;\r\n\r\n this.beforeInitUserSessionEvent.emit({ userSession });\r\n const userSessionInitResult = await userSession.init();\r\n\r\n if (userSessionInitResult?.data.code !== 200) {\r\n userSession.dispose();\r\n return userSessionInitResult!;\r\n }\r\n\r\n this.setUserSession(userSession);\r\n }\r\n\r\n async init() {\r\n if (this.initd) {\r\n return;\r\n }\r\n\r\n this.vueRouter.beforeEach(async (to, from, next) => {\r\n const route = await authBeforeEach(this, to, from);\r\n\r\n if (route) {\r\n next(route);\r\n return;\r\n }\r\n\r\n next();\r\n });\r\n\r\n this.pageManager.init();\r\n this.pageManager.setMSAppCLient(this);\r\n\r\n this.httpRequest.getInterceptors().response.use((config) => {\r\n if (config.data.code === 401) {\r\n this.vueRouter.push({ name: \"login\" });\r\n // if (this.userSession) {\r\n // this.userSession.lock();\r\n // } else {\r\n // this.vueRouter.push({ name: \"login\" });\r\n // }\r\n }\r\n return config;\r\n });\r\n\r\n this.initd = true;\r\n }\r\n\r\n async login(account: string, password: string, code: string) {\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/login\",\r\n method: \"POST\",\r\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\r\n });\r\n\r\n if (response.data.code === 200) {\r\n await this.loadCurrentUserSession({\r\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\r\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\r\n });\r\n }\r\n\r\n return response;\r\n }\r\n\r\n formatURL(url: string) {\r\n return url;\r\n }\r\n\r\n async modifyPassword(account: string, code: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/modify-password\",\r\n method: \"POST\",\r\n data: { account, vCode: code },\r\n });\r\n\r\n return response;\r\n }\r\n\r\n async logout() {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n async changePassword(password: string, newPassword: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/dv/ms-member/modify/password\",\r\n method: \"POST\",\r\n data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) },\r\n });\r\n \r\n return response;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,65 @@ import 'element-plus';
|
|
|
6
6
|
import '@maketribe/utils';
|
|
7
7
|
import '../../core/DataModelDefines.js';
|
|
8
8
|
import { MSAppClient } from '../../core/MSAppClient.js';
|
|
9
|
+
import '../../components/data-model/data-form/index.js';
|
|
10
|
+
import '../../components/data-model/data-form-page/index.js';
|
|
11
|
+
import '../../components/data-model/data-table/index.js';
|
|
12
|
+
import '../../components/data-model/data-table-page/index.js';
|
|
13
|
+
import '../../components/data-model/data-table-pagination/index.js';
|
|
14
|
+
import '../../components/form-components/form-data-select/index.js';
|
|
15
|
+
import '../../components/form-components/form-icon-select/index.js';
|
|
16
|
+
import '../../components/form-components/form-radio-box/index.js';
|
|
17
|
+
import '../../components/form-components/form-detail/index.js';
|
|
18
|
+
import '../../components/form-components/form-data-table-select/index.js';
|
|
19
|
+
import '../../components/form-components/form-image-upload/index.js';
|
|
20
|
+
import '../../components/data-table-select/index.js';
|
|
21
|
+
import '../../components/form-components/form-detail-select/form-detail-select-options.js';
|
|
22
|
+
import '../../components/data-model/data-form/composables/use-form-item.js';
|
|
23
|
+
import 'lodash-es';
|
|
24
|
+
import '../../components/form-components/form-date-picker/index.js';
|
|
25
|
+
import '../../components/form-components/form-rich-text-editor/index.js';
|
|
26
|
+
import '../../components/column-components/column-action/column-action-options.js';
|
|
27
|
+
import { MKSvgIcon } from '../../components/svg-icon/index.js';
|
|
28
|
+
import '../../components/button/button-options.js';
|
|
29
|
+
import '../../components/data-model/data-table/composables/use-column.js';
|
|
30
|
+
import '../../components/column-components/column-image/column-image-options.js';
|
|
31
|
+
import '../../components/image-view/index.js';
|
|
32
|
+
import '../../components/column-components/column-text/column-text-options.js';
|
|
33
|
+
import '../../components/column-components/column-object-mapping-text/column-object-mapping-text-options.js';
|
|
34
|
+
import '../../components/column-components/column-select/column-select-options.js';
|
|
35
|
+
import '../../components/column-components/column-select/column-select-header-options.js';
|
|
36
|
+
import '../../components/column-components/column-json/index.js';
|
|
37
|
+
import '../../components/column-components/column-date/column-date-options.js';
|
|
38
|
+
import '../../components/column-components/column-switch/column-switch-options.js';
|
|
39
|
+
import '../../components/column-components/column-tag/column-tag-options.js';
|
|
40
|
+
import '../../components/column-components/column-link/column-link-options.js';
|
|
41
|
+
import '../../components/condition-components/condition-input/index.js';
|
|
42
|
+
import '../../components/condition-components/condition-date/index.js';
|
|
43
|
+
import '../../components/condition-components/condition-number/index.js';
|
|
44
|
+
import '../../components/condition-components/condition-select/index.js';
|
|
45
|
+
import '../../components/config-provider/index.js';
|
|
46
|
+
import '../../components/video-view/index.js';
|
|
47
|
+
import '../../components/file-view/index.js';
|
|
48
|
+
import '../../components/data-table-select-dialog/index.js';
|
|
49
|
+
import '../../components/data-select/index.js';
|
|
50
|
+
import '../../components/pagination/index.js';
|
|
51
|
+
import '../../components/markdown-editor/index.js';
|
|
52
|
+
import '../../components/rich-text-editor/index.js';
|
|
53
|
+
import '../../components/system-provider/index.js';
|
|
54
|
+
import '../../components/material-list/index.js';
|
|
55
|
+
import '../../components/material-select/index.js';
|
|
56
|
+
import '../../components/role-permission-config/index.js';
|
|
57
|
+
import '../../components/image-select/index.js';
|
|
58
|
+
import '../../components/verify-dialog/index.js';
|
|
59
|
+
import '../../components/json-editor/index.js';
|
|
60
|
+
import '../../components/upload-file/upload-file.js';
|
|
61
|
+
import '@maketribe/request';
|
|
62
|
+
import '../../components/upload-file/context/material-upload-context.js';
|
|
63
|
+
import '../../components/upload-file/context/material-upload-context-options.js';
|
|
64
|
+
import '../../components/upload-file/context/web-file-upload-context.js';
|
|
65
|
+
import '../../components/upload-file/context/web-file-upload-context-options.js';
|
|
66
|
+
import '../../components/upload-file/ui/upload-image/index.js';
|
|
67
|
+
import '../../components/upload-file/upload-file-options.js';
|
|
9
68
|
|
|
10
69
|
class MemberTable extends DataTable {
|
|
11
70
|
constructor(options = {}) {
|
|
@@ -147,7 +206,23 @@ class MemberTable extends DataTable {
|
|
|
147
206
|
}
|
|
148
207
|
const res = await Dialoger.instance.confirm({
|
|
149
208
|
title: "\u91CD\u7F6E\u5BC6\u7801\u6210\u529F",
|
|
150
|
-
message: createVNode("p", null, [createVNode("span", null, [createTextVNode("\u4F60\u7684\u65B0\u5BC6\u7801\u4E3A"),
|
|
209
|
+
message: createVNode("p", null, [createVNode("span", null, [createTextVNode("\u4F60\u7684\u65B0\u5BC6\u7801\u4E3A\uFF1A"), createVNode("span", {
|
|
210
|
+
"style": {
|
|
211
|
+
color: "#1890ff"
|
|
212
|
+
}
|
|
213
|
+
}, [response.data.data]), createTextVNode(" "), createVNode(MKSvgIcon, {
|
|
214
|
+
"style": {
|
|
215
|
+
color: "#1890ff",
|
|
216
|
+
cursor: "pointer"
|
|
217
|
+
},
|
|
218
|
+
"onClick": () => {
|
|
219
|
+
navigator.clipboard.writeText(response.data.data);
|
|
220
|
+
Messager.instance.success({
|
|
221
|
+
message: "\u590D\u5236\u6210\u529F"
|
|
222
|
+
});
|
|
223
|
+
},
|
|
224
|
+
"iconClass": "CopyDocument"
|
|
225
|
+
}, null)])]),
|
|
151
226
|
type: "warning",
|
|
152
227
|
cancelButtonText: "\u53D6\u6D88",
|
|
153
228
|
confirmButtonText: "\u590D\u5236"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\r\nimport {\r\n TableColumn,\r\n DataTable,\r\n DataTableOptions,\r\n FilterColumn,\r\n TableActionColumn,\r\n ActionButton,\r\n DeleteButton,\r\n EditButton,\r\n Messager,\r\n Dialoger,\r\n FormColumn,\r\n WhereFilter,\r\n\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\r\nimport { MSAppClient } from \"../../core\";\r\n\r\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\r\n\r\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\r\n activeMemberForm: MemberForm;\r\n\r\n isShowActiveMemberForm: boolean;\r\n\r\n constructor(options: DataTableOptions = {}) {\r\n super({ name: \"ms-member\", ...options });\r\n\r\n this.activeMemberForm = new MemberForm();\r\n\r\n this.isShowActiveMemberForm = false;\r\n }\r\n\r\n protected async initialize() {\r\n await super.initialize();\r\n\r\n await this.initActiveMemberForm();\r\n //超管才能导出\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n //只有超级管理员可以查看超级管理员\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n (this.dataFilter as WhereFilter).getDefaultGroup().addCondition(\"isSuper\", \"!=\", 1)\r\n }\r\n\r\n this.dataFilter.setColumns([\r\n // new FilterColumn({\r\n // name: \"createdAt\",\r\n // label: \"创建时间\",\r\n // componentInfo: \"MKConditionDate\",\r\n // defaultValue: [\"2024-01-20 00:00:00\", \"2024-01-21 00:00:00\"]\r\n // }),\r\n new FilterColumn({\r\n name: \"name\",\r\n label: \"姓名\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"wechatNo\",\r\n label: \"微信号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"nickName\",\r\n label: \"昵称\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"email\",\r\n label: \"邮箱\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"phone\",\r\n label: \"手机号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"account\",\r\n label: \"账号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n ]);\r\n\r\n this.setColumns([\r\n new TableColumn({\r\n name: \"id\",\r\n label: \"编号\",\r\n width: \"190px\",\r\n visible: false,\r\n }),\r\n new TableColumn({ name: \"name\", label: \"账号信息\", minWidth: \"300px\" }),\r\n // new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\r\n // new TableColumn({\r\n // name: \"avatar\",\r\n // label: \"头像\",\r\n // componentInfo: \"MKColumnImage\",\r\n // width: \"80px\",\r\n // }),\r\n new TableColumn({ name: \"roles\", label: \"角色\", minWidth: \"150px\" }),\r\n new TableColumn({ name: \"type\", label: \"状态\", minWidth: \"80px\" }),\r\n new TableColumn({ name: \"memo\", label: \"备注\", minWidth: \"150px\" }),\r\n // new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\r\n // new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\r\n // new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\r\n // new TableColumn({\r\n // name: \"valid\",\r\n // label: \"微信号\",\r\n // minWidth: \"140px\",\r\n // visible: false,\r\n // }),\r\n new TableActionColumn({\r\n width: \"240px\",\r\n buttons: [\r\n new ActionButton({\r\n label: \"激活用户\",\r\n handler: async (row) => {\r\n const response = await this.activeMemberForm.editRecord(row.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.isShowActiveMemberForm = true;\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 0,\r\n }),\r\n new ActionButton({\r\n label: \"重置密码\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"重置密码\",\r\n message: \"是否重置密码\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.dataViewRequest.callDVRequest<\r\n R<string>\r\n >({\r\n action: `${row.id}/password/reset`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({\r\n message: response.data.msg || \"重置密码失败\",\r\n });\r\n return;\r\n }\r\n\r\n const res = await Dialoger.instance.confirm({\r\n title: \"重置密码成功\",\r\n message: (\r\n <p>\r\n <span>你的新密码为{response.data.data}</span>\r\n </p>\r\n ),\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"复制\",\r\n });\r\n if (!res) {\r\n return;\r\n }\r\n\r\n navigator.clipboard.writeText(response.data.data);\r\n Messager.instance.success({ message: \"复制成功\" });\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"解锁\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"解锁\",\r\n message: \"是否解锁?\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.activeMemberForm.dataViewRequest.update({\r\n id: row.id,\r\n isLock: 0,\r\n errorCount: 0,\r\n unlockDatetime: null\r\n })\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.loadingManager.completeLoading();\r\n this.load();\r\n },\r\n predicate: (member: MemberTableItem) => member.isLock === 1,\r\n }),\r\n new EditButton({\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new DeleteButton(),\r\n ],\r\n }),\r\n ]);\r\n }\r\n\r\n protected async initActiveMemberForm() {\r\n const activeMemberForm = this.activeMemberForm;\r\n\r\n await activeMemberForm.init();\r\n\r\n activeMemberForm.setColumns([\r\n activeMemberForm.getColumn(\"id\")!,\r\n new FormColumn({\r\n name: \"approveResult\",\r\n label: \"是否通过\",\r\n defaultValue: \"0\",\r\n componentInfo: \"MKFormRadioBox\",\r\n required: true,\r\n componentProps: {\r\n options: [\r\n { label: \"通过\", value: \"1\" },\r\n { label: \"不通过\", value: \"0\" },\r\n ],\r\n },\r\n }),\r\n activeMemberForm.getColumn(\"roles\")!,\r\n activeMemberForm.getColumn(\"depts\")!,\r\n // activeMemberForm.getColumn(\"memo\")!,\r\n ]);\r\n\r\n\r\n }\r\n\r\n async approveMember() {\r\n try {\r\n const _data = this.activeMemberForm.data as any;\r\n\r\n if (!_data.approveResult) {\r\n Messager.instance.error({ message: \"请选择是否通过\" });\r\n return\r\n }\r\n if (_data.approveResult == 0) {\r\n this.isShowActiveMemberForm = false;\r\n return\r\n }\r\n this.activeMemberForm.getLoadingManager().startLoading();\r\n const result = await this.activeMemberForm.httpRequest?.post(\r\n \"/api/dv/ms-member/apply/account/approve\",\r\n {\r\n ...this.activeMemberForm.formatSubmitData({ approveResult: (_data as any).approveResult, roles: _data?.roles, depts: _data?.depts, id: _data?.id }),\r\n }\r\n );\r\n this.activeMemberForm.getLoadingManager().completeLoading();\r\n\r\n if (result?.data.code != 200) {\r\n Messager.instance.error(result?.data.msg || \"请求失败\");\r\n return;\r\n }\r\n this.isShowActiveMemberForm = false;\r\n Messager.instance.success({\r\n message: \"激活通过,密码已发送到邮箱\",\r\n });\r\n\r\n this.load();\r\n } catch (e) {\r\n console.error(e);\r\n Messager.instance.error({ message: \"网络异常\" });\r\n }\r\n }\r\n\r\n formatItem(item: MemberResult): MemberTableItem {\r\n // let avatar: string | null;\r\n // try {\r\n // avatar = item.avatar ? new URL(item.avatar).toString() : null;\r\n // } catch (e) {\r\n // avatar = null;\r\n // }\r\n return {\r\n id: item.id,\r\n name: item.name || \"\",\r\n wechatNo: item.wechatNo || \"\",\r\n nickName: item.nickName || \"\",\r\n email: item.email || \"\",\r\n phone: item.phone || \"\",\r\n account: item.account || \"\",\r\n avatar: item.avatar,\r\n roles: item.roles?.map((role) => ({\r\n id: role.id,\r\n name: role.roleName || \"\",\r\n desc: role.roleDesc || \"\",\r\n })),\r\n depts: item.depts?.map((department) => ({\r\n id: department.id,\r\n name: department.name || \"\",\r\n // memberID: department.memberID || null,\r\n pid: department.pid || null,\r\n })),\r\n valid: item.valid,\r\n isLock: item.isLock,\r\n errorCount: item.errorCount,\r\n unlockDatetime: item.unlockDatetime\r\n };\r\n }\r\n}\r\n\r\ndefineDataTable(MemberTable);\r\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","MSAppClient","instance","userSession","userInfo","isSuper","buttonTools","splice","dataFilter","getDefaultGroup","addCondition","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","navigator","clipboard","writeText","success","update","isLock","errorCount","unlockDatetime","load","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","_data","approveResult","getLoadingManager","result","httpRequest","post","formatSubmitData","roles","depts","e","console","formatItem","item","wechatNo","nickName","email","phone","account","avatar","map","role","roleName","desc","roleDesc","department","pid","defineDataTable"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\r\nimport {\r\n TableColumn,\r\n DataTable,\r\n DataTableOptions,\r\n FilterColumn,\r\n TableActionColumn,\r\n ActionButton,\r\n DeleteButton,\r\n EditButton,\r\n Messager,\r\n Dialoger,\r\n FormColumn,\r\n WhereFilter,\r\n\r\n\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\r\nimport { MSAppClient } from \"../../core\";\r\nimport { MKSvgIcon } from \"../../components\";\r\n\r\n\r\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\r\n\r\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\r\n activeMemberForm: MemberForm;\r\n\r\n isShowActiveMemberForm: boolean;\r\n\r\n constructor(options: DataTableOptions = {}) {\r\n super({ name: \"ms-member\", ...options });\r\n\r\n this.activeMemberForm = new MemberForm();\r\n\r\n this.isShowActiveMemberForm = false;\r\n }\r\n\r\n protected async initialize() {\r\n await super.initialize();\r\n\r\n await this.initActiveMemberForm();\r\n //超管才能导出\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n //只有超级管理员可以查看超级管理员\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n (this.dataFilter as WhereFilter).getDefaultGroup().addCondition(\"isSuper\", \"!=\", 1)\r\n }\r\n\r\n this.dataFilter.setColumns([\r\n // new FilterColumn({\r\n // name: \"createdAt\",\r\n // label: \"创建时间\",\r\n // componentInfo: \"MKConditionDate\",\r\n // defaultValue: [\"2024-01-20 00:00:00\", \"2024-01-21 00:00:00\"]\r\n // }),\r\n new FilterColumn({\r\n name: \"name\",\r\n label: \"姓名\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"wechatNo\",\r\n label: \"微信号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"nickName\",\r\n label: \"昵称\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"email\",\r\n label: \"邮箱\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"phone\",\r\n label: \"手机号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n new FilterColumn({\r\n name: \"account\",\r\n label: \"账号\",\r\n componentInfo: \"MKConditionInput\",\r\n }),\r\n ]);\r\n\r\n this.setColumns([\r\n new TableColumn({\r\n name: \"id\",\r\n label: \"编号\",\r\n width: \"190px\",\r\n visible: false,\r\n }),\r\n new TableColumn({ name: \"name\", label: \"账号信息\", minWidth: \"300px\" }),\r\n // new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\r\n // new TableColumn({\r\n // name: \"avatar\",\r\n // label: \"头像\",\r\n // componentInfo: \"MKColumnImage\",\r\n // width: \"80px\",\r\n // }),\r\n new TableColumn({ name: \"roles\", label: \"角色\", minWidth: \"150px\" }),\r\n new TableColumn({ name: \"type\", label: \"状态\", minWidth: \"80px\" }),\r\n new TableColumn({ name: \"memo\", label: \"备注\", minWidth: \"150px\" }),\r\n // new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\r\n // new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\r\n // new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\r\n // new TableColumn({\r\n // name: \"valid\",\r\n // label: \"微信号\",\r\n // minWidth: \"140px\",\r\n // visible: false,\r\n // }),\r\n new TableActionColumn({\r\n width: \"240px\",\r\n buttons: [\r\n new ActionButton({\r\n label: \"激活用户\",\r\n handler: async (row) => {\r\n const response = await this.activeMemberForm.editRecord(row.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.isShowActiveMemberForm = true;\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 0,\r\n }),\r\n new ActionButton({\r\n label: \"重置密码\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"重置密码\",\r\n message: \"是否重置密码\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.dataViewRequest.callDVRequest<\r\n R<string>\r\n >({\r\n action: `${row.id}/password/reset`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({\r\n message: response.data.msg || \"重置密码失败\",\r\n });\r\n return;\r\n }\r\n\r\n const res = await Dialoger.instance.confirm({\r\n title: \"重置密码成功\",\r\n message: (\r\n <p>\r\n <span>你的新密码为:<span style={{ color: '#1890ff' }}>{response.data.data}</span> <MKSvgIcon style={{ color: '#1890ff', cursor: \"pointer\" }} onClick={() => { navigator.clipboard.writeText(response.data.data); Messager.instance.success({ message: \"复制成功\" }) }} iconClass=\"CopyDocument\" /></span>\r\n </p>\r\n ),\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"复制\",\r\n });\r\n if (!res) {\r\n return;\r\n }\r\n\r\n navigator.clipboard.writeText(response.data.data);\r\n Messager.instance.success({ message: \"复制成功\" });\r\n },\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"解锁\",\r\n handler: async (row) => {\r\n const isConfirm = await Dialoger.instance.confirm({\r\n title: \"解锁\",\r\n message: \"是否解锁?\",\r\n type: \"warning\",\r\n cancelButtonText: \"取消\",\r\n confirmButtonText: \"确定\",\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n this.loadingManager.startLoading();\r\n\r\n const response = await this.activeMemberForm.dataViewRequest.update({\r\n id: row.id,\r\n isLock: 0,\r\n errorCount: 0,\r\n unlockDatetime: null\r\n })\r\n\r\n if (response.data.code !== 200) {\r\n Messager.instance.error({ message: response.data.msg });\r\n return;\r\n }\r\n this.loadingManager.completeLoading();\r\n this.load();\r\n },\r\n predicate: (member: MemberTableItem) => member.isLock === 1,\r\n }),\r\n new EditButton({\r\n predicate: (member: MemberTableItem) => member.valid === 1,\r\n }),\r\n new DeleteButton(),\r\n ],\r\n }),\r\n ]);\r\n }\r\n\r\n protected async initActiveMemberForm() {\r\n const activeMemberForm = this.activeMemberForm;\r\n\r\n await activeMemberForm.init();\r\n\r\n activeMemberForm.setColumns([\r\n activeMemberForm.getColumn(\"id\")!,\r\n new FormColumn({\r\n name: \"approveResult\",\r\n label: \"是否通过\",\r\n defaultValue: \"0\",\r\n componentInfo: \"MKFormRadioBox\",\r\n required: true,\r\n componentProps: {\r\n options: [\r\n { label: \"通过\", value: \"1\" },\r\n { label: \"不通过\", value: \"0\" },\r\n ],\r\n },\r\n }),\r\n activeMemberForm.getColumn(\"roles\")!,\r\n activeMemberForm.getColumn(\"depts\")!,\r\n // activeMemberForm.getColumn(\"memo\")!,\r\n ]);\r\n\r\n\r\n }\r\n\r\n async approveMember() {\r\n try {\r\n const _data = this.activeMemberForm.data as any;\r\n\r\n if (!_data.approveResult) {\r\n Messager.instance.error({ message: \"请选择是否通过\" });\r\n return\r\n }\r\n if (_data.approveResult == 0) {\r\n this.isShowActiveMemberForm = false;\r\n return\r\n }\r\n this.activeMemberForm.getLoadingManager().startLoading();\r\n const result = await this.activeMemberForm.httpRequest?.post(\r\n \"/api/dv/ms-member/apply/account/approve\",\r\n {\r\n ...this.activeMemberForm.formatSubmitData({ approveResult: (_data as any).approveResult, roles: _data?.roles, depts: _data?.depts, id: _data?.id }),\r\n }\r\n );\r\n this.activeMemberForm.getLoadingManager().completeLoading();\r\n\r\n if (result?.data.code != 200) {\r\n Messager.instance.error(result?.data.msg || \"请求失败\");\r\n return;\r\n }\r\n this.isShowActiveMemberForm = false;\r\n Messager.instance.success({\r\n message: \"激活通过,密码已发送到邮箱\",\r\n });\r\n\r\n this.load();\r\n } catch (e) {\r\n console.error(e);\r\n Messager.instance.error({ message: \"网络异常\" });\r\n }\r\n }\r\n\r\n formatItem(item: MemberResult): MemberTableItem {\r\n // let avatar: string | null;\r\n // try {\r\n // avatar = item.avatar ? new URL(item.avatar).toString() : null;\r\n // } catch (e) {\r\n // avatar = null;\r\n // }\r\n return {\r\n id: item.id,\r\n name: item.name || \"\",\r\n wechatNo: item.wechatNo || \"\",\r\n nickName: item.nickName || \"\",\r\n email: item.email || \"\",\r\n phone: item.phone || \"\",\r\n account: item.account || \"\",\r\n avatar: item.avatar,\r\n roles: item.roles?.map((role) => ({\r\n id: role.id,\r\n name: role.roleName || \"\",\r\n desc: role.roleDesc || \"\",\r\n })),\r\n depts: item.depts?.map((department) => ({\r\n id: department.id,\r\n name: department.name || \"\",\r\n // memberID: department.memberID || null,\r\n pid: department.pid || null,\r\n })),\r\n valid: item.valid,\r\n isLock: item.isLock,\r\n errorCount: item.errorCount,\r\n unlockDatetime: item.unlockDatetime\r\n };\r\n }\r\n}\r\n\r\ndefineDataTable(MemberTable);\r\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","MSAppClient","instance","userSession","userInfo","isSuper","buttonTools","splice","dataFilter","getDefaultGroup","addCondition","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","color","MKSvgIcon","cursor","onClick","navigator","clipboard","writeText","success","update","isLock","errorCount","unlockDatetime","load","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","_data","approveResult","getLoadingManager","result","httpRequest","post","formatSubmitData","roles","depts","e","console","formatItem","item","wechatNo","nickName","email","phone","account","avatar","map","role","roleName","desc","roleDesc","department","pid","defineDataTable"],"mappings":"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"}
|
|
@@ -78,6 +78,7 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
78
78
|
repeatPassword: ""
|
|
79
79
|
});
|
|
80
80
|
const formRef = ref();
|
|
81
|
+
const btnLoading = ref(false);
|
|
81
82
|
watch(showDialog, async () => {
|
|
82
83
|
if (unref(showDialog)) {
|
|
83
84
|
form.password = "";
|
|
@@ -90,22 +91,18 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
90
91
|
if (value == "") {
|
|
91
92
|
callback(new Error("\u8BF7\u8F93\u5165\u5BC6\u7801"));
|
|
92
93
|
}
|
|
93
|
-
if (value.length < 8) {
|
|
94
|
-
callback(new Error("\u5BC6\u7801\u7801\u957F\u5EA6\u4E0D\u80FD\u5C0F\u4E8E8\u4F4D"));
|
|
95
|
-
}
|
|
96
94
|
if (value != form.newPassword) {
|
|
97
95
|
callback(new Error("\u4E24\u6B21\u8F93\u5165\u4E0D\u4E00\u81F4"));
|
|
98
96
|
}
|
|
99
|
-
|
|
100
|
-
callback(new Error("\u5BC6\u7801\u5FC5\u987B\u5305\u542B\u6570\u5B57\uFF0C\u5B57\u6BCD\u548C\u7279\u6B8A\u7B26\u53F7"));
|
|
101
|
-
} else {
|
|
102
|
-
callback();
|
|
103
|
-
}
|
|
97
|
+
callback();
|
|
104
98
|
};
|
|
105
99
|
const validateCode = (rule, value, callback) => {
|
|
106
100
|
if (value == "") {
|
|
107
101
|
callback(new Error("\u8BF7\u8F93\u5165\u5BC6\u7801\u7801"));
|
|
108
102
|
}
|
|
103
|
+
if (value.length < 8) {
|
|
104
|
+
callback(new Error("\u5BC6\u7801\u7801\u957F\u5EA6\u4E0D\u80FD\u5C0F\u4E8E8\u4F4D"));
|
|
105
|
+
}
|
|
109
106
|
if (value == form.password) {
|
|
110
107
|
callback(new Error("\u65B0\u5BC6\u7801\u4E0D\u80FD\u4E0E\u65E7\u5BC6\u7801\u76F8\u540C"));
|
|
111
108
|
}
|
|
@@ -116,16 +113,26 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
116
113
|
}
|
|
117
114
|
};
|
|
118
115
|
const submitChangePassword = async () => {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
116
|
+
try {
|
|
117
|
+
btnLoading.value = true;
|
|
118
|
+
const isPass = await formRef.value.validate();
|
|
119
|
+
if (!isPass) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
let result = await msAppClient.changePassword(form.password, form.newPassword);
|
|
123
|
+
if (result.data.code != 200) {
|
|
124
|
+
Messager.instance.error({
|
|
125
|
+
message: result.data.msg || "\u4FEE\u6539\u5BC6\u7801\u5931\u8D25"
|
|
126
|
+
});
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
btnLoading.value = false;
|
|
130
|
+
msAppClient.logout();
|
|
131
|
+
} catch (e) {
|
|
132
|
+
console.error(e);
|
|
133
|
+
} finally {
|
|
134
|
+
btnLoading.value = false;
|
|
127
135
|
}
|
|
128
|
-
msAppClient.logout();
|
|
129
136
|
};
|
|
130
137
|
return () => {
|
|
131
138
|
return createVNode("div", {
|
|
@@ -151,19 +158,19 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
151
158
|
}, [unref(userInfo).nickName])]),
|
|
152
159
|
dropdown: () => createVNode(ElDropdownMenu, null, {
|
|
153
160
|
default: () => [createVNode(ElDropdownItem, {
|
|
154
|
-
"onClick": () => msAppClient.logout()
|
|
155
|
-
}, {
|
|
156
|
-
default: () => [createVNode(MKSvgIcon, {
|
|
157
|
-
"iconClass": "SwitchButton"
|
|
158
|
-
}, null), createTextVNode("\u9000\u51FA\u767B\u5F55")]
|
|
159
|
-
}), createVNode(ElDropdownItem, {
|
|
160
161
|
"onClick": () => {
|
|
161
162
|
showDialog.value = true;
|
|
162
163
|
}
|
|
163
164
|
}, {
|
|
164
165
|
default: () => [createVNode(MKSvgIcon, {
|
|
165
|
-
"iconClass": "
|
|
166
|
+
"iconClass": "EditPen"
|
|
166
167
|
}, null), createTextVNode("\u4FEE\u6539\u5BC6\u7801")]
|
|
168
|
+
}), createVNode(ElDropdownItem, {
|
|
169
|
+
"onClick": () => msAppClient.logout()
|
|
170
|
+
}, {
|
|
171
|
+
default: () => [createVNode(MKSvgIcon, {
|
|
172
|
+
"iconClass": "SwitchButton"
|
|
173
|
+
}, null), createTextVNode("\u9000\u51FA\u767B\u5F55")]
|
|
167
174
|
})]
|
|
168
175
|
})
|
|
169
176
|
})]), createVNode(ElDialog, {
|
|
@@ -191,6 +198,7 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
191
198
|
}, {
|
|
192
199
|
default: () => [createVNode(ElInput, {
|
|
193
200
|
"model-value": form.password,
|
|
201
|
+
"placeholder": "\u8BF7\u8F93\u5165\u65E7\u5BC6\u7801",
|
|
194
202
|
"onUpdate:modelValue": (v) => {
|
|
195
203
|
form.password = v;
|
|
196
204
|
},
|
|
@@ -211,6 +219,7 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
211
219
|
}, {
|
|
212
220
|
default: () => [createVNode(ElInput, {
|
|
213
221
|
"model-value": form.newPassword,
|
|
222
|
+
"placeholder": "\u8BF7\u8F93\u5165\u65B0\u5BC6\u7801",
|
|
214
223
|
"onUpdate:modelValue": (v) => {
|
|
215
224
|
form.newPassword = v;
|
|
216
225
|
},
|
|
@@ -231,6 +240,7 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
231
240
|
}, {
|
|
232
241
|
default: () => [createVNode(ElInput, {
|
|
233
242
|
"model-value": form.repeatPassword,
|
|
243
|
+
"placeholder": "\u8BF7\u518D\u6B21\u8F93\u5165\u5BC6\u7801",
|
|
234
244
|
"onUpdate:modelValue": (v) => {
|
|
235
245
|
form.repeatPassword = v;
|
|
236
246
|
},
|
|
@@ -246,6 +256,7 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
246
256
|
default: () => [createTextVNode("\u53D6\u6D88")]
|
|
247
257
|
}), createVNode(ElButton, {
|
|
248
258
|
"type": "primary",
|
|
259
|
+
"loading": btnLoading.value,
|
|
249
260
|
"onClick": () => {
|
|
250
261
|
submitChangePassword();
|
|
251
262
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient.instance!;\r\n const userSession = msAppClient.userSession!;\r\n\r\n const userInfo = computed(() => userSession.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo).avatar);\r\n const showDialog = ref(false);\r\n const form = reactive({\r\n password: \"\",\r\n newPassword: \"\",\r\n repeatPassword: \"\",\r\n });\r\n const formRef = ref();\r\n\r\n watch(showDialog, async () => {\r\n if (unref(showDialog)) {\r\n form.password = \"\";\r\n form.newPassword = \"\";\r\n form.repeatPassword = \"\";\r\n }\r\n })\r\n\r\n const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/\r\n\r\n const validateCode1 = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码\"));\r\n }\r\n\r\n if (value.length < 8) {\r\n callback(new Error(\"密码码长度不能小于8位\"));\r\n }\r\n\r\n if (value != form.newPassword) {\r\n callback(new Error(\"两次输入不一致\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const validateCode = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码码\"));\r\n }\r\n\r\n if (value == form.password) {\r\n callback(new Error(\"新密码不能与旧密码相同\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const submitChangePassword = async () => {\r\n const isPass = await formRef.value.validate()\r\n if (!isPass) {\r\n return;\r\n }\r\n let result = await msAppClient.changePassword(form.password, form.newPassword)\r\n if (result.data.code != 200) {\r\n Messager.instance.error(result.data.msg || \"修改密码失败\")\r\n return;\r\n }\r\n msAppClient.logout()\r\n }\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo).nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <ElDialog model-value={showDialog.value} onUpdate:modelValue={(v) => { showDialog.value = v }} title={'修改密码'} width={'30%'} v-slots={{\r\n footer: () => (\r\n <div>\r\n <ElButton onClick={() => { showDialog.value = false }}>取消</ElButton>\r\n <ElButton type={\"primary\"} onClick={() => { submitChangePassword() }}>确定</ElButton>\r\n </div>\r\n )\r\n }}>\r\n <ElForm ref={formRef} model={form} label-width={'80px'}>\r\n <ElFormItem label={'旧密码'} required={true} prop={'password'} rules={[{ required: true, message: '请输入旧密码', trigger: 'change' }]}>\r\n <ElInput model-value={form.password} onUpdate:modelValue={(v) => { form.password = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'新密码'} required={true} prop={'newPassword'} rules={[{ required: true, message: '请输入新密码', trigger: 'change' }, { validator: validateCode, trigger: 'change' }]} >\r\n <ElInput model-value={form.newPassword} onUpdate:modelValue={(v) => { form.newPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'重复密码'} required={true} prop={'repeatPassword'} rules={[{ required: true, message: '请再次输入密码', trigger: 'change' }, { validator: validateCode1, trigger: 'change' }]} >\r\n <ElInput model-value={form.repeatPassword} onUpdate:modelValue={(v) => { form.repeatPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n </ElForm>\r\n </ElDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","form","reactive","password","newPassword","repeatPassword","formRef","watch","reg","validateCode1","rule","value","callback","Error","length","test","validateCode","submitChangePassword","isPass","validate","result","changePassword","data","code","Messager","error","msg","logout","_createVNode","ElDropdown","default","ElImage","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","_createTextVNode","ElDialog","v","ElForm","ElFormItem","required","message","trigger","ElInput","validator","footer","ElButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient.instance!;\r\n const userSession = msAppClient.userSession!;\r\n\r\n const userInfo = computed(() => userSession.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo).avatar);\r\n const showDialog = ref(false);\r\n const form = reactive({\r\n password: \"\",\r\n newPassword: \"\",\r\n repeatPassword: \"\",\r\n });\r\n const formRef = ref();\r\n const btnLoading = ref(false)\r\n\r\n watch(showDialog, async () => {\r\n if (unref(showDialog)) {\r\n form.password = \"\";\r\n form.newPassword = \"\";\r\n form.repeatPassword = \"\";\r\n }\r\n })\r\n\r\n const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/\r\n\r\n const validateCode1 = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码\"));\r\n }\r\n if (value != form.newPassword) {\r\n callback(new Error(\"两次输入不一致\"));\r\n }\r\n callback()\r\n }\r\n\r\n const validateCode = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码码\"));\r\n }\r\n\r\n if (value.length < 8) {\r\n callback(new Error(\"密码码长度不能小于8位\"));\r\n }\r\n\r\n if (value == form.password) {\r\n callback(new Error(\"新密码不能与旧密码相同\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const submitChangePassword = async () => {\r\n try {\r\n btnLoading.value = true\r\n const isPass = await formRef.value.validate();\r\n if (!isPass) {\r\n return;\r\n }\r\n\r\n let result = await msAppClient.changePassword(form.password, form.newPassword);\r\n if (result.data.code != 200) {\r\n Messager.instance.error({ message: result.data.msg || \"修改密码失败\" });\r\n return;\r\n }\r\n btnLoading.value = false\r\n msAppClient.logout()\r\n\r\n } catch (e) {\r\n console.error(e);\r\n } finally {\r\n btnLoading.value = false\r\n }\r\n\r\n }\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo).nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"EditPen\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <ElDialog model-value={showDialog.value} onUpdate:modelValue={(v) => { showDialog.value = v }} title={'修改密码'} width={'30%'} v-slots={{\r\n footer: () => (\r\n <div>\r\n <ElButton onClick={() => { showDialog.value = false }}>取消</ElButton>\r\n <ElButton type={\"primary\"} loading={btnLoading.value} onClick={() => { submitChangePassword() }}>确定</ElButton>\r\n </div>\r\n )\r\n }}>\r\n <ElForm ref={formRef} model={form} label-width={'80px'}>\r\n <ElFormItem label={'旧密码'} required={true} prop={'password'} rules={[{ required: true, message: '请输入旧密码', trigger: 'change' }]}>\r\n <ElInput model-value={form.password} placeholder={\"请输入旧密码\"} onUpdate:modelValue={(v) => { form.password = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'新密码'} required={true} prop={'newPassword'} rules={[{ required: true, message: '请输入新密码', trigger: 'change' }, { validator: validateCode, trigger: 'change' }]} >\r\n <ElInput model-value={form.newPassword} placeholder={\"请输入新密码\"} onUpdate:modelValue={(v) => { form.newPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'重复密码'} required={true} prop={'repeatPassword'} rules={[{ required: true, message: '请再次输入密码', trigger: 'change' }, { validator: validateCode1, trigger: 'change' }]} >\r\n <ElInput model-value={form.repeatPassword} placeholder={\"请再次输入密码\"} onUpdate:modelValue={(v) => { form.repeatPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n </ElForm>\r\n </ElDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","form","reactive","password","newPassword","repeatPassword","formRef","btnLoading","watch","reg","validateCode1","rule","value","callback","Error","validateCode","length","test","submitChangePassword","isPass","validate","result","changePassword","data","code","Messager","error","message","msg","logout","e","console","_createVNode","ElDropdown","default","ElImage","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","_createTextVNode","ElDialog","v","ElForm","ElFormItem","required","trigger","ElInput","validator","footer","ElButton"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBO,MAAMA,gCAAgC,eAAA,CAAA;AAAA,EAC3CC,IAAM,EAAA,eAAA;AAAA,EACNC,MAAMC,KAAO,EAAA;AACX,IAAA,MAAMC,cAAcC,WAAYC,CAAAA,QAAAA,CAAAA;AAChC,IAAA,MAAMC,cAAcH,WAAYG,CAAAA,WAAAA,CAAAA;AAEhC,IAAA,MAAMC,QAAWC,GAAAA,QAAAA,CAAS,MAAMF,WAAAA,CAAYC,QAAS,CAAA,CAAA;AAErD,IAAA,MAAME,SAASD,QAAS,CAAA,MAAME,KAAMH,CAAAA,QAAQ,EAAEE,MAAM,CAAA,CAAA;AACpD,IAAME,MAAAA,UAAAA,GAAaC,IAAI,KAAK,CAAA,CAAA;AAC5B,IAAA,MAAMC,OAAOC,QAAS,CAAA;AAAA,MACpBC,QAAU,EAAA,EAAA;AAAA,MACVC,WAAa,EAAA,EAAA;AAAA,MACbC,cAAgB,EAAA,EAAA;AAAA,KACjB,CAAA,CAAA;AACD,IAAA,MAAMC,UAAUN,GAAI,EAAA,CAAA;AACpB,IAAMO,MAAAA,UAAAA,GAAaP,IAAI,KAAK,CAAA,CAAA;AAE5BQ,IAAAA,KAAAA,CAAMT,YAAY,YAAY;AAC5B,MAAID,IAAAA,KAAAA,CAAMC,UAAU,CAAG,EAAA;AACrBE,QAAAA,IAAAA,CAAKE,QAAW,GAAA,EAAA,CAAA;AAChBF,QAAAA,IAAAA,CAAKG,WAAc,GAAA,EAAA,CAAA;AACnBH,QAAAA,IAAAA,CAAKI,cAAiB,GAAA,EAAA,CAAA;AAAA,OACxB;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAMI,GAAM,GAAA,mMAAA,CAAA;AAEZ,IAAA,MAAMC,aAAgBA,GAAAA,CAACC,IAAWC,EAAAA,KAAAA,EAAYC,QAAkB,KAAA;AAC9D,MAAA,IAAID,SAAS,EAAI,EAAA;AACfC,QAAS,QAAA,CAAA,IAAIC,KAAM,CAAA,gCAAO,CAAC,CAAA,CAAA;AAAA,OAC7B;AACA,MAAIF,IAAAA,KAAAA,IAASX,KAAKG,WAAa,EAAA;AAC7BS,QAAS,QAAA,CAAA,IAAIC,KAAM,CAAA,4CAAS,CAAC,CAAA,CAAA;AAAA,OAC/B;AACAD,MAAS,QAAA,EAAA,CAAA;AAAA,KACX,CAAA;AAEA,IAAA,MAAME,YAAeA,GAAAA,CAACJ,IAAWC,EAAAA,KAAAA,EAAYC,QAAkB,KAAA;AAC7D,MAAA,IAAID,SAAS,EAAI,EAAA;AACfC,QAAS,QAAA,CAAA,IAAIC,KAAM,CAAA,sCAAQ,CAAC,CAAA,CAAA;AAAA,OAC9B;AAEA,MAAIF,IAAAA,KAAAA,CAAMI,SAAS,CAAG,EAAA;AACpBH,QAAS,QAAA,CAAA,IAAIC,KAAM,CAAA,+DAAa,CAAC,CAAA,CAAA;AAAA,OACnC;AAEA,MAAIF,IAAAA,KAAAA,IAASX,KAAKE,QAAU,EAAA;AAC1BU,QAAS,QAAA,CAAA,IAAIC,KAAM,CAAA,oEAAa,CAAC,CAAA,CAAA;AAAA,OACnC;AAEA,MAAA,IAAI,CAACL,GAAAA,CAAIQ,IAAKL,CAAAA,KAAK,CAAG,EAAA;AACpBC,QAAS,QAAA,CAAA,IAAIC,KAAM,CAAA,kGAAkB,CAAC,CAAA,CAAA;AAAA,OACjC,MAAA;AACLD,QAAS,QAAA,EAAA,CAAA;AAAA,OACX;AAAA,KACF,CAAA;AAEA,IAAA,MAAMK,uBAAuB,YAAY;AACvC,MAAI,IAAA;AACFX,QAAAA,UAAAA,CAAWK,KAAQ,GAAA,IAAA,CAAA;AACnB,QAAA,MAAMO,MAAS,GAAA,MAAMb,OAAQM,CAAAA,KAAAA,CAAMQ,QAAS,EAAA,CAAA;AAC5C,QAAA,IAAI,CAACD,MAAQ,EAAA;AACX,UAAA,OAAA;AAAA,SACF;AAEA,QAAA,IAAIE,SAAS,MAAM9B,WAAAA,CAAY+B,eAAerB,IAAKE,CAAAA,QAAAA,EAAUF,KAAKG,WAAW,CAAA,CAAA;AAC7E,QAAIiB,IAAAA,MAAAA,CAAOE,IAAKC,CAAAA,IAAAA,IAAQ,GAAK,EAAA;AAC3BC,UAAAA,QAAAA,CAAShC,SAASiC,KAAM,CAAA;AAAA,YAAEC,OAAAA,EAASN,MAAOE,CAAAA,IAAAA,CAAKK,GAAO,IAAA,sCAAA;AAAA,WAAU,CAAA,CAAA;AAChE,UAAA,OAAA;AAAA,SACF;AACArB,QAAAA,UAAAA,CAAWK,KAAQ,GAAA,KAAA,CAAA;AACnBrB,QAAAA,WAAAA,CAAYsC,MAAO,EAAA,CAAA;AAAA,eAEZC,CAAG,EAAA;AACVC,QAAAA,OAAAA,CAAQL,MAAMI,CAAC,CAAA,CAAA;AAAA,OACP,SAAA;AACRvB,QAAAA,UAAAA,CAAWK,KAAQ,GAAA,KAAA,CAAA;AAAA,OACrB;AAAA,KAEF,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,OAAAoB,YAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,iBAAA;AAAA,OAAA,EAAA,CAAAA,WAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,OAAA,EAAAA,CAAAA,WAAAA,CAAAC,UAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,QAAA,SAAA,EAAA,OAAA;AAAA,OAMiB,EAAA;AAAA,QACPC,OAAAA,EAASA,MAAAF,WAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA,4BAAA;AAAA,SAAA,EAAAA,CAAAA,WAAAA,CAAAG,OAAA,EAAA;AAAA,UAAA,OAAA,EAAA,yBAAA;AAAA,UAAA,KAAA,EAIErC,MAAMD,MAAM,CAAA;AAAA,SACR,EAAA;AAAA,UACP6B,KAAAA,EAAOA,MAAAM,WAAAA,CAAAI,SAAA,EAAA;AAAA,YAAA,WAAA,EAAA,QAAA;AAAA,YAAA,OAAA,EAAA,kCAAA;AAAA,aAAA,IAAA,CAAA;AAAA,SAGR,CAAAJ,EAAAA,WAAAA,CAAA,MAAA,EAAA;AAAA,UAAA,OAAA,EAAA,2BAAA;AAAA,SAAA,EAAA,CAGAlC,KAAMH,CAAAA,QAAQ,EAAE0C,QAAQ,CAG9B,CAAA,CAAA,CAAA;AAAA,QACDC,QAAUA,EAAAA,MAAAN,WAAAO,CAAAA,cAAAA,EAAA,IAAA,EAAA;AAAA,UAAAL,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAQ,cAAA,EAAA;AAAA,YAAA,WAEmBC,MAAM;AAAE1C,cAAAA,UAAAA,CAAWa,KAAQ,GAAA,IAAA,CAAA;AAAA,aAAK;AAAA,WAAC,EAAA;AAAA,YAAAsB,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAI,SAAA,EAAA;AAAA,cAAA,WAAA,EAAA,SAAA;AAAA,aAAA,EAAA,IAAA,CAAAM,EAAAA,eAAAA,CAAA,0BAAA,CAAA,CAAA;AAAA,WAAAV,CAAAA,EAAAA,WAAAA,CAAAQ,cAAA,EAAA;AAAA,YAAA,SAAA,EAIjCC,MAAMlD,WAAAA,CAAYsC,MAAO,EAAA;AAAA,WAAC,EAAA;AAAA,YAAAK,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAI,SAAA,EAAA;AAAA,cAAA,WAAA,EAAA,cAAA;AAAA,aAAA,EAAA,IAAA,CAAAM,EAAAA,eAAAA,CAAA,0BAAA,CAAA,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA;AAAA,OAMxD,CAAA,CAAA,CAAA,EAAAV,YAAAW,QAAA,EAAA;AAAA,QAAA,eAGkB5C,UAAWa,CAAAA,KAAAA;AAAAA,QAAK,uBAAwBgC,CAAM,CAAA,KAAA;AAAE7C,UAAAA,UAAAA,CAAWa,KAAQgC,GAAAA,CAAAA,CAAAA;AAAAA,SAAE;AAAA,QAAC,OAAS,EAAA,0BAAA;AAAA,QAAM,OAAS,EAAA,KAAA;AAAA,OAAK,EAAA;AAAA,QAAAV,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAa,MAAA,EAAA;AAAA,UAAA,KAQ3GvC,EAAAA,OAAAA;AAAAA,UAAO,OAASL,EAAAA,IAAAA;AAAAA,UAAI,aAAe,EAAA,MAAA;AAAA,SAAM,EAAA;AAAA,UAAAiC,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAc,UAAA,EAAA;AAAA,YAAA,OACjC,EAAA,oBAAA;AAAA,YAAK,UAAY,EAAA,IAAA;AAAA,YAAI,MAAQ,EAAA,UAAA;AAAA,YAAU,SAAS,CAAC;AAAA,cAAEC,QAAU,EAAA,IAAA;AAAA,cAAMpB,OAAS,EAAA,sCAAA;AAAA,cAAUqB,OAAS,EAAA,QAAA;AAAA,aAAU,CAAA;AAAA,WAAC,EAAA;AAAA,YAAAd,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAiB,OAAA,EAAA;AAAA,cAAA,eACrGhD,IAAKE,CAAAA,QAAAA;AAAAA,cAAQ,aAAe,EAAA,sCAAA;AAAA,cAAQ,uBAAwByC,CAAM,CAAA,KAAA;AAAE3C,gBAAAA,IAAAA,CAAKE,QAAWyC,GAAAA,CAAAA,CAAAA;AAAAA,eAAE;AAAA,cAAC,MAAQ,EAAA,UAAA;AAAA,aAAU,EAAA,IAAA,CAAA,CAAA;AAAA,WAAAZ,CAAAA,EAAAA,WAAAA,CAAAc,UAAA,EAAA;AAAA,YAAA,OAE9G,EAAA,oBAAA;AAAA,YAAK,UAAY,EAAA,IAAA;AAAA,YAAI,MAAQ,EAAA,aAAA;AAAA,YAAa,SAAS,CAAC;AAAA,cAAEC,QAAU,EAAA,IAAA;AAAA,cAAMpB,OAAS,EAAA,sCAAA;AAAA,cAAUqB,OAAS,EAAA,QAAA;AAAA,aAAY,EAAA;AAAA,cAAEE,SAAWnC,EAAAA,YAAAA;AAAAA,cAAciC,OAAS,EAAA,QAAA;AAAA,aAAU,CAAA;AAAA,WAAC,EAAA;AAAA,YAAAd,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAiB,OAAA,EAAA;AAAA,cAAA,eACxJhD,IAAKG,CAAAA,WAAAA;AAAAA,cAAW,aAAe,EAAA,sCAAA;AAAA,cAAQ,uBAAwBwC,CAAM,CAAA,KAAA;AAAE3C,gBAAAA,IAAAA,CAAKG,WAAcwC,GAAAA,CAAAA,CAAAA;AAAAA,eAAE;AAAA,cAAC,MAAQ,EAAA,UAAA;AAAA,aAAU,EAAA,IAAA,CAAA,CAAA;AAAA,WAAAZ,CAAAA,EAAAA,WAAAA,CAAAc,UAAA,EAAA;AAAA,YAAA,OAEpH,EAAA,0BAAA;AAAA,YAAM,UAAY,EAAA,IAAA;AAAA,YAAI,MAAQ,EAAA,gBAAA;AAAA,YAAgB,SAAS,CAAC;AAAA,cAAEC,QAAU,EAAA,IAAA;AAAA,cAAMpB,OAAS,EAAA,4CAAA;AAAA,cAAWqB,OAAS,EAAA,QAAA;AAAA,aAAY,EAAA;AAAA,cAAEE,SAAWxC,EAAAA,aAAAA;AAAAA,cAAesC,OAAS,EAAA,QAAA;AAAA,aAAU,CAAA;AAAA,WAAC,EAAA;AAAA,YAAAd,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAiB,OAAA,EAAA;AAAA,cAAA,eAC9JhD,IAAKI,CAAAA,cAAAA;AAAAA,cAAc,aAAe,EAAA,4CAAA;AAAA,cAAS,uBAAwBuC,CAAM,CAAA,KAAA;AAAE3C,gBAAAA,IAAAA,CAAKI,cAAiBuC,GAAAA,CAAAA,CAAAA;AAAAA,eAAE;AAAA,cAAC,MAAQ,EAAA,UAAA;AAAA,aAAU,EAAA,IAAA,CAAA,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,QAfhJO,QAAQA,MAAAnB,WAAAA,CAAAA,OAAAA,IAAAA,EAAAA,CAAAA,YAAAoB,QAAA,EAAA;AAAA,UAAA,WAEeX,MAAM;AAAE1C,YAAAA,UAAAA,CAAWa,KAAQ,GAAA,KAAA,CAAA;AAAA,WAAM;AAAA,SAAC,EAAA;AAAA,UAAAsB,OAAAA,EAAAA,MAAA,CAAAQ,eAAAA,CAAA,cAAA,CAAA,CAAA;AAAA,SAAAV,CAAAA,EAAAA,WAAAA,CAAAoB,QAAA,EAAA;AAAA,UAAA,MACrC,EAAA,SAAA;AAAA,UAAS,WAAW7C,UAAWK,CAAAA,KAAAA;AAAAA,UAAK,WAAW6B,MAAM;AAAEvB,YAAqB,oBAAA,EAAA,CAAA;AAAA,WAAE;AAAA,SAAC,EAAA;AAAA,UAAAgB,OAAAA,EAAAA,MAAA,CAAAQ,eAAAA,CAAA,cAAA,CAAA,CAAA;AAAA,SAAA,CAAA,CAAA,CAAA;AAAA,OAElG,CAAA,CAAA,CAAA,CAAA;AAAA,KAgBT,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
|