inl-ui 0.0.4 → 0.0.7

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 (182) hide show
  1. package/.babelrc +3 -3
  2. package/README.md +28 -1
  3. package/dist/index.js +12707 -67
  4. package/dist/index.js.map +1 -1
  5. package/dist/style.css +1 -1
  6. package/dist/theme/dark.less +204 -182
  7. package/dist/theme/default.less +109 -1067
  8. package/package.json +38 -36
  9. package/conf/config.output.ts +0 -0
  10. package/conf/cp.js +0 -51
  11. package/conf/rollup.config.ts +0 -36
  12. package/dist/theme/dark copy.less +0 -448
  13. package/dist/types/src/components/index.d.ts +0 -2
  14. package/dist/types/src/index.d.ts +0 -7
  15. package/dist/types/src/pageComponent/api/auth/menuManager.d.ts +0 -23
  16. package/dist/types/src/pageComponent/api/auth/roleManager.d.ts +0 -27
  17. package/dist/types/src/pageComponent/api/auth/userManager.d.ts +0 -45
  18. package/dist/types/src/pageComponent/api/axios.d.ts +0 -4
  19. package/dist/types/src/pageComponent/api/index.d.ts +0 -30
  20. package/dist/types/src/pageComponent/api/logManager.d.ts +0 -11
  21. package/dist/types/src/pageComponent/api/org/depManager.d.ts +0 -55
  22. package/dist/types/src/pageComponent/api/org/postManager.d.ts +0 -30
  23. package/dist/types/src/pageComponent/api/org/teamManager.d.ts +0 -38
  24. package/dist/types/src/pageComponent/api/param.d.ts +0 -32
  25. package/dist/types/src/pageComponent/components/CommonTree.d.ts +0 -57
  26. package/dist/types/src/pageComponent/components/DynamicIcon.d.ts +0 -13
  27. package/dist/types/src/pageComponent/components/EditPasswordForm.d.ts +0 -19
  28. package/dist/types/src/pageComponent/components/IconSelect.d.ts +0 -12
  29. package/dist/types/src/pageComponent/components/Navbar.d.ts +0 -13
  30. package/dist/types/src/pageComponent/components/ProFormItem.d.ts +0 -18
  31. package/dist/types/src/pageComponent/components/SearchSelect.d.ts +0 -49
  32. package/dist/types/src/pageComponent/components/Sidebar.d.ts +0 -20
  33. package/dist/types/src/pageComponent/components/loginBox/index.d.ts +0 -43
  34. package/dist/types/src/pageComponent/config/global.d.ts +0 -7
  35. package/dist/types/src/pageComponent/config/install.d.ts +0 -2
  36. package/dist/types/src/pageComponent/hooks/global.d.ts +0 -6
  37. package/dist/types/src/pageComponent/hooks/manage-module/useModalForm.d.ts +0 -5
  38. package/dist/types/src/pageComponent/hooks/manage-module/useModalTitle.d.ts +0 -6
  39. package/dist/types/src/pageComponent/hooks/manage-module/useModalVisibleControl.d.ts +0 -5
  40. package/dist/types/src/pageComponent/hooks/useBus.d.ts +0 -6
  41. package/dist/types/src/pageComponent/hooks/useProxy.d.ts +0 -4
  42. package/dist/types/src/pageComponent/hooks/useTableList.d.ts +0 -13
  43. package/dist/types/src/pageComponent/hooks/useVModel.d.ts +0 -1
  44. package/dist/types/src/pageComponent/index.d.ts +0 -2
  45. package/dist/types/src/pageComponent/utils/base64.d.ts +0 -14
  46. package/dist/types/src/pageComponent/utils/index.d.ts +0 -3
  47. package/dist/types/src/pageComponent/utils/is.d.ts +0 -10
  48. package/dist/types/src/pageComponent/utils/transform.d.ts +0 -10
  49. package/dist/types/src/pageComponent/utils/tree.d.ts +0 -16
  50. package/dist/types/src/pageComponent/utils/validation.d.ts +0 -11
  51. package/dist/types/src/pageComponent/views/alarms/index.d.ts +0 -2
  52. package/dist/types/src/pageComponent/views/index.d.ts +0 -2
  53. package/dist/types/src/pageComponent/views/login.d.ts +0 -2
  54. package/dist/types/src/pageComponent/views/systemManager/about.d.ts +0 -2
  55. package/dist/types/src/pageComponent/views/systemManager/authManager/menuManager/index.d.ts +0 -5
  56. package/dist/types/src/pageComponent/views/systemManager/authManager/menuManager/menuDetail.d.ts +0 -10
  57. package/dist/types/src/pageComponent/views/systemManager/authManager/menuManager/menuSelectTree.d.ts +0 -18
  58. package/dist/types/src/pageComponent/views/systemManager/authManager/menuManager/updateMenuDialog.d.ts +0 -27
  59. package/dist/types/src/pageComponent/views/systemManager/authManager/roleManager/index.d.ts +0 -5
  60. package/dist/types/src/pageComponent/views/systemManager/authManager/roleManager/updateRoleDialog.d.ts +0 -34
  61. package/dist/types/src/pageComponent/views/systemManager/authManager/userManager/index.d.ts +0 -2
  62. package/dist/types/src/pageComponent/views/systemManager/authManager/userManager/updateUserDialog.d.ts +0 -36
  63. package/dist/types/src/pageComponent/views/systemManager/authManager/userManager/userProfileDialog.d.ts +0 -21
  64. package/dist/types/src/pageComponent/views/systemManager/logManager.d.ts +0 -2
  65. package/dist/types/src/pageComponent/views/systemManager/orgManager/depManager/depTree.d.ts +0 -10
  66. package/dist/types/src/pageComponent/views/systemManager/orgManager/depManager/employeeTable.d.ts +0 -19
  67. package/dist/types/src/pageComponent/views/systemManager/orgManager/depManager/index.d.ts +0 -2
  68. package/dist/types/src/pageComponent/views/systemManager/orgManager/depManager/updateDepDialog.d.ts +0 -42
  69. package/dist/types/src/pageComponent/views/systemManager/orgManager/depManager/updateEmployeeDialog.d.ts +0 -40
  70. package/dist/types/src/pageComponent/views/systemManager/orgManager/empManager.d.ts +0 -2
  71. package/dist/types/src/pageComponent/views/systemManager/orgManager/postManager/index.d.ts +0 -2
  72. package/dist/types/src/pageComponent/views/systemManager/orgManager/postManager/updatePostDialog.d.ts +0 -35
  73. package/dist/types/src/pageComponent/views/systemManager/orgManager/teamManager/index.d.ts +0 -2
  74. package/dist/types/src/pageComponent/views/systemManager/orgManager/teamManager/updateTeamDialog.d.ts +0 -35
  75. package/dist/types/src/pageComponent/views/systemManager/paramManager/collapseContainer.d.ts +0 -20
  76. package/dist/types/src/pageComponent/views/systemManager/paramManager/dynamicForm.d.ts +0 -11
  77. package/dist/types/src/pageComponent/views/systemManager/paramManager/index.d.ts +0 -2
  78. package/dist/types/src/pageComponent/views/systemManager/paramManager/tabItem.d.ts +0 -11
  79. package/dist/types/src/pageComponent/views/systemManager/personalSetting.d.ts +0 -2
  80. package/dist/types/src/utils/className.d.ts +0 -2
  81. package/dist/types/src/utils/config.d.ts +0 -4
  82. package/dist/types/src/utils/getSlots.d.ts +0 -3
  83. package/dist/types/src/utils/index.d.ts +0 -10
  84. package/dist/types/src/utils/installComponent.d.ts +0 -3
  85. package/src/components/index.ts +0 -1
  86. package/src/gl.d.ts +0 -19
  87. package/src/ht/ht-widget.d.ts +0 -11327
  88. package/src/ht/ht.d.ts +0 -11410
  89. package/src/ht/index.d.ts +0 -4
  90. package/src/index.ts +0 -17
  91. package/src/pageComponent/api/auth/menuManager.ts +0 -44
  92. package/src/pageComponent/api/auth/roleManager.ts +0 -50
  93. package/src/pageComponent/api/auth/userManager.ts +0 -76
  94. package/src/pageComponent/api/axios.ts +0 -79
  95. package/src/pageComponent/api/index.ts +0 -25
  96. package/src/pageComponent/api/logManager.ts +0 -18
  97. package/src/pageComponent/api/org/depManager.ts +0 -98
  98. package/src/pageComponent/api/org/postManager.ts +0 -53
  99. package/src/pageComponent/api/org/teamManager.ts +0 -67
  100. package/src/pageComponent/api/param.ts +0 -36
  101. package/src/pageComponent/assets/img/code.png +0 -0
  102. package/src/pageComponent/assets/img/loginBackground.png +0 -0
  103. package/src/pageComponent/assets/img/logo.png +0 -0
  104. package/src/pageComponent/assets/img/mtInfo.png +0 -0
  105. package/src/pageComponent/assets/img/mtLogoBig.png +0 -0
  106. package/src/pageComponent/assets/img.d.ts +0 -1
  107. package/src/pageComponent/assets/logo.png +0 -0
  108. package/src/pageComponent/assets/styles/const.less +0 -1
  109. package/src/pageComponent/assets/styles/constant/antd.less +0 -1
  110. package/src/pageComponent/assets/styles/index.less +0 -15
  111. package/src/pageComponent/assets/styles/login.less +0 -56
  112. package/src/pageComponent/assets/styles/loginBox.less +0 -51
  113. package/src/pageComponent/assets/styles/reset.less +0 -146
  114. package/src/pageComponent/assets/styles/systemManager/about.less +0 -56
  115. package/src/pageComponent/assets/styles/systemManager/index.less +0 -89
  116. package/src/pageComponent/assets/styles/systemManager/menu-manager.less +0 -52
  117. package/src/pageComponent/assets/styles/systemManager/param-manager.less +0 -44
  118. package/src/pageComponent/assets/zh-cn.js +0 -134
  119. package/src/pageComponent/components/CommonTree.tsx +0 -362
  120. package/src/pageComponent/components/DynamicIcon.tsx +0 -27
  121. package/src/pageComponent/components/EditPasswordForm.tsx +0 -89
  122. package/src/pageComponent/components/IconSelect.tsx +0 -51
  123. package/src/pageComponent/components/Navbar.tsx +0 -96
  124. package/src/pageComponent/components/ProFormItem.tsx +0 -185
  125. package/src/pageComponent/components/SearchSelect.tsx +0 -127
  126. package/src/pageComponent/components/Sidebar.tsx +0 -123
  127. package/src/pageComponent/components/loginBox/README.md +0 -21
  128. package/src/pageComponent/components/loginBox/index.tsx +0 -174
  129. package/src/pageComponent/config/global.ts +0 -20
  130. package/src/pageComponent/config/htconfig.ts +0 -32
  131. package/src/pageComponent/config/install.ts +0 -10
  132. package/src/pageComponent/hooks/global.ts +0 -12
  133. package/src/pageComponent/hooks/manage-module/useModalForm.ts +0 -37
  134. package/src/pageComponent/hooks/manage-module/useModalTitle.ts +0 -31
  135. package/src/pageComponent/hooks/manage-module/useModalVisibleControl.ts +0 -31
  136. package/src/pageComponent/hooks/useBus.ts +0 -26
  137. package/src/pageComponent/hooks/useProxy.ts +0 -8
  138. package/src/pageComponent/hooks/useTableList.ts +0 -57
  139. package/src/pageComponent/hooks/useVModel.ts +0 -16
  140. package/src/pageComponent/index.ts +0 -3
  141. package/src/pageComponent/utils/base64.ts +0 -27
  142. package/src/pageComponent/utils/index.ts +0 -19
  143. package/src/pageComponent/utils/is.ts +0 -30
  144. package/src/pageComponent/utils/transform.ts +0 -27
  145. package/src/pageComponent/utils/tree.ts +0 -59
  146. package/src/pageComponent/utils/validation.ts +0 -14
  147. package/src/pageComponent/views/alarms/index.tsx +0 -7
  148. package/src/pageComponent/views/index.tsx +0 -20
  149. package/src/pageComponent/views/login.tsx +0 -66
  150. package/src/pageComponent/views/systemManager/about.tsx +0 -127
  151. package/src/pageComponent/views/systemManager/authManager/menuManager/index.tsx +0 -42
  152. package/src/pageComponent/views/systemManager/authManager/menuManager/menuDetail.tsx +0 -174
  153. package/src/pageComponent/views/systemManager/authManager/menuManager/menuSelectTree.tsx +0 -111
  154. package/src/pageComponent/views/systemManager/authManager/menuManager/updateMenuDialog.tsx +0 -111
  155. package/src/pageComponent/views/systemManager/authManager/roleManager/index.tsx +0 -233
  156. package/src/pageComponent/views/systemManager/authManager/roleManager/updateRoleDialog.tsx +0 -207
  157. package/src/pageComponent/views/systemManager/authManager/userManager/index.tsx +0 -255
  158. package/src/pageComponent/views/systemManager/authManager/userManager/updateUserDialog.tsx +0 -294
  159. package/src/pageComponent/views/systemManager/authManager/userManager/userProfileDialog.tsx +0 -102
  160. package/src/pageComponent/views/systemManager/logManager.tsx +0 -356
  161. package/src/pageComponent/views/systemManager/orgManager/depManager/depTree.tsx +0 -101
  162. package/src/pageComponent/views/systemManager/orgManager/depManager/employeeTable.tsx +0 -204
  163. package/src/pageComponent/views/systemManager/orgManager/depManager/index.tsx +0 -112
  164. package/src/pageComponent/views/systemManager/orgManager/depManager/updateDepDialog.tsx +0 -249
  165. package/src/pageComponent/views/systemManager/orgManager/depManager/updateEmployeeDialog.tsx +0 -312
  166. package/src/pageComponent/views/systemManager/orgManager/empManager.tsx +0 -7
  167. package/src/pageComponent/views/systemManager/orgManager/postManager/index.tsx +0 -192
  168. package/src/pageComponent/views/systemManager/orgManager/postManager/updatePostDialog.tsx +0 -153
  169. package/src/pageComponent/views/systemManager/orgManager/teamManager/index.tsx +0 -191
  170. package/src/pageComponent/views/systemManager/orgManager/teamManager/updateTeamDialog.tsx +0 -250
  171. package/src/pageComponent/views/systemManager/paramManager/collapseContainer.tsx +0 -54
  172. package/src/pageComponent/views/systemManager/paramManager/dynamicForm.tsx +0 -85
  173. package/src/pageComponent/views/systemManager/paramManager/index.tsx +0 -47
  174. package/src/pageComponent/views/systemManager/paramManager/tabItem.tsx +0 -163
  175. package/src/pageComponent/views/systemManager/personalSetting.tsx +0 -206
  176. package/src/styles/index.less +0 -1
  177. package/src/utils/className.ts +0 -16
  178. package/src/utils/config.ts +0 -5
  179. package/src/utils/getSlots.ts +0 -18
  180. package/src/utils/index.ts +0 -7
  181. package/src/utils/installComponent.ts +0 -12
  182. package/tsconfig.json +0 -27
@@ -1,250 +0,0 @@
1
- /*
2
- * @Abstract: 新增、查看、编辑 班组信息
3
- * @Author: wang liang
4
- * @Date: 2022-04-01 18:10:19
5
- * @LastEditors: wang liang
6
- * @LastEditTime: 2022-04-24 13:46:27
7
- */
8
-
9
- import { computed, defineComponent, nextTick, PropType, ref, watch } from "vue";
10
- import useVModel from "@/pageComponent/hooks/useVModel";
11
- import useModalTitle from "@/pageComponent/hooks/manage-module/useModalTitle";
12
- import useModalForm from "@/pageComponent/hooks/manage-module/useModalForm";
13
- import api from "@/pageComponent/api/org/teamManager";
14
- import { getRequiredRule } from "@/pageComponent/utils/validation";
15
-
16
- import {
17
- Modal,
18
- Form,
19
- FormItem,
20
- Select,
21
- SelectOption,
22
- Input,
23
- TreeSelect,
24
- Space,
25
- Button,
26
- message,
27
- } from "ant-design-vue";
28
- import SearchSelect from "@/pageComponent/components/SearchSelect";
29
-
30
- const UpdatePostDialog = defineComponent({
31
- emits: ["update:visible"],
32
- props: {
33
- visible: {
34
- type: Boolean,
35
- default: false,
36
- },
37
- mode: {
38
- type: String as PropType<"view" | "add" | "edit">,
39
- required: true,
40
- },
41
- record: {
42
- type: Object,
43
- default: () => ({}),
44
- },
45
- onRefresh: {
46
- type: Function,
47
- },
48
- },
49
- setup(props, { emit }) {
50
- const isVisible = useVModel(props, "visible", emit);
51
-
52
- const modalTitle = useModalTitle(props.mode, "班组");
53
-
54
- const isView = computed(() => props.mode === "view");
55
-
56
- const { form, formRef } = useModalForm(
57
- isVisible,
58
- () => props.record,
59
- props.mode,
60
- (r) => {
61
- r.memberIds = (r?.memberIds?.split(",") ?? []).map(Number);
62
- }
63
- );
64
-
65
- watch(form, () => {
66
- getEmployeeList(false);
67
- });
68
-
69
- /* ===== 下拉列表 ===== */
70
- // 部门列表
71
- const depList = ref<any[]>([]);
72
- const getDepList = async () => {
73
- const list = await api.getDepList();
74
- depList.value = list;
75
- };
76
- getDepList();
77
-
78
- // 员工列表
79
- const employeeList = ref([]);
80
- // 选择部门列表时获取员工列表
81
- const getEmployeeList = async (isClean = true) => {
82
- if (!form.value.depId) return;
83
- const { data } = await api.getEmployeeList(form.value.depId);
84
- employeeList.value = data;
85
- // 清空选中的员工和班长
86
- if (isClean) {
87
- form.value.memberIds = [];
88
- form.value.leaderId = undefined;
89
- }
90
- };
91
-
92
- // 岗位列表
93
- const postList = ref([]);
94
- const getPostList = () => {
95
- api
96
- .getPostList({ depId: form.value.depId })
97
- .then(({ data }) => (postList.value = data));
98
- };
99
-
100
- watch(
101
- () => form.value.depId,
102
- (val) => {
103
- if (val) getPostList();
104
- },
105
- { immediate: true }
106
- );
107
-
108
- /* 保存 */
109
- const handleSave = async () => {
110
- await formRef.value.validate();
111
- const data = {
112
- ...form.value,
113
- memberIds: form.value?.memberIds?.join(",") ?? "",
114
- };
115
- if (props.mode === "add") {
116
- await api.insertTeam(data);
117
- message.success("添加成功");
118
- } else if (props.mode === "edit") {
119
- await api.edidTeamRecord(data);
120
- message.success("修改成功");
121
- }
122
- props.onRefresh?.();
123
- isVisible.value = false;
124
- };
125
-
126
- return () => {
127
- return (
128
- <div class="update-post-dialog">
129
- <Modal
130
- title={modalTitle.value}
131
- centered
132
- v-model={[isVisible.value, "visible"]}
133
- >
134
- {{
135
- default: () => (
136
- <Form ref={formRef} labelCol={{ span: 4 }} model={form.value}>
137
- <FormItem
138
- name="code"
139
- required
140
- label="班组编码"
141
- rules={getRequiredRule("班组编码")}
142
- >
143
- {isView.value ? (
144
- <span>{props.record.code}</span>
145
- ) : (
146
- <Input v-model={[form.value.code, "value"]} />
147
- )}
148
- </FormItem>
149
- <FormItem
150
- name="depId"
151
- required
152
- label="所属部门"
153
- rules={getRequiredRule("所属部门")}
154
- >
155
- {isView.value ? (
156
- <span>{props.record.depName}</span>
157
- ) : (
158
- <TreeSelect
159
- fieldNames={{
160
- label: "name",
161
- value: "id",
162
- children: "subList",
163
- }}
164
- treeData={depList.value}
165
- v-model={[form.value.depId, "value"]}
166
- onChange={getEmployeeList}
167
- ></TreeSelect>
168
- )}
169
- </FormItem>
170
- <FormItem name="jobPostId" label="岗位名称">
171
- {isView.value ? (
172
- <span>{props.record.jobPostName}</span>
173
- ) : (
174
- <Select v-model={[form.value.jobPostId, "value"]}>
175
- {postList.value.map((item: any) => (
176
- <SelectOption key={item.id}>{item.name}</SelectOption>
177
- ))}
178
- </Select>
179
- )}
180
- </FormItem>
181
- <FormItem
182
- name="name"
183
- required
184
- label="班组名称"
185
- rules={getRequiredRule("班组名称")}
186
- >
187
- {isView.value ? (
188
- <span>{props.record.name}</span>
189
- ) : (
190
- <Input v-model={[form.value.name, "value"]} />
191
- )}
192
- </FormItem>
193
- <FormItem
194
- name="memberIds"
195
- required
196
- label="班组成员"
197
- rules={getRequiredRule("班组成员")}
198
- >
199
- {isView.value ? (
200
- <span>{props.record.memberNames}</span>
201
- ) : (
202
- <SearchSelect
203
- {...{ mode: "multiple" }}
204
- getUrl="/employee/all/summary"
205
- extParams={{ departmentId: form.value.depId }}
206
- excludeValues={[form.value.leaderId]}
207
- v-model={[form.value.memberIds, "value"]}
208
- />
209
- )}
210
- </FormItem>
211
- <FormItem
212
- name="leaderId"
213
- required
214
- label="班组班长"
215
- rules={getRequiredRule("班组班长")}
216
- >
217
- {isView.value ? (
218
- <span>{props.record.leaderName}</span>
219
- ) : (
220
- <SearchSelect
221
- getUrl="/employee/all/summary"
222
- extParams={{ departmentId: form.value.depId }}
223
- excludeValues={form.value.memberIds}
224
- v-model={[form.value.leaderId, "value"]}
225
- />
226
- )}
227
- </FormItem>
228
- </Form>
229
- ),
230
- footer: () => (
231
- <Space>
232
- <Button onClick={() => (isVisible.value = false)}>
233
- 关闭
234
- </Button>
235
- {!isView.value && (
236
- <Button type="primary" onClick={handleSave}>
237
- 保存
238
- </Button>
239
- )}
240
- </Space>
241
- ),
242
- }}
243
- </Modal>
244
- </div>
245
- );
246
- };
247
- },
248
- });
249
-
250
- export default UpdatePostDialog;
@@ -1,54 +0,0 @@
1
- /*
2
- * @Abstract: 摘要
3
- * @Author: wang liang
4
- * @Date: 2022-03-25 10:51:58
5
- * @LastEditors: wang liang
6
- * @LastEditTime: 2022-03-31 14:03:07
7
- */
8
- import { defineComponent, ref } from "vue";
9
- import { Button } from "ant-design-vue";
10
- import { CaretUpOutlined, CaretRightOutlined } from "@ant-design/icons-vue";
11
-
12
- const CollapseContainer = defineComponent({
13
- props: {
14
- title: {
15
- type: String,
16
- default: "",
17
- },
18
- defaultCollapse: {
19
- type: Boolean,
20
- default: true,
21
- },
22
- },
23
- setup(props, { slots }) {
24
- /* 是否展开状态 */
25
- const isOpen = ref(props.defaultCollapse);
26
-
27
- return () => (
28
- <div class="collapse-container">
29
- <div class="header">
30
- <span class="container-title">{props.title}</span>
31
- <Button type="link" onClick={() => (isOpen.value = !isOpen.value)}>
32
- {isOpen.value ? (
33
- <span>
34
- 收起 <CaretUpOutlined />
35
- </span>
36
- ) : (
37
- <span>
38
- 展开 <CaretRightOutlined />
39
- </span>
40
- )}
41
- </Button>
42
- </div>
43
- <div
44
- class="default-container"
45
- style={{ display: isOpen.value ? "" : "none" }}
46
- >
47
- {slots.default?.()}
48
- </div>
49
- </div>
50
- );
51
- },
52
- });
53
-
54
- export default CollapseContainer;
@@ -1,85 +0,0 @@
1
- /*
2
- * @Abstract: 动态表单
3
- * @Author: wang liang
4
- * @Date: 2022-03-25 09:02:59
5
- * @LastEditors: wang liang
6
- * @LastEditTime: 2022-03-31 10:38:03
7
- */
8
- import { defineComponent, ref, watch } from "vue";
9
- import useProxy from "@/pageComponent/hooks/useProxy";
10
- import { api } from "@/pageComponent/api/param";
11
- import ProFormItem from "@/pageComponent/components/ProFormItem";
12
- import { Form, Row, Col } from "ant-design-vue";
13
-
14
- const DynamicForm = defineComponent({
15
- props: {
16
- id: {
17
- type: Number,
18
- required: true,
19
- },
20
- },
21
- setup(props) {
22
- const proxy = useProxy();
23
-
24
- /* ===== 获取表单描述列表 ===== */
25
- const formDescList = ref([]);
26
- const getFormDescList = async () => {
27
- const { data } = await api.getParamDefineList(props.id);
28
- formDescList.value = data.paramDefineValueVoList;
29
- };
30
- getFormDescList();
31
-
32
- /* ===== 表单相关逻辑 ===== */
33
- const formRef = ref();
34
- const form = ref();
35
- const valueDefineMap = ref(new Map());
36
- watch(formDescList, (val) => {
37
- valueDefineMap.value = new Map();
38
- // 设置表单的初始值
39
- form.value = val.reduce((prev: any, curr: any) => {
40
- prev[curr.paramDefine.code] = curr.paramDefineValue.value;
41
- valueDefineMap.value.set(curr.paramDefine.code, curr.paramDefineValue);
42
- return prev;
43
- }, {});
44
- });
45
- // 表单元素变化 更新form
46
- const handleFieldChange = (name: string, value: any) => {
47
- form.value[name] = value;
48
- };
49
- // 表单提交 暴露给父组件的方法
50
- proxy._confirm = async () => {
51
- await formRef.value.validate();
52
- // 组合value以及对应的valueDefine对象 (接口需要)
53
- const res: any[] = [];
54
- for (const key in form.value) {
55
- res.push({
56
- key,
57
- value: form.value[key],
58
- valueDefine: valueDefineMap.value.get(key),
59
- });
60
- }
61
- return res;
62
- };
63
-
64
- // 刷新表单 用于更新之后
65
- proxy._update = async () => {
66
- await getFormDescList();
67
- };
68
-
69
- return () => (
70
- <div class="dynamic-form">
71
- <Form ref={formRef} labelCol={{ span: 10 }} model={form.value}>
72
- <Row gutter={16}>
73
- {formDescList.value.map((item: any, index) => (
74
- <Col key={index} xl={6} lg={8} md={12} xs={24}>
75
- <ProFormItem description={item} onChange={handleFieldChange} />
76
- </Col>
77
- ))}
78
- </Row>
79
- </Form>
80
- </div>
81
- );
82
- },
83
- });
84
-
85
- export default DynamicForm;
@@ -1,47 +0,0 @@
1
- /*
2
- * @Abstract: 摘要
3
- * @Author: wang liang
4
- * @Date: 2022-03-25 10:51:58
5
- * @LastEditors: wang liang
6
- * @LastEditTime: 2022-03-31 14:05:35
7
- */
8
- /*
9
- * @Abstract: 参数管理
10
- * @Author: wang liang
11
- * @Date: 2022-03-25 10:51:58
12
- * @LastEditors: wang liang
13
- * @LastEditTime: 2022-03-29 15:03:27
14
- */
15
- import { defineComponent, ref } from "vue";
16
-
17
- import { Tabs, TabPane } from "ant-design-vue";
18
- import { api } from "@/pageComponent/api/param";
19
- import TabItem from "./tabItem";
20
-
21
- const ParamManager = defineComponent({
22
- setup() {
23
- const tabs = ref([]);
24
-
25
- /* 获取标签页数据 */
26
- const getTabs = async () => {
27
- const { data } = await api.getGroupList({ level: "tab" });
28
- tabs.value = data;
29
- };
30
-
31
- getTabs();
32
-
33
- return () => (
34
- <div class="param-manager">
35
- <Tabs>
36
- {tabs.value.map((item: any) => (
37
- <TabPane key={item.id} tab={item.name}>
38
- <TabItem tabId={item.id} />
39
- </TabPane>
40
- ))}
41
- </Tabs>
42
- </div>
43
- );
44
- },
45
- });
46
-
47
- export default ParamManager;
@@ -1,163 +0,0 @@
1
- import { defineComponent, ref, provide, onBeforeUpdate } from "vue";
2
- import { api } from "@/pageComponent/api/param";
3
- import { Space, Button, Empty, message } from "ant-design-vue";
4
- import DynamicForm from "./dynamicForm";
5
- import CollapseContainer from "./collapseContainer";
6
-
7
- const TabItem = defineComponent({
8
- props: {
9
- tabId: {
10
- type: Number,
11
- required: true,
12
- },
13
- },
14
- setup(props) {
15
- /* ===== 表单ref ===== */
16
- // 菜单级别form ref
17
- const groupFormRef = ref<any[]>([]);
18
- // cell级别form ref
19
- const cellFormRef = ref<any[]>([]);
20
- // 更新前需要清空ref数组
21
- onBeforeUpdate(() => {
22
- groupFormRef.value = [];
23
- cellFormRef.value = [];
24
- });
25
-
26
- /* 是否编辑状态 */
27
- const isEdit = ref(false);
28
- provide("isEdit", isEdit);
29
-
30
- /* ===== 获取菜单级别的参数 以及菜单下cell级别参数 ===== */
31
- const groupList = ref([]);
32
- const getGoupAndCellParams = async () => {
33
- // 组级别
34
- const { data: groupRes } = await api.getGroupList({
35
- level: "group",
36
- parentId: props.tabId,
37
- });
38
- // cell级别 (使用promise.all 防止阻塞)
39
- const cellPromises: Array<Promise<any>> = [];
40
- groupRes.forEach((item: any) => {
41
- cellPromises.push(
42
- api.getGroupList({
43
- level: "cell",
44
- parentId: item.id,
45
- })
46
- );
47
- item._children = [];
48
- });
49
- const resList = await Promise.all(cellPromises);
50
- // 遍历结果 通过index映射存入到group中的_children中
51
- resList.forEach(({ data }, index) => {
52
- groupRes[index]._children = data;
53
- });
54
- groupList.value = groupRes;
55
- };
56
- getGoupAndCellParams();
57
-
58
- /* ===== 保存 ===== */
59
- const handleSave = async () => {
60
- const allFormRef = [...groupFormRef.value, ...cellFormRef.value];
61
-
62
- // 验证表单
63
- const validateList: Promise<any>[] = [];
64
- allFormRef.forEach((item) => {
65
- validateList.push(item._confirm());
66
- });
67
- // 转换结果
68
- const formList = (await Promise.all(validateList)).reduce(
69
- (prev, curr) => {
70
- // 展平 & 映射
71
- prev.push(
72
- ...curr.map((item: any) => {
73
- return {
74
- ...item.valueDefine,
75
- value: item.value,
76
- };
77
- })
78
- );
79
- return prev;
80
- },
81
- []
82
- );
83
- await api.batchSaveParamsValue(formList);
84
- message.success("保存成功");
85
- // 更新表单的值
86
- const updateFormList: Promise<any>[] = [];
87
- allFormRef.forEach((item) => updateFormList.push(item._update()));
88
- await Promise.all(updateFormList);
89
- isEdit.value = false;
90
- };
91
-
92
- return () => (
93
- <div class="tab-item">
94
- {/* 编辑按钮 */}
95
- <div class="operation">
96
- <Space>
97
- {isEdit.value ? (
98
- <>
99
- <Button
100
- key="cancle"
101
- style={{ width: "100px" }}
102
- onClick={() => (isEdit.value = false)}
103
- >
104
- 取消
105
- </Button>
106
- <Button
107
- key="save"
108
- style={{ width: "100px" }}
109
- type="primary"
110
- onClick={handleSave}
111
- >
112
- 保存
113
- </Button>
114
- </>
115
- ) : (
116
- <Button
117
- key="edit"
118
- style={{ width: "100px" }}
119
- type="primary"
120
- onClick={() => (isEdit.value = true)}
121
- >
122
- 编辑
123
- </Button>
124
- )}
125
- </Space>
126
- </div>
127
- {/* 标签级别的参数 (暂时不要) */}
128
- {/* <DynamicForm id={props.tabId} /> */}
129
- {/* 菜单级别 列表 */}
130
- <div class="group-container">
131
- {groupList.value.length ? (
132
- groupList.value.map((item: any, index) => (
133
- <div class="group-item" key={item.id}>
134
- <h2 class="group-item-title">{item.name}</h2>
135
- <DynamicForm
136
- key={item.id}
137
- ref={(ins: any) => (groupFormRef.value[index] = ins)}
138
- id={item.id}
139
- />
140
-
141
- {/* 二级菜单 多个 */}
142
- <div class="second-menu-container">
143
- {(item._children ?? []).map((cell: any, index: number) => (
144
- <CollapseContainer key={item.id} title={item.name}>
145
- <DynamicForm
146
- ref={(ins: any) => (cellFormRef.value[index] = ins)}
147
- id={cell.id}
148
- />
149
- </CollapseContainer>
150
- ))}
151
- </div>
152
- </div>
153
- ))
154
- ) : (
155
- <Empty />
156
- )}
157
- </div>
158
- </div>
159
- );
160
- },
161
- });
162
-
163
- export default TabItem;