@maketribe/ms-app 3.0.0 → 3.0.1

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.
Files changed (201) hide show
  1. package/dist/cjs/MSAppClient.js +12 -18
  2. package/dist/cjs/MSAppClient.js.map +1 -1
  3. package/dist/cjs/Router.js +6 -8
  4. package/dist/cjs/Router.js.map +1 -1
  5. package/dist/cjs/components/member-table/member-table.vue2.js +2 -10
  6. package/dist/cjs/components/member-table/member-table.vue2.js.map +1 -1
  7. package/dist/cjs/components/verify-dialog/verify-dialog.js +1 -24
  8. package/dist/cjs/components/verify-dialog/verify-dialog.js.map +1 -1
  9. package/dist/cjs/init-application.js +8 -1
  10. package/dist/cjs/init-application.js.map +1 -1
  11. package/dist/cjs/page/index/dv/default/add.vue.js +2 -2
  12. package/dist/cjs/page/index/dv/default/edit.vue.js +2 -2
  13. package/dist/cjs/page/index/dv/default/tree.vue.js +2 -2
  14. package/dist/cjs/page/index/dv/ms-member/index.vue.js +2 -2
  15. package/dist/cjs/page/index/dv/ms-role/index.vue.js +2 -2
  16. package/dist/cjs/page/index/material/index.vue.js +2 -2
  17. package/dist/cjs/page/login/index.vue.js +2 -2
  18. package/dist/cjs/page/login/index.vue2.js +2 -17
  19. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  20. package/dist/cjs/page/signup/index.vue.js +2 -2
  21. package/dist/cjs/page/signup/index.vue2.js +2 -18
  22. package/dist/cjs/page/signup/index.vue2.js.map +1 -1
  23. package/dist/cjs/router-middleware/auth.d.ts +2 -1
  24. package/dist/cjs/router-middleware/auth.js +1 -3
  25. package/dist/cjs/router-middleware/auth.js.map +1 -1
  26. package/dist/esm/MSAppClient.js +11 -19
  27. package/dist/esm/MSAppClient.js.map +1 -1
  28. package/dist/esm/Router.js +4 -8
  29. package/dist/esm/Router.js.map +1 -1
  30. package/dist/esm/components/member-table/member-table.vue2.js +2 -10
  31. package/dist/esm/components/member-table/member-table.vue2.js.map +1 -1
  32. package/dist/esm/components/verify-dialog/verify-dialog.js +1 -24
  33. package/dist/esm/components/verify-dialog/verify-dialog.js.map +1 -1
  34. package/dist/esm/init-application.js +8 -1
  35. package/dist/esm/init-application.js.map +1 -1
  36. package/dist/esm/page/index/dv/default/add.vue.js +2 -2
  37. package/dist/esm/page/index/dv/default/edit.vue.js +2 -2
  38. package/dist/esm/page/index/dv/default/tree.vue.js +2 -2
  39. package/dist/esm/page/index/dv/ms-member/index.vue.js +2 -2
  40. package/dist/esm/page/index/dv/ms-role/index.vue.js +2 -2
  41. package/dist/esm/page/index/material/index.vue.js +2 -2
  42. package/dist/esm/page/login/index.vue.js +2 -2
  43. package/dist/esm/page/login/index.vue2.js +2 -17
  44. package/dist/esm/page/login/index.vue2.js.map +1 -1
  45. package/dist/esm/page/signup/index.vue.js +2 -2
  46. package/dist/esm/page/signup/index.vue2.js +2 -18
  47. package/dist/esm/page/signup/index.vue2.js.map +1 -1
  48. package/dist/esm/router-middleware/auth.d.ts +2 -1
  49. package/dist/esm/router-middleware/auth.js +1 -3
  50. package/dist/esm/router-middleware/auth.js.map +1 -1
  51. package/package.json +8 -5
  52. package/gulpfile.ts +0 -1
  53. package/rollup.config.mjs +0 -11
  54. package/src/ConfigComponents.ts +0 -20
  55. package/src/MSAppClient.ts +0 -343
  56. package/src/MSDataFilterComponents.ts +0 -6
  57. package/src/MSDataFormComponents.ts +0 -12
  58. package/src/MSDataTableComponents.ts +0 -6
  59. package/src/MaterialComponents.ts +0 -26
  60. package/src/PermissionPointManager.ts +0 -26
  61. package/src/Router.ts +0 -133
  62. package/src/UserInfo.ts +0 -66
  63. package/src/UserSession.ts +0 -190
  64. package/src/components/image-select/image-select-option.ts +0 -11
  65. package/src/components/image-select/image-select.tsx +0 -40
  66. package/src/components/image-select/index.ts +0 -6
  67. package/src/components/index.ts +0 -8
  68. package/src/components/material-list/index.ts +0 -7
  69. package/src/components/material-list/material-group-form-popover.vue +0 -66
  70. package/src/components/material-list/material-group.vue +0 -138
  71. package/src/components/material-list/material-item.vue +0 -26
  72. package/src/components/material-list/material-list-options.ts +0 -23
  73. package/src/components/material-list/material-list.vue +0 -151
  74. package/src/components/material-select/index.ts +0 -15
  75. package/src/components/material-select/material-select-api.ts +0 -48
  76. package/src/components/material-select/material-select-options.ts +0 -18
  77. package/src/components/material-select/material-select-type.ts +0 -11
  78. package/src/components/material-select/material-select.tsx +0 -95
  79. package/src/components/member-table/index.ts +0 -6
  80. package/src/components/member-table/member-table.vue +0 -220
  81. package/src/components/menu-permission-table/index.ts +0 -6
  82. package/src/components/menu-permission-table/menu-permission-table.vue +0 -143
  83. package/src/components/role-permission-config/index.ts +0 -7
  84. package/src/components/role-permission-config/role-permission-config-options.ts +0 -20
  85. package/src/components/role-permission-config/role-permission-config.tsx +0 -280
  86. package/src/components/system-provider/index.ts +0 -5
  87. package/src/components/system-provider/system-provider.tsx +0 -93
  88. package/src/components/verify-dialog/index.ts +0 -5
  89. package/src/components/verify-dialog/verify-dialog-option.ts +0 -23
  90. package/src/components/verify-dialog/verify-dialog.tsx +0 -113
  91. package/src/composables/index.ts +0 -13
  92. package/src/composables/on-tab-before-close.ts +0 -8
  93. package/src/composables/on-tab-before-switch.ts +0 -8
  94. package/src/composables/on-tab-refresh.ts +0 -8
  95. package/src/composables/use-current-tab.ts +0 -5
  96. package/src/composables/use-http-request.ts +0 -5
  97. package/src/composables/use-ms-app-client.ts +0 -10
  98. package/src/composables/use-user-info.ts +0 -4
  99. package/src/constants/index.ts +0 -2
  100. package/src/constants/route.ts +0 -4
  101. package/src/constants/token.ts +0 -5
  102. package/src/dataview/config/ConfigForm.ts +0 -110
  103. package/src/dataview/config/ConfigTable.ts +0 -68
  104. package/src/dataview/config/index.ts +0 -2
  105. package/src/dataview/department/DepartmentForm.ts +0 -43
  106. package/src/dataview/department/DepartmentTable.ts +0 -67
  107. package/src/dataview/department/index.ts +0 -2
  108. package/src/dataview/index.ts +0 -7
  109. package/src/dataview/material/MaterialForm.ts +0 -51
  110. package/src/dataview/material/MaterialMan.ts +0 -176
  111. package/src/dataview/material/MaterialTable.ts +0 -123
  112. package/src/dataview/material/index.ts +0 -4
  113. package/src/dataview/material/material-group/MaterialGroupForm.ts +0 -30
  114. package/src/dataview/material/material-group/MaterialGroupTable.ts +0 -60
  115. package/src/dataview/material/material-group/index.ts +0 -2
  116. package/src/dataview/member/MemberForm.ts +0 -122
  117. package/src/dataview/member/MemberTable.tsx +0 -242
  118. package/src/dataview/member/index.ts +0 -2
  119. package/src/dataview/member/member-role/MemberRoleTable.ts +0 -21
  120. package/src/dataview/menu/MenuForm.ts +0 -113
  121. package/src/dataview/menu/MenuTable.ts +0 -37
  122. package/src/dataview/menu/MenuTree.ts +0 -143
  123. package/src/dataview/menu/index.ts +0 -4
  124. package/src/dataview/menu/permission-point/PermissionPointDefineForm.ts +0 -28
  125. package/src/dataview/menu/permission-point/PermissionPointDefineTable.ts +0 -30
  126. package/src/dataview/menu/permission-point/index.ts +0 -2
  127. package/src/dataview/role/RoleForm.ts +0 -36
  128. package/src/dataview/role/RolePermissionConfigTable.ts +0 -471
  129. package/src/dataview/role/RoleTable.ts +0 -68
  130. package/src/dataview/role/index.ts +0 -5
  131. package/src/dataview/role/role-permission-point/RolePermissionPointTable.ts +0 -27
  132. package/src/dataview/role/role-permission-point/index.ts +0 -1
  133. package/src/dataview/role/role-route/RoleRouteTable.ts +0 -28
  134. package/src/dataview/role/role-route/index.ts +0 -1
  135. package/src/dataview/route/RouteForm.ts +0 -92
  136. package/src/dataview/route/RouteTable.ts +0 -71
  137. package/src/dataview/route/index.ts +0 -2
  138. package/src/init-application.ts +0 -84
  139. package/src/installer.ts +0 -26
  140. package/src/layouts/index.ts +0 -1
  141. package/src/layouts/manager-system/components/aside/aside.tsx +0 -45
  142. package/src/layouts/manager-system/components/aside/bar/bar.tsx +0 -79
  143. package/src/layouts/manager-system/components/aside/bar/index.ts +0 -5
  144. package/src/layouts/manager-system/components/aside/index.ts +0 -5
  145. package/src/layouts/manager-system/components/aside/menu/index.ts +0 -5
  146. package/src/layouts/manager-system/components/aside/menu/menu-item.tsx +0 -63
  147. package/src/layouts/manager-system/components/aside/menu/menu.tsx +0 -51
  148. package/src/layouts/manager-system/components/aside/panel/index.ts +0 -5
  149. package/src/layouts/manager-system/components/aside/panel/panel.tsx +0 -57
  150. package/src/layouts/manager-system/components/header/breadcrumb/breadcrumb.tsx +0 -47
  151. package/src/layouts/manager-system/components/header/breadcrumb/index.ts +0 -5
  152. package/src/layouts/manager-system/components/header/header.tsx +0 -17
  153. package/src/layouts/manager-system/components/header/index.ts +0 -5
  154. package/src/layouts/manager-system/components/header/nav/index.ts +0 -5
  155. package/src/layouts/manager-system/components/header/nav/nav.tsx +0 -100
  156. package/src/layouts/manager-system/components/header/tabs/index.ts +0 -5
  157. package/src/layouts/manager-system/components/header/tabs/tabs.tsx +0 -72
  158. package/src/layouts/manager-system/components/header/tools/index.ts +0 -5
  159. package/src/layouts/manager-system/components/header/tools/tools.tsx +0 -15
  160. package/src/layouts/manager-system/index.ts +0 -6
  161. package/src/layouts/manager-system/manager-system.tsx +0 -25
  162. package/src/menu/Menu.ts +0 -142
  163. package/src/menu/MenuNode.ts +0 -49
  164. package/src/menu/index.ts +0 -2
  165. package/src/page/index/dv/default/add.vue +0 -49
  166. package/src/page/index/dv/default/edit.vue +0 -55
  167. package/src/page/index/dv/default/index.vue +0 -56
  168. package/src/page/index/dv/default/tree.vue +0 -31
  169. package/src/page/index/dv/ms-member/index.vue +0 -38
  170. package/src/page/index/dv/ms-role/index.vue +0 -28
  171. package/src/page/index/material/index.vue +0 -14
  172. package/src/page/login/index.vue +0 -191
  173. package/src/page/signup/index.vue +0 -157
  174. package/src/resolver/ITypeResolver.ts +0 -5
  175. package/src/router-middleware/auth.ts +0 -64
  176. package/src/router-middleware/index.ts +0 -1
  177. package/src/tabs/Tab.ts +0 -59
  178. package/src/tabs/Tabs.ts +0 -176
  179. package/src/tabs/index.ts +0 -2
  180. package/src/tokens/index.ts +0 -1
  181. package/src/tokens/ms-app-client.ts +0 -10
  182. package/style/components/image-select.scss +0 -13
  183. package/style/components/index.scss +0 -9
  184. package/style/components/material-group.scss +0 -38
  185. package/style/components/material-item.scss +0 -20
  186. package/style/components/material-list.scss +0 -67
  187. package/style/components/material-select.scss +0 -23
  188. package/style/components/member-table.scss +0 -9
  189. package/style/components/menu-permission-table.scss +0 -43
  190. package/style/components/role-permission-config.scss +0 -18
  191. package/style/components/verify-dialog.scss +0 -16
  192. package/style/index.scss +0 -4
  193. package/style/layouts/index.scss +0 -1
  194. package/style/layouts/manager-system/aside.scss +0 -116
  195. package/style/layouts/manager-system/header.scss +0 -129
  196. package/style/layouts/manager-system/index.scss +0 -4
  197. package/style/layouts/manager-system/manager-system.scss +0 -26
  198. package/style/layouts/manager-system/menu.scss +0 -47
  199. package/style/page/login.scss +0 -107
  200. package/tsconfig.build.json +0 -10
  201. package/tsconfig.json +0 -14
@@ -1,60 +0,0 @@
1
- import {
2
- DataTable,
3
- DataTableOptions,
4
- TableColumn,
5
- defineDataTable,
6
- } from "@maketribe/dm";
7
- import { MaterialGroup } from "./MaterialGroupForm";
8
-
9
- export type MaterialGroupNode = MaterialGroup & {
10
- children: MaterialGroupNode[];
11
- };
12
-
13
- export class MaterialGroupTable extends DataTable<
14
- MaterialGroup,
15
- MaterialGroupNode
16
- > {
17
- constructor(options: Omit<DataTableOptions, "name"> = {}) {
18
- super({
19
- name: "ms-material-group",
20
- ...options,
21
- interfaceURL: { list: "/api/dv/ms-material-group/allList" },
22
- });
23
- }
24
-
25
- protected async initialize() {
26
- this.setColumns([
27
- new TableColumn({ name: "id", label: "编号", visible: false }),
28
- new TableColumn({ name: "desc", label: "描述" }),
29
- ]);
30
- }
31
-
32
- formatItem(item: MaterialGroup): MaterialGroupNode {
33
- return {
34
- id: item.id,
35
- desc: item.desc,
36
- parentGroupId: item.parentGroupId,
37
- children: [],
38
- };
39
- }
40
-
41
- setList(list: MaterialGroup[]): void {
42
- const rootMaterialGroups: MaterialGroupNode[] = [];
43
-
44
- const materialGroups = list as MaterialGroupNode[];
45
-
46
- for (const materialGroup of materialGroups) {
47
- if (!materialGroup.parentGroupId) {
48
- rootMaterialGroups.push(materialGroup);
49
- }
50
-
51
- for (const item of materialGroups) {
52
- if (materialGroup.id === item.parentGroupId) {
53
- materialGroup.children.push(item);
54
- }
55
- }
56
- }
57
-
58
- super.setList(rootMaterialGroups);
59
- }
60
- }
@@ -1,2 +0,0 @@
1
- export * from "./MaterialGroupForm";
2
- export * from "./MaterialGroupTable";
@@ -1,122 +0,0 @@
1
- import {
2
- DataForm,
3
- DataFormOptions,
4
- FormColumn,
5
- defineDataForm,
6
- } from "@maketribe/dm";
7
- import { RoleTable } from "../role";
8
- import { DepartmentTable } from "../department";
9
- import { WebFileUpload } from "@maketribe/request";
10
- export type MemberResult = {
11
- id: string;
12
- name: string;
13
- wechatNo: string;
14
- nickName: string;
15
- email: string;
16
- phone: string;
17
- account: string;
18
- // password: string;
19
- avatar: string;
20
- roles: any[];
21
- depts: any[];
22
- valid: number;
23
- };
24
-
25
- export type Member = {
26
- id: string;
27
- name: string;
28
- wechatNo: string;
29
- nickName: string;
30
- email: string;
31
- phone: string;
32
- account: string;
33
- // password: string;
34
- // confirmPassword: string;
35
- avatar: string | null;
36
- roles: any[];
37
- depts: any[];
38
- valid: number;
39
- };
40
-
41
- export class MemberForm<
42
- T extends MemberResult = MemberResult,
43
- F extends Member = Member
44
- > extends DataForm<T, F> {
45
- constructor(options: DataFormOptions = {}) {
46
- super({ name: "ms-member", ...options });
47
- }
48
-
49
- protected async initialize() {
50
- this.setColumns([
51
- new FormColumn({ name: "id", label: "编号" }),
52
- new FormColumn({ name: "name", label: "姓名", required: true }),
53
- new FormColumn({ name: "wechatNo", label: "微信号", defaultValue: null }),
54
- new FormColumn({ name: "nickName", label: "昵称", required: true }),
55
- new FormColumn({ name: "email", label: "邮箱", required: true }),
56
- new FormColumn({ name: "phone", label: "手机号", defaultValue: null }),
57
- new FormColumn({ name: "account", label: "账号", required: true }),
58
- new FormColumn({
59
- name: "avatar",
60
- label: "头像",
61
- defaultValue: null,
62
- componentInfo: "MKFormImageUpload",
63
- componentProps: {
64
- upload: new WebFileUpload({ httpRequest: this.httpRequest }),
65
- },
66
- }),
67
- new FormColumn({
68
- name: "roles",
69
- label: "角色",
70
- defaultValue: null,
71
- componentInfo: "MKFormDataTableSelect",
72
- componentProps: {
73
- multiple: true,
74
- labelFieldName: "name",
75
- dataTable: new RoleTable(),
76
- },
77
- }),
78
- new FormColumn({
79
- name: "depts",
80
- label: "部门",
81
- defaultValue: null,
82
- componentInfo: "MKFormDataTableSelect",
83
- componentProps: {
84
- multiple: true,
85
- labelFieldName: "name",
86
- dataTable: new DepartmentTable(),
87
- },
88
- }),
89
- new FormColumn({ name: "memo", label: "备注" }),
90
- ]);
91
- }
92
-
93
- formatSubmitData(data: any) {
94
- const { roles, depts, ...rest } = data;
95
-
96
- const rolesArr = roles?.map((item: any) => {
97
- return { roleId: item };
98
- });
99
- const deptsArr = depts?.map((item: any) => {
100
- return { deptId: item };
101
- });
102
- return { ...rest, roles: rolesArr, depts: deptsArr };
103
- }
104
-
105
- formatItem(item: T): F {
106
- return {
107
- id: item.id,
108
- name: item.name || "",
109
- wechatNo: item.wechatNo || "",
110
- nickName: item.nickName || "",
111
- email: item.email || "",
112
- phone: item.phone || "",
113
- account: item.account || "",
114
- avatar: item.avatar,
115
- roles: item.roles?.map((role) => role.roleId),
116
- depts: item.depts?.map((department) => department.deptId),
117
- valid: item.valid,
118
- } as F;
119
- }
120
- }
121
-
122
- defineDataForm(MemberForm);
@@ -1,242 +0,0 @@
1
- import {
2
- TableColumn,
3
- DataTable,
4
- DataTableOptions,
5
- FilterColumn,
6
- TableActionColumn,
7
- ActionButton,
8
- DeleteButton,
9
- EditButton,
10
- Messager,
11
- Dialoger,
12
- defineDataTable,
13
- FormColumn,
14
- } from "@maketribe/dm";
15
- import { Event } from "@maketribe/utils";
16
- import { Member, MemberForm, MemberResult } from "./MemberForm";
17
-
18
- export type MemberTableItem = Omit<Member, "password" | "confirmPassword">;
19
-
20
- export class MemberTable extends DataTable<MemberResult, MemberTableItem> {
21
- activeMemberForm: MemberForm;
22
-
23
- activeMemberEvent: Event<MemberTableItem> = this.register(new Event());
24
-
25
- constructor(options: DataTableOptions = {}) {
26
- super({ name: "ms-member", ...options });
27
-
28
- this.activeMemberForm = new MemberForm();
29
- }
30
-
31
- protected async initialize() {
32
- await this.initActiveMemberForm();
33
-
34
- this.dataFilter.setColumns([
35
- new FilterColumn({
36
- name: "name",
37
- label: "姓名",
38
- componentInfo: "MKConditionInput",
39
- }),
40
- new FilterColumn({
41
- name: "wechatNo",
42
- label: "微信号",
43
- componentInfo: "MKConditionInput",
44
- }),
45
- new FilterColumn({
46
- name: "nickName",
47
- label: "昵称",
48
- componentInfo: "MKConditionInput",
49
- }),
50
- new FilterColumn({
51
- name: "email",
52
- label: "邮箱",
53
- componentInfo: "MKConditionInput",
54
- }),
55
- new FilterColumn({
56
- name: "phone",
57
- label: "手机号",
58
- componentInfo: "MKConditionInput",
59
- }),
60
- new FilterColumn({
61
- name: "account",
62
- label: "账号",
63
- componentInfo: "MKConditionInput",
64
- }),
65
- ]);
66
-
67
- this.setColumns([
68
- new TableColumn({
69
- name: "id",
70
- label: "编号",
71
- width: "190px",
72
- visible: false,
73
- }),
74
- new TableColumn({ name: "name", label: "姓名", minWidth: "100px" }),
75
- new TableColumn({ name: "nickName", label: "昵称", minWidth: "150px" }),
76
- new TableColumn({
77
- name: "avatar",
78
- label: "头像",
79
- componentInfo: "MKColumnImage",
80
- width: "80px",
81
- }),
82
- new TableColumn({ name: "account", label: "账号", minWidth: "150px" }),
83
- new TableColumn({ name: "email", label: "邮箱", minWidth: "180px" }),
84
- new TableColumn({ name: "phone", label: "手机号", minWidth: "120px" }),
85
- new TableColumn({ name: "wechatNo", label: "微信号", minWidth: "140px" }),
86
- new TableColumn({
87
- name: "valid",
88
- label: "微信号",
89
- minWidth: "140px",
90
- visible: false,
91
- }),
92
- new TableActionColumn({
93
- width: "200px",
94
- buttons: [
95
- new ActionButton({
96
- label: "激活用户",
97
- handler: async (row) => {
98
- this.activeMemberEvent.emit(row);
99
- },
100
- predicate: (member: MemberTableItem) => member.valid === 0,
101
- }),
102
- new ActionButton({
103
- label: "重置密码",
104
- handler: async (row) => {
105
- const isConfirm = await Dialoger.instance.confirm({
106
- title: "重置密码",
107
- message: "是否重置密码",
108
- type: "warning",
109
- cancelButtonText: "取消",
110
- confirmButtonText: "确定",
111
- });
112
- if (!isConfirm) {
113
- return;
114
- }
115
- this.loadingManager.startLoading();
116
- const result = await this.httpRequest.post(
117
- `/api/dv/ms-member/${row.id}/password/reset`
118
- );
119
- this.loadingManager.completeLoading();
120
- if (result.data.code !== 200) {
121
- Messager.instance.error({
122
- message: result.data.msg || "重置密码失败",
123
- });
124
- return;
125
- }
126
-
127
- const res = await Dialoger.instance.confirm({
128
- title: "重置密码成功",
129
- message: (
130
- <p>
131
- <span>你的新密码为{result.data.data}</span>
132
- </p>
133
- ),
134
- type: "warning",
135
- cancelButtonText: "取消",
136
- confirmButtonText: "复制",
137
- });
138
- if (!res) {
139
- return;
140
- }
141
-
142
- navigator.clipboard.writeText(result.data.data);
143
- Messager.instance.success({ message: "复制成功" });
144
- },
145
- predicate: (member: MemberTableItem) => member.valid === 1,
146
- }),
147
- new EditButton({
148
- predicate: (member: MemberTableItem) => member.valid === 1,
149
- }),
150
- new DeleteButton(),
151
- ],
152
- }),
153
- ]);
154
- }
155
-
156
- protected async initActiveMemberForm() {
157
- const activeMemberForm = this.activeMemberForm;
158
-
159
- await activeMemberForm.init();
160
-
161
- activeMemberForm.setColumns([
162
- activeMemberForm.getColumn("id")!,
163
- new FormColumn({
164
- name: "approveResult",
165
- label: "是否通过",
166
- defaultValue: "0",
167
- componentInfo: "MKFormRadioBox",
168
- required: true,
169
- componentProps: {
170
- options: [
171
- { label: "通过", value: "1" },
172
- { label: "不通过", value: "0" },
173
- ],
174
- },
175
- }),
176
- activeMemberForm.getColumn("roles")!,
177
- activeMemberForm.getColumn("depts")!,
178
- activeMemberForm.getColumn("memo")!,
179
- ]);
180
- }
181
-
182
- async approveMember() {
183
- try {
184
- this.activeMemberForm.getLoadingManager().startLoading();
185
- const result = await this.activeMemberForm.httpRequest?.post(
186
- "/api/dv/ms-member/apply/account/approve",
187
- {
188
- ...this.activeMemberForm.formatSubmitData(this.activeMemberForm.data),
189
- }
190
- );
191
- this.activeMemberForm.getLoadingManager().completeLoading();
192
-
193
- if (result?.data.code != 200) {
194
- Messager.instance.error(result?.data.msg || "请求失败");
195
- return;
196
- }
197
-
198
- Messager.instance.success({
199
- message: "激活通过,密码已发送到邮箱",
200
- });
201
-
202
- this.load();
203
- } catch (e) {
204
- console.error(e);
205
- Messager.instance.error({ message: "网络异常" });
206
- }
207
- }
208
-
209
- formatItem(item: MemberResult): MemberTableItem {
210
- let avatar: string | null;
211
- try {
212
- avatar = item.avatar ? new URL(item.avatar).toString() : null;
213
- } catch (e) {
214
- avatar = null;
215
- }
216
-
217
- return {
218
- id: item.id,
219
- name: item.name || "",
220
- wechatNo: item.wechatNo || "",
221
- nickName: item.nickName || "",
222
- email: item.email || "",
223
- phone: item.phone || "",
224
- account: item.account || "",
225
- avatar,
226
- roles: item.roles?.map((role) => ({
227
- id: role.id,
228
- name: role.name || "",
229
- desc: role.desc || "",
230
- })),
231
- depts: item.depts?.map((department) => ({
232
- id: department.id,
233
- name: department.name || "",
234
- // memberID: department.memberID || null,
235
- pid: department.pid || null,
236
- })),
237
- valid: item.valid,
238
- };
239
- }
240
- }
241
-
242
- defineDataTable(MemberTable);
@@ -1,2 +0,0 @@
1
- export * from "./MemberForm";
2
- export * from "./MemberTable";
@@ -1,21 +0,0 @@
1
- import { DataFormOptions, DataTable, TableColumn } from "@maketribe/dm";
2
-
3
- export type MemberRole = {
4
- id: string;
5
- memberId: string;
6
- roleId: string;
7
- };
8
-
9
- export class MemberRoleTable extends DataTable {
10
- constructor(options: DataFormOptions = {}) {
11
- super({ name: "ms-member-role", ...options });
12
- }
13
-
14
- protected async initialize() {
15
- this.setColumns([
16
- new TableColumn({ name: "id", label: "编号", visible: false }),
17
- new TableColumn({ name: "memberId", label: "成员ID" }),
18
- new TableColumn({ name: "roleId", label: "角色ID" }),
19
- ]);
20
- }
21
- }
@@ -1,113 +0,0 @@
1
- import {
2
- DataForm,
3
- DataFormOptions,
4
- FormColumn,
5
- FormDetailColumn,
6
- defineDataForm,
7
- } from "@maketribe/dm";
8
- import { RouteTable } from "../route/RouteTable";
9
- import { MenuTable } from "./MenuTable";
10
- import { RouteForm, RouteResult } from "../route/RouteForm";
11
- import {
12
- PermissionPointDefine,
13
- PermissionPointDefineForm,
14
- PermissionPointDefineTable,
15
- } from "./permission-point";
16
-
17
- export type MenuResult = {
18
- id: string;
19
- title: string | null;
20
- iconName: string | null;
21
- pid: string | null;
22
- routeId: string;
23
- sort: string;
24
- routes: RouteResult[];
25
- permissionPoints: PermissionPointDefine[];
26
- };
27
-
28
- export type MenuItem = {
29
- id: string;
30
- title: string;
31
- iconName: string;
32
- pid: string;
33
- routeId: string;
34
- sort: string;
35
- routes: RouteResult[];
36
- permissionPoints: PermissionPointDefine[];
37
- };
38
-
39
- export class MenuForm extends DataForm<MenuResult, MenuItem> {
40
- constructor(options: DataFormOptions = {}) {
41
- super({ name: "ms-menu", ...options });
42
- }
43
-
44
- protected async initialize() {
45
- this.setColumns([
46
- new FormColumn({ name: "id", label: "编号" }),
47
- new FormColumn({ name: "title", label: "菜单描述" }),
48
- new FormColumn({
49
- name: "iconName",
50
- label: "图标",
51
- componentInfo: "MKFormIconSelect",
52
- required: true,
53
- }),
54
- new FormColumn({
55
- name: "routeId",
56
- label: "默认路由",
57
- componentInfo: "MKFormDataTableSelect",
58
- componentProps: {
59
- labelFieldName: "title",
60
- dataTable: new RouteTable({ pageSize: 10 }),
61
- },
62
- }),
63
- new FormColumn({
64
- name: "pid",
65
- label: "父菜单",
66
- componentInfo: "MKFormDataTableSelect",
67
- componentProps: {
68
- labelFieldName: "title",
69
- dataTable: new MenuTable({ pageSize: 10 }),
70
- },
71
- }),
72
- new FormColumn({ name: "sort", label: "排序" }),
73
- new FormDetailColumn({
74
- name: "routes",
75
- label: "该菜单所属路由定义",
76
- associationFieldName: "menuId",
77
- detailForm: new RouteForm(),
78
- detailTable: new RouteTable(),
79
- }),
80
- new FormDetailColumn({
81
- name: "permissionPoints",
82
- label: "该菜单所属权限定义",
83
- associationFieldName: "menuId",
84
- detailForm: new PermissionPointDefineForm(),
85
- detailTable: new PermissionPointDefineTable(),
86
- }),
87
- ]);
88
- }
89
-
90
- formatSubmitData(data: any) {
91
- return {
92
- ...data,
93
- iconName: data.iconName || null,
94
- pid: data.pid || null,
95
- routeId: data.routeId || null,
96
- };
97
- }
98
-
99
- formatItem(item: MenuResult): MenuItem {
100
- return {
101
- id: item.id,
102
- title: item.title || "",
103
- iconName: item.iconName || "",
104
- pid: item.pid || "",
105
- routeId: item.routeId,
106
- sort: item.sort || "0",
107
- routes: item.routes || [],
108
- permissionPoints: item.permissionPoints || [],
109
- };
110
- }
111
- }
112
-
113
- defineDataForm(MenuForm);
@@ -1,37 +0,0 @@
1
- import {
2
- DataTable,
3
- DataTableOptions,
4
- TableActionColumn,
5
- TableColumn,
6
- defineDataTable,
7
- } from "@maketribe/dm";
8
- import { MenuItem, MenuResult } from "./MenuForm";
9
-
10
- export class MenuTable<T extends MenuItem = MenuItem> extends DataTable<
11
- MenuResult,
12
- T
13
- > {
14
- constructor(options: Omit<DataTableOptions, "name"> = {}) {
15
- super({ name: "ms-menu", ...options });
16
- }
17
-
18
- protected async initialize() {
19
- this.setColumns([
20
- new TableColumn({ name: "id", label: "编号", visible: false }),
21
- new TableColumn({ name: "title", label: "菜单描述" }),
22
- new TableActionColumn(),
23
- ]);
24
- }
25
-
26
- formatItem(item: MenuResult): T {
27
- return {
28
- id: item.id,
29
- title: item.title || "",
30
- iconName: item.iconName || "",
31
- pid: item.pid || "",
32
- routeId: item.routeId,
33
- } as T;
34
- }
35
- }
36
-
37
- defineDataTable(MenuTable);