adtec-core-package 1.2.4 → 1.2.6

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 (190) hide show
  1. package/README.en.md +36 -36
  2. package/eslint.config.js +11 -21
  3. package/package.json +66 -64
  4. package/src/api/BasicApi.ts +26 -26
  5. package/src/api/DeptInfoApi.ts +19 -19
  6. package/src/api/DocumentApi.ts +27 -27
  7. package/src/api/EmployeeInfoApi.ts +17 -17
  8. package/src/api/SysDictCacheApi.ts +29 -29
  9. package/src/api/SysUserApi.ts +35 -35
  10. package/src/api/framework.ts +12 -12
  11. package/src/api/workflow/workflow.ts +31 -31
  12. package/src/api/workflow/workflowInstApi.ts +72 -72
  13. package/src/assets/style/ant.scss +19 -19
  14. package/src/assets/style/index.less +180 -180
  15. package/src/components/ElFlex/ElFlex.vue +297 -297
  16. package/src/components/ElTotalTools.vue +70 -70
  17. package/src/components/OperationAuth/operationAuth.vue +26 -26
  18. package/src/components/RichTextEditor/RichTextEditor.vue +144 -144
  19. package/src/components/Scrollbars/ElScrollbars.vue +21 -21
  20. package/src/components/Search/ElIconSearch.vue +267 -267
  21. package/src/components/Search/ElSearch.vue +154 -154
  22. package/src/components/SelectInDicators/SelectInDicators.vue +225 -225
  23. package/src/components/SelectInDicators/api/DataIndicatorsApi.ts +28 -28
  24. package/src/components/SelectInDicators/interface/IComIndex.ts +26 -26
  25. package/src/components/SelectInDicators/interface/IComIndexAttri.ts +18 -18
  26. package/src/components/Table/ElTableColumnDynamic.vue +25 -25
  27. package/src/components/Table/ElTableColumnEdit.vue +264 -263
  28. package/src/components/Table/ElTableTool.ts +37 -37
  29. package/src/components/Title/ElTitle.vue +53 -53
  30. package/src/components/autoToolTip/ElAutoToolTip.vue +62 -62
  31. package/src/components/baseEcharts/index.vue +48 -48
  32. package/src/components/bpmntree/api/modules/role.ts +31 -31
  33. package/src/components/bpmntree/api/modules/user.ts +17 -17
  34. package/src/components/bpmntree/components/AdvancedFilter/Operator.vue +112 -112
  35. package/src/components/bpmntree/components/AdvancedFilter/Trigger.vue +23 -23
  36. package/src/components/bpmntree/components/AdvancedFilter/index.vue +230 -230
  37. package/src/components/bpmntree/components/AdvancedFilter/type.ts +20 -20
  38. package/src/components/bpmntree/components/FlowIcon/index.scss +7 -7
  39. package/src/components/bpmntree/components/FlowIcon/index.tsx +68 -68
  40. package/src/components/bpmntree/components/Render/render.vue +90 -90
  41. package/src/components/bpmntree/components/Render/type.ts +12 -12
  42. package/src/components/bpmntree/components/RoleSelector/RolePicker.vue +264 -264
  43. package/src/components/bpmntree/components/RoleSelector/RoleTag.vue +48 -48
  44. package/src/components/bpmntree/components/RoleSelector/index.vue +113 -113
  45. package/src/components/bpmntree/components/UserSelector/UserTag.vue +73 -73
  46. package/src/components/bpmntree/components/UserSelector/index.vue +140 -140
  47. package/src/components/bpmntree/hooks/useDraggableScroll.ts +44 -44
  48. package/src/components/bpmntree/typings/index.d.ts +1 -1
  49. package/src/components/bpmntree/views/flowDesign/index.vue +652 -652
  50. package/src/components/bpmntree/views/flowDesign/nodes/Add.vue +184 -184
  51. package/src/components/bpmntree/views/flowDesign/nodes/ApprovalNode.vue +127 -127
  52. package/src/components/bpmntree/views/flowDesign/nodes/CcNode.vue +93 -93
  53. package/src/components/bpmntree/views/flowDesign/nodes/ConcurrentNode.vue +61 -61
  54. package/src/components/bpmntree/views/flowDesign/nodes/ConditionNode.vue +59 -59
  55. package/src/components/bpmntree/views/flowDesign/nodes/EndNode.vue +80 -80
  56. package/src/components/bpmntree/views/flowDesign/nodes/ExclusiveNode.vue +20 -20
  57. package/src/components/bpmntree/views/flowDesign/nodes/GatewayNode.vue +173 -173
  58. package/src/components/bpmntree/views/flowDesign/nodes/InclusiveNode.vue +20 -20
  59. package/src/components/bpmntree/views/flowDesign/nodes/JumpNode.vue +49 -49
  60. package/src/components/bpmntree/views/flowDesign/nodes/Node.vue +346 -346
  61. package/src/components/bpmntree/views/flowDesign/nodes/NotifyNode.vue +115 -115
  62. package/src/components/bpmntree/views/flowDesign/nodes/ParallelNode.vue +20 -20
  63. package/src/components/bpmntree/views/flowDesign/nodes/PopoverView.vue +78 -78
  64. package/src/components/bpmntree/views/flowDesign/nodes/StartNode.vue +84 -84
  65. package/src/components/bpmntree/views/flowDesign/nodes/TimerNode.vue +50 -50
  66. package/src/components/bpmntree/views/flowDesign/nodes/TreeNode.vue +45 -45
  67. package/src/components/bpmntree/views/flowDesign/nodes/type.ts +192 -192
  68. package/src/components/bpmntree/views/flowDesign/panels/ApprovalPanel.vue +516 -516
  69. package/src/components/bpmntree/views/flowDesign/panels/AssigneePanel.vue +120 -120
  70. package/src/components/bpmntree/views/flowDesign/panels/CcPanel.vue +99 -99
  71. package/src/components/bpmntree/views/flowDesign/panels/ConditionPanel.vue +41 -41
  72. package/src/components/bpmntree/views/flowDesign/panels/EndPanel.vue +18 -18
  73. package/src/components/bpmntree/views/flowDesign/panels/ExecutionListeners.vue +110 -110
  74. package/src/components/bpmntree/views/flowDesign/panels/JumpPanel.vue +32 -32
  75. package/src/components/bpmntree/views/flowDesign/panels/NotifyPanel.vue +101 -101
  76. package/src/components/bpmntree/views/flowDesign/panels/ParaPanel.vue +248 -248
  77. package/src/components/bpmntree/views/flowDesign/panels/StartPanel.vue +159 -159
  78. package/src/components/bpmntree/views/flowDesign/panels/TaskListeners.vue +110 -110
  79. package/src/components/bpmntree/views/flowDesign/panels/TimerPanel.vue +51 -51
  80. package/src/components/bpmntree/views/flowDesign/panels/index.vue +85 -85
  81. package/src/components/bpmntree/views/view.index.vue +291 -291
  82. package/src/components/business/comp.userForm.vue +292 -286
  83. package/src/components/business/userSelect.vue +413 -413
  84. package/src/components/icon/ElIconBtn.vue +210 -210
  85. package/src/components/upload/ElUploads.vue +285 -285
  86. package/src/components/upload/FileView.vue +159 -159
  87. package/src/components/upload/FileViewComponents.vue +56 -56
  88. package/src/components/workflow/TaskOperation.vue +212 -212
  89. package/src/components/workflow/WorkflowTodoDialog.vue +81 -81
  90. package/src/components/workflow/components/AddOrMinusMultiDialog.vue +159 -159
  91. package/src/components/workflow/components/CheckDialog.vue +315 -316
  92. package/src/components/workflow/components/ProcessDetailComp.vue +133 -133
  93. package/src/components/workflow/components/ProcessDetailDialog.vue +129 -129
  94. package/src/components/workflow/components/ProcessInstance.vue +117 -117
  95. package/src/components/workflow/components/ProcessInstanceStep.vue +226 -226
  96. package/src/components/workflow/components/SelectAssigneeDialog.vue +109 -109
  97. package/src/components/workflow/components/SelectReturnActivityDialog.vue +104 -104
  98. package/src/config/ElementPlusConfig.ts +95 -95
  99. package/src/config/VxeTableConfig.ts +35 -0
  100. package/src/css/elementUI/autocomplete.scss +89 -89
  101. package/src/css/elementUI/common/var.scss +1549 -1549
  102. package/src/css/elementUI/date-picker/picker.scss +219 -219
  103. package/src/css/elementUI/descriptions.scss +152 -152
  104. package/src/css/elementUI/drawer.scss +164 -164
  105. package/src/css/elementUI/table.scss +694 -694
  106. package/src/css/elementUI/tabs.scss +659 -659
  107. package/src/css/vxeTableUI/all.scss +7 -0
  108. package/src/css/vxeTableUI/base.scss +16 -0
  109. package/src/css/vxeTableUI/components/colgroup.scss +0 -0
  110. package/src/css/vxeTableUI/components/column.scss +0 -0
  111. package/src/css/vxeTableUI/components/grid.scss +83 -0
  112. package/src/css/vxeTableUI/components/icon.scss +205 -0
  113. package/src/css/vxeTableUI/components/old-icon.scss +715 -0
  114. package/src/css/vxeTableUI/components/table-module/all.scss +7 -0
  115. package/src/css/vxeTableUI/components/table-module/custom.scss +491 -0
  116. package/src/css/vxeTableUI/components/table-module/edit.scss +0 -0
  117. package/src/css/vxeTableUI/components/table-module/export.scss +130 -0
  118. package/src/css/vxeTableUI/components/table-module/filter.scss +128 -0
  119. package/src/css/vxeTableUI/components/table-module/keyboard.scss +0 -0
  120. package/src/css/vxeTableUI/components/table-module/menu.scss +86 -0
  121. package/src/css/vxeTableUI/components/table-module/validator.scss +0 -0
  122. package/src/css/vxeTableUI/components/table.scss +2242 -0
  123. package/src/css/vxeTableUI/components/toolbar.scss +100 -0
  124. package/src/css/vxeTableUI/components/ui.scss +0 -0
  125. package/src/css/vxeTableUI/components/v-x-e-table.scss +0 -0
  126. package/src/css/vxeTableUI/cssvar.scss +3 -0
  127. package/src/css/vxeTableUI/default.scss +3 -0
  128. package/src/css/vxeTableUI/helpers/baseMixin.scss +82 -0
  129. package/src/css/vxeTableUI/icon/iconfont.ttf +0 -0
  130. package/src/css/vxeTableUI/icon/iconfont.woff +0 -0
  131. package/src/css/vxeTableUI/icon/iconfont.woff2 +0 -0
  132. package/src/css/vxeTableUI/index.scss +4 -0
  133. package/src/css/vxeTableUI/modules.scss +5 -0
  134. package/src/css/vxeTableUI/theme/base.scss +89 -0
  135. package/src/css/vxeTableUI/theme/dark.scss +46 -0
  136. package/src/css/vxeTableUI/theme/light.scss +42 -0
  137. package/src/css/vxeTableUI/variable.scss +41 -0
  138. package/src/directives/vKeydown.ts +91 -91
  139. package/src/hooks/useDictHooks.ts +119 -119
  140. package/src/hooks/useEcharts.ts +58 -58
  141. package/src/hooks/useFileView.ts +34 -11
  142. package/src/hooks/useMessageHooks.ts +132 -132
  143. package/src/hooks/usePermissionToolHooks.ts +21 -21
  144. package/src/hooks/useResetRefHooks.ts +18 -18
  145. package/src/hooks/userWorkflowHooks.ts +92 -92
  146. package/src/interface/BaseEntity.ts +30 -30
  147. package/src/interface/IMdmDept.ts +84 -84
  148. package/src/interface/IMdmEmployee.ts +134 -134
  149. package/src/interface/IMdmEmployeeQuery.ts +20 -19
  150. package/src/interface/IMdmOrg.ts +29 -29
  151. package/src/interface/IMdmOrgQuery.ts +13 -13
  152. package/src/interface/IOrgDeptInfo.ts +12 -12
  153. package/src/interface/ISysDictDataCacheVo.ts +46 -46
  154. package/src/interface/ISysDictType.ts +37 -37
  155. package/src/interface/ISysMenuDataVo.ts +22 -22
  156. package/src/interface/ISysMenuInfoVo.ts +83 -83
  157. package/src/interface/ISysMenuOperationVo.ts +21 -21
  158. package/src/interface/ISysUploadFiles.ts +16 -16
  159. package/src/interface/ISysUserInfo.ts +70 -70
  160. package/src/interface/IUserPermissionVo.ts +34 -34
  161. package/src/interface/Message.ts +73 -73
  162. package/src/interface/PageData.ts +17 -17
  163. package/src/interface/ResponseData.ts +16 -16
  164. package/src/interface/dictMapType.ts +11 -11
  165. package/src/interface/enum/MessageEnum.ts +41 -41
  166. package/src/interface/workflow/IWfProcessDefVo.ts +14 -14
  167. package/src/interface/workflow/IWfReturnNodeVo.ts +15 -16
  168. package/src/interface/workflow/IWfTaskAskVo.ts +61 -65
  169. package/src/interface/workflow/IWfTaskQueryVo.ts +30 -30
  170. package/src/interface/workflow/IWfTaskUsersVo.ts +21 -21
  171. package/src/interface/workflow/IWfTaskVo.ts +187 -187
  172. package/src/interface/workflow/workflow.ts +22 -22
  173. package/src/mixin/globalMixin.ts +45 -45
  174. package/src/packages/index.ts +18 -18
  175. package/src/packages/text.vue +13 -13
  176. package/src/plugins/echartsConfig.ts +73 -73
  177. package/src/plugins/plugins.ts +12 -12
  178. package/src/plugins/renderDialog.ts +74 -74
  179. package/src/stores/dictStore.ts +51 -51
  180. package/src/stores/messageStore.ts +49 -49
  181. package/src/stores/permissionStore.ts +108 -108
  182. package/src/stores/storeConfig.ts +23 -23
  183. package/src/stores/userInfoStore.ts +31 -31
  184. package/src/utils/AxiosConfig.ts +219 -219
  185. package/src/utils/modules.ts +8 -8
  186. package/src/utils/request.ts +76 -76
  187. package/adtec-core-package/adtec-core-package.css +0 -1
  188. package/adtec-core-package/adtec-core-package.js +0 -41605
  189. package/adtec-core-package/adtec-core-package.umd.cjs +0 -79
  190. package/adtec-core-package/favicon.ico +0 -0
@@ -1,53 +1,53 @@
1
- <!--创建人 丁盼-->
2
- <!--说明: ElTitle-->
3
- <!--创建时间: 2024/10/26 下午7:08-->
4
- <!--修改时间: 2024/10/26 下午7:08-->
5
- <template>
6
- <el-flex align="center" height="44px" style="background: #ffffff">
7
- <el-flex align="center">
8
- <template v-if="level + '' === '0'">
9
- <el-icons
10
- model-value="adtec-onetitle"
11
- style="color: var(--el-color-primary); font-size: 16px"
12
- ></el-icons>
13
- <el-text style="font-size: 16px; line-height: 16px">{{ title }}</el-text>
14
- </template>
15
- <template v-if="level + '' === '1'">
16
- <el-icons
17
- model-value="adtec-twotitle"
18
- style="color: var(--el-color-primary); font-size: 16px"
19
- ></el-icons>
20
- <el-text style="font-size: 16px; line-height: 16px">{{ title }}</el-text>
21
- </template>
22
- <template v-if="level + '' === '2'">
23
- <el-icons
24
- model-value="adtec-threetitle"
25
- style="color: var(--el-color-primary); font-size: 16px"
26
- ></el-icons>
27
- <el-text style="font-size: 16px; line-height: 16px">{{ title }}</el-text>
28
- </template>
29
- </el-flex>
30
- <slot></slot>
31
- </el-flex>
32
- </template>
33
- <script setup lang="ts">
34
- import ElIcons from '../icon/ElIcons.vue'
35
- import ElFlex from '../ElFlex/ElFlex.vue'
36
-
37
- defineProps({
38
- /**
39
- * @type string
40
- * @default ''
41
- * @description 提示文字
42
- */
43
- title: {
44
- type: String,
45
- default: '标题',
46
- },
47
- level: {
48
- type: String,
49
- default: '0',
50
- },
51
- })
52
- </script>
53
- <style scoped lang="scss"></style>
1
+ <!--创建人 丁盼-->
2
+ <!--说明: ElTitle-->
3
+ <!--创建时间: 2024/10/26 下午7:08-->
4
+ <!--修改时间: 2024/10/26 下午7:08-->
5
+ <template>
6
+ <el-flex align="center" height="44px" style="background: #ffffff">
7
+ <el-flex align="center">
8
+ <template v-if="level + '' === '0'">
9
+ <el-icons
10
+ model-value="adtec-onetitle"
11
+ style="color: var(--el-color-primary); font-size: 16px"
12
+ ></el-icons>
13
+ <el-text style="font-size: 16px; line-height: 16px">{{ title }}</el-text>
14
+ </template>
15
+ <template v-if="level + '' === '1'">
16
+ <el-icons
17
+ model-value="adtec-twotitle"
18
+ style="color: var(--el-color-primary); font-size: 16px"
19
+ ></el-icons>
20
+ <el-text style="font-size: 16px; line-height: 16px">{{ title }}</el-text>
21
+ </template>
22
+ <template v-if="level + '' === '2'">
23
+ <el-icons
24
+ model-value="adtec-threetitle"
25
+ style="color: var(--el-color-primary); font-size: 16px"
26
+ ></el-icons>
27
+ <el-text style="font-size: 16px; line-height: 16px">{{ title }}</el-text>
28
+ </template>
29
+ </el-flex>
30
+ <slot></slot>
31
+ </el-flex>
32
+ </template>
33
+ <script setup lang="ts">
34
+ import ElIcons from '../icon/ElIcons.vue'
35
+ import ElFlex from '../ElFlex/ElFlex.vue'
36
+
37
+ defineProps({
38
+ /**
39
+ * @type string
40
+ * @default ''
41
+ * @description 提示文字
42
+ */
43
+ title: {
44
+ type: String,
45
+ default: '标题',
46
+ },
47
+ level: {
48
+ type: String,
49
+ default: '0',
50
+ },
51
+ })
52
+ </script>
53
+ <style scoped lang="scss"></style>
@@ -1,62 +1,62 @@
1
- <!--创建人 胡啸东-->
2
- <!--说明: index-->
3
- <!--创建时间: 2024/12/17 下午3:27-->
4
- <!--修改时间: 2024/12/17 下午3:27-->
5
- <template>
6
- <el-tooltip
7
- effect="light"
8
- :content="props.tooltipContent ? props.tooltipContent : props.content"
9
- placement="top"
10
- :disabled="isShow"
11
- >
12
- <template #content>
13
- <!-- 此处的默认值先看tooltipContent有没有,没有就给默认content -->
14
- <slot name="tooltipContent"
15
- >{{ props.tooltipContent ? props.tooltipContent : props.content }}
16
- </slot>
17
- </template>
18
- <div class="content" :style="{ width: props.width }" @mouseover="isShowTooltip">
19
- <span ref="contentRef">
20
- <!-- 给一个没有写插槽的默认值,兼容纯文本的情况 -->
21
- <slot name="content">{{ props.content }}</slot>
22
- </span>
23
- </div>
24
- </el-tooltip>
25
- </template>
26
- <script setup lang="ts">
27
- import { ref } from 'vue'
28
-
29
- // 定义props的类型
30
-
31
- interface Props {
32
- content: string
33
- width: string
34
- tooltipContent?: string
35
- }
36
-
37
- // 使用withDefaults来给props赋默认值
38
- const props = withDefaults(defineProps<Props>(), {
39
- content: '',
40
- width: '',
41
- tooltipContent: '',
42
- })
43
- // 使用isShow来控制tooltip是否显示
44
- const isShow = ref<boolean>(true)
45
- // 在span标签上定义一个ref
46
- const contentRef = ref()
47
- const isShowTooltip = function (): void {
48
- // 计算span标签的offsetWidth与盒子元素的offsetWidth,给isShow赋值
49
- if (contentRef.value && contentRef.value.parentNode.offsetWidth < contentRef.value.offsetWidth) {
50
- isShow.value = false
51
- } else {
52
- isShow.value = true
53
- }
54
- }
55
- </script>
56
- <style scoped lang="scss">
57
- .content {
58
- overflow: hidden;
59
- white-space: nowrap;
60
- text-overflow: ellipsis;
61
- }
62
- </style>
1
+ <!--创建人 胡啸东-->
2
+ <!--说明: index-->
3
+ <!--创建时间: 2024/12/17 下午3:27-->
4
+ <!--修改时间: 2024/12/17 下午3:27-->
5
+ <template>
6
+ <el-tooltip
7
+ effect="light"
8
+ :content="props.tooltipContent ? props.tooltipContent : props.content"
9
+ placement="top"
10
+ :disabled="isShow"
11
+ >
12
+ <template #content>
13
+ <!-- 此处的默认值先看tooltipContent有没有,没有就给默认content -->
14
+ <slot name="tooltipContent"
15
+ >{{ props.tooltipContent ? props.tooltipContent : props.content }}
16
+ </slot>
17
+ </template>
18
+ <div class="content" :style="{ width: props.width }" @mouseover="isShowTooltip">
19
+ <span ref="contentRef">
20
+ <!-- 给一个没有写插槽的默认值,兼容纯文本的情况 -->
21
+ <slot name="content">{{ props.content }}</slot>
22
+ </span>
23
+ </div>
24
+ </el-tooltip>
25
+ </template>
26
+ <script setup lang="ts">
27
+ import { ref } from 'vue'
28
+
29
+ // 定义props的类型
30
+
31
+ interface Props {
32
+ content: string
33
+ width: string
34
+ tooltipContent?: string
35
+ }
36
+
37
+ // 使用withDefaults来给props赋默认值
38
+ const props = withDefaults(defineProps<Props>(), {
39
+ content: '',
40
+ width: '',
41
+ tooltipContent: '',
42
+ })
43
+ // 使用isShow来控制tooltip是否显示
44
+ const isShow = ref<boolean>(true)
45
+ // 在span标签上定义一个ref
46
+ const contentRef = ref()
47
+ const isShowTooltip = function (): void {
48
+ // 计算span标签的offsetWidth与盒子元素的offsetWidth,给isShow赋值
49
+ if (contentRef.value && contentRef.value.parentNode.offsetWidth < contentRef.value.offsetWidth) {
50
+ isShow.value = false
51
+ } else {
52
+ isShow.value = true
53
+ }
54
+ }
55
+ </script>
56
+ <style scoped lang="scss">
57
+ .content {
58
+ overflow: hidden;
59
+ white-space: nowrap;
60
+ text-overflow: ellipsis;
61
+ }
62
+ </style>
@@ -1,48 +1,48 @@
1
- <!--创建人 胡啸东-->
2
- <!--说明: index-->
3
- <!--创建时间: 2024/11/4 下午4:52-->
4
- <!--修改时间: 2024/11/4 下午4:52-->
5
- <template>
6
- <div
7
- ref="echartsRef"
8
- :style="{
9
- width: width,
10
- height: height,
11
- }"
12
- />
13
- </template>
14
-
15
- <script lang="ts" setup>
16
- import { onMounted, type PropType, ref, watch } from 'vue'
17
- import { type EChartsCoreOption, useEcharts } from '../../hooks/useEcharts.ts' // 引入hooks
18
- const props = defineProps({
19
- options: { type: Object as PropType<EChartsCoreOption>, required: true },
20
- height: { type: String, default: '100%' },
21
- width: { type: String, default: '100%' },
22
- themeColors: { type: Array as PropType<string[]>, default: () => [] },
23
- })
24
-
25
- const echartsRef = ref()
26
-
27
- const { setOptions, initCharts } = useEcharts(echartsRef, props.options)
28
-
29
- watch(
30
- () => props.options,
31
- (nVal) => {
32
- let targetOptions: EChartsCoreOption = {}
33
- if (props.themeColors && props.themeColors.length > 0) {
34
- targetOptions = { ...nVal }
35
- targetOptions.color = props.themeColors
36
- } else {
37
- targetOptions = { ...nVal }
38
- }
39
- setOptions(targetOptions)
40
- },
41
- { deep: true },
42
- )
43
-
44
- onMounted(() => {
45
- initCharts()
46
- })
47
- defineExpose({ setOptions, initCharts })
48
- </script>
1
+ <!--创建人 胡啸东-->
2
+ <!--说明: index-->
3
+ <!--创建时间: 2024/11/4 下午4:52-->
4
+ <!--修改时间: 2024/11/4 下午4:52-->
5
+ <template>
6
+ <div
7
+ ref="echartsRef"
8
+ :style="{
9
+ width: width,
10
+ height: height,
11
+ }"
12
+ />
13
+ </template>
14
+
15
+ <script lang="ts" setup>
16
+ import { onMounted, type PropType, ref, watch } from 'vue'
17
+ import { type EChartsCoreOption, useEcharts } from '../../hooks/useEcharts.ts' // 引入hooks
18
+ const props = defineProps({
19
+ options: { type: Object as PropType<EChartsCoreOption>, required: true },
20
+ height: { type: String, default: '100%' },
21
+ width: { type: String, default: '100%' },
22
+ themeColors: { type: Array as PropType<string[]>, default: () => [] },
23
+ })
24
+
25
+ const echartsRef = ref()
26
+
27
+ const { setOptions, initCharts } = useEcharts(echartsRef, props.options)
28
+
29
+ watch(
30
+ () => props.options,
31
+ (nVal) => {
32
+ let targetOptions: EChartsCoreOption = {}
33
+ if (props.themeColors && props.themeColors.length > 0) {
34
+ targetOptions = { ...nVal }
35
+ targetOptions.color = props.themeColors
36
+ } else {
37
+ targetOptions = { ...nVal }
38
+ }
39
+ setOptions(targetOptions)
40
+ },
41
+ { deep: true },
42
+ )
43
+
44
+ onMounted(() => {
45
+ initCharts()
46
+ })
47
+ defineExpose({ setOptions, initCharts })
48
+ </script>
@@ -1,31 +1,31 @@
1
- import request from '../../../../utils/request'
2
-
3
- export interface Role {
4
- id: string
5
- name: string
6
- }
7
-
8
- /**
9
- * 获取角色信息
10
- * @param id
11
- */
12
- // export const getById = (id: string) => {
13
- // return http.get<Role>(`/role/info`, { id: id })
14
- // }
15
- /**
16
- * 获取角色信息
17
- * @param ids
18
- */
19
- export const getRoleListById = (ids: string[]) => {
20
- if (ids.length == 0) return []
21
- const roleIds = ids.join(',')
22
- return request.get<Role[]>('/api/system/roleInfo/getRolesByIds', { roleIds: roleIds })
23
- }
24
- /**
25
- * 查询角色列表
26
- */
27
- export const getList = () => {
28
- // const params = roleIds ? { roleIds: roleIds } : {}
29
- // return http.post<Role[]>('/role/list', params)
30
- return request.get<Role[]>('/api/system/roleInfo/getRolesByIds', { roleIds: '' })
31
- }
1
+ import request from '../../../../utils/request'
2
+
3
+ export interface Role {
4
+ id: string
5
+ name: string
6
+ }
7
+
8
+ /**
9
+ * 获取角色信息
10
+ * @param id
11
+ */
12
+ // export const getById = (id: string) => {
13
+ // return http.get<Role>(`/role/info`, { id: id })
14
+ // }
15
+ /**
16
+ * 获取角色信息
17
+ * @param ids
18
+ */
19
+ export const getRoleListById = (ids: string[]) => {
20
+ if (ids.length == 0) return []
21
+ const roleIds = ids.join(',')
22
+ return request.get<Role[]>('/api/system/roleInfo/getRolesByIds', { roleIds: roleIds })
23
+ }
24
+ /**
25
+ * 查询角色列表
26
+ */
27
+ export const getList = () => {
28
+ // const params = roleIds ? { roleIds: roleIds } : {}
29
+ // return http.post<Role[]>('/role/list', params)
30
+ return request.get<Role[]>('/api/system/roleInfo/getRolesByIds', { roleIds: '' })
31
+ }
@@ -1,17 +1,17 @@
1
- import request from '../../../../utils/request'
2
-
3
- export interface User {
4
- id: string
5
- deptId?: string
6
- userName: string
7
- email?: string
8
- phonenumber: string
9
- sex?: string
10
- }
11
-
12
- /**
13
- * 查询用户列表
14
- */
15
- export const getList = (ids: string[]) => {
16
- return request.post<User[]>('/api/system/sysUserInfo/getListByIds', ids)
17
- }
1
+ import request from '../../../../utils/request'
2
+
3
+ export interface User {
4
+ id: string
5
+ deptId?: string
6
+ userName: string
7
+ email?: string
8
+ phonenumber: string
9
+ sex?: string
10
+ }
11
+
12
+ /**
13
+ * 查询用户列表
14
+ */
15
+ export const getList = (ids: string[]) => {
16
+ return request.post<User[]>('/api/system/sysUserInfo/getListByIds', ids)
17
+ }
@@ -1,112 +1,112 @@
1
- <script setup lang="ts">
2
- import { useVModel } from '@vueuse/core'
3
- import { ref, watchEffect } from 'vue'
4
-
5
- const $props = defineProps<{
6
- modelValue: string
7
- type: string | undefined
8
- }>()
9
- const operatorOptions = ref([
10
- {
11
- value: 'eq',
12
- label: '等于',
13
- },
14
- {
15
- value: 'ne',
16
- label: '不等于',
17
- },
18
- {
19
- label: '包含',
20
- value: 'in',
21
- },
22
- {
23
- label: '不包含',
24
- value: 'ni',
25
- },
26
- ])
27
- const $emits = defineEmits<{
28
- (e: 'update:modelValue', modelValue: any): void
29
- }>()
30
- const data = useVModel($props, 'modelValue', $emits)
31
- watchEffect(() => {
32
- if ($props.type === 'ElInputNumber') {
33
- operatorOptions.value = [
34
- {
35
- value: 'eq',
36
- label: '等于',
37
- },
38
- {
39
- value: 'ne',
40
- label: '不等于',
41
- },
42
- {
43
- label: '大于',
44
- value: 'gt',
45
- },
46
- {
47
- label: '大于等于',
48
- value: 'ge',
49
- },
50
- {
51
- label: '小于',
52
- value: 'lt',
53
- },
54
- {
55
- label: '小于等于',
56
- value: 'le',
57
- },
58
- ]
59
- } else if ($props.type === 'ElInput') {
60
- operatorOptions.value = [
61
- {
62
- value: 'eq',
63
- label: '等于',
64
- },
65
- {
66
- value: 'ne',
67
- label: '不等于',
68
- },
69
- ]
70
- } else {
71
- operatorOptions.value = [
72
- // {
73
- // value: 'eq',
74
- // label: '等于'
75
- // },
76
- // {
77
- // value: 'ne',
78
- // label: '不等于'
79
- // },
80
- {
81
- label: '包含',
82
- value: 'in',
83
- },
84
- {
85
- label: '不包含',
86
- value: 'ni',
87
- },
88
- ]
89
- }
90
- if (!operatorOptions.value.some((x) => x.value === data.value)) {
91
- data.value = operatorOptions.value[0].value
92
- }
93
- })
94
- </script>
95
-
96
- <template>
97
- <el-select class="operator-container" v-model="data" filterable placeholder="筛选符">
98
- <el-option
99
- v-for="item in operatorOptions"
100
- :key="item.value"
101
- :label="item.label"
102
- :value="item.value"
103
- />
104
- </el-select>
105
- </template>
106
-
107
- <style scoped lang="scss">
108
- .operator-container {
109
- width: 100%;
110
- flex-shrink: 0;
111
- }
112
- </style>
1
+ <script setup lang="ts">
2
+ import { useVModel } from '@vueuse/core'
3
+ import { ref, watchEffect } from 'vue'
4
+
5
+ const $props = defineProps<{
6
+ modelValue: string
7
+ type: string | undefined
8
+ }>()
9
+ const operatorOptions = ref([
10
+ {
11
+ value: 'eq',
12
+ label: '等于',
13
+ },
14
+ {
15
+ value: 'ne',
16
+ label: '不等于',
17
+ },
18
+ {
19
+ label: '包含',
20
+ value: 'in',
21
+ },
22
+ {
23
+ label: '不包含',
24
+ value: 'ni',
25
+ },
26
+ ])
27
+ const $emits = defineEmits<{
28
+ (e: 'update:modelValue', modelValue: any): void
29
+ }>()
30
+ const data = useVModel($props, 'modelValue', $emits)
31
+ watchEffect(() => {
32
+ if ($props.type === 'ElInputNumber') {
33
+ operatorOptions.value = [
34
+ {
35
+ value: 'eq',
36
+ label: '等于',
37
+ },
38
+ {
39
+ value: 'ne',
40
+ label: '不等于',
41
+ },
42
+ {
43
+ label: '大于',
44
+ value: 'gt',
45
+ },
46
+ {
47
+ label: '大于等于',
48
+ value: 'ge',
49
+ },
50
+ {
51
+ label: '小于',
52
+ value: 'lt',
53
+ },
54
+ {
55
+ label: '小于等于',
56
+ value: 'le',
57
+ },
58
+ ]
59
+ } else if ($props.type === 'ElInput') {
60
+ operatorOptions.value = [
61
+ {
62
+ value: 'eq',
63
+ label: '等于',
64
+ },
65
+ {
66
+ value: 'ne',
67
+ label: '不等于',
68
+ },
69
+ ]
70
+ } else {
71
+ operatorOptions.value = [
72
+ // {
73
+ // value: 'eq',
74
+ // label: '等于'
75
+ // },
76
+ // {
77
+ // value: 'ne',
78
+ // label: '不等于'
79
+ // },
80
+ {
81
+ label: '包含',
82
+ value: 'in',
83
+ },
84
+ {
85
+ label: '不包含',
86
+ value: 'ni',
87
+ },
88
+ ]
89
+ }
90
+ if (!operatorOptions.value.some((x) => x.value === data.value)) {
91
+ data.value = operatorOptions.value[0].value
92
+ }
93
+ })
94
+ </script>
95
+
96
+ <template>
97
+ <el-select class="operator-container" v-model="data" filterable placeholder="筛选符">
98
+ <el-option
99
+ v-for="item in operatorOptions"
100
+ :key="item.value"
101
+ :label="item.label"
102
+ :value="item.value"
103
+ />
104
+ </el-select>
105
+ </template>
106
+
107
+ <style scoped lang="scss">
108
+ .operator-container {
109
+ width: 100%;
110
+ flex-shrink: 0;
111
+ }
112
+ </style>