adtec-core-package 0.4.0 → 0.4.2

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 (207) hide show
  1. package/.editorconfig +6 -6
  2. package/.prettierrc.json +7 -7
  3. package/.vscode/extensions.json +8 -8
  4. package/README.en.md +36 -36
  5. package/README.md +39 -39
  6. package/env.d.ts +1 -1
  7. package/eslint.config.js +56 -56
  8. package/index.html +13 -13
  9. package/package.json +59 -59
  10. package/src/App.vue +9 -9
  11. package/src/api/BasicApi.ts +17 -17
  12. package/src/api/DocumentApi.ts +27 -27
  13. package/src/api/SysDictCacheApi.ts +26 -26
  14. package/src/api/SysUserApi.ts +35 -35
  15. package/src/api/framework.ts +12 -12
  16. package/src/assets/base.css +86 -86
  17. package/src/assets/logo.svg +1 -1
  18. package/src/assets/main.css +35 -35
  19. package/src/assets/style/ant.scss +19 -19
  20. package/src/assets/style/index.less +180 -180
  21. package/src/assets/style/transition.scss +49 -49
  22. package/src/components/ElFlex/ElFlex.vue +297 -297
  23. package/src/components/OperationAuth/operationAuth.vue +26 -26
  24. package/src/components/Search/ElIconSearch.vue +260 -239
  25. package/src/components/Search/ElSearch.vue +154 -154
  26. package/src/components/Table/ElTableColumnEdit.vue +218 -218
  27. package/src/components/Title/ElTitle.vue +49 -49
  28. package/src/components/autoToolTip/ElAutoToolTip.vue +61 -61
  29. package/src/components/baseEcharts/index.vue +48 -48
  30. package/src/components/business/userSelect.vue +412 -412
  31. package/src/components/icon/ElIconBtn.vue +182 -182
  32. package/src/components/icon/ElIcons.vue +38 -38
  33. package/src/components/upload/ElUploads.vue +286 -279
  34. package/src/components/upload/FileView.vue +158 -158
  35. package/src/components/upload/FileViewComponents.vue +57 -57
  36. package/src/config/ElementPlusConfig.ts +95 -95
  37. package/src/css/elementUI/affix.scss +7 -7
  38. package/src/css/elementUI/alert.scss +115 -115
  39. package/src/css/elementUI/anchor-link.scss +41 -41
  40. package/src/css/elementUI/anchor.scss +88 -88
  41. package/src/css/elementUI/aside.scss +8 -8
  42. package/src/css/elementUI/autocomplete.scss +89 -89
  43. package/src/css/elementUI/avatar.scss +55 -55
  44. package/src/css/elementUI/backtop.scss +29 -29
  45. package/src/css/elementUI/badge.scss +58 -58
  46. package/src/css/elementUI/base.scss +3 -3
  47. package/src/css/elementUI/breadcrumb.scss +62 -62
  48. package/src/css/elementUI/button-group.scss +80 -80
  49. package/src/css/elementUI/button.scss +304 -304
  50. package/src/css/elementUI/calendar.scss +80 -80
  51. package/src/css/elementUI/card.scss +45 -45
  52. package/src/css/elementUI/carousel-item.scss +58 -58
  53. package/src/css/elementUI/carousel.scss +188 -188
  54. package/src/css/elementUI/cascader-panel.scss +138 -138
  55. package/src/css/elementUI/cascader.scss +230 -230
  56. package/src/css/elementUI/check-tag.scss +60 -60
  57. package/src/css/elementUI/checkbox-button.scss +140 -140
  58. package/src/css/elementUI/checkbox-group.scss +7 -7
  59. package/src/css/elementUI/checkbox.scss +298 -298
  60. package/src/css/elementUI/col.scss +48 -48
  61. package/src/css/elementUI/collapse.scss +70 -70
  62. package/src/css/elementUI/color/index.scss +20 -20
  63. package/src/css/elementUI/color-picker.scss +392 -392
  64. package/src/css/elementUI/common/popup.scss +47 -47
  65. package/src/css/elementUI/common/transition.scss +122 -122
  66. package/src/css/elementUI/common/var.scss +1549 -1549
  67. package/src/css/elementUI/container.scss +14 -14
  68. package/src/css/elementUI/dark/css-vars.scss +39 -39
  69. package/src/css/elementUI/dark/var.scss +222 -222
  70. package/src/css/elementUI/date-picker/date-picker.scss +110 -110
  71. package/src/css/elementUI/date-picker/date-range-picker.scss +113 -113
  72. package/src/css/elementUI/date-picker/date-table.scss +158 -158
  73. package/src/css/elementUI/date-picker/month-table.scss +112 -112
  74. package/src/css/elementUI/date-picker/picker-panel.scss +131 -131
  75. package/src/css/elementUI/date-picker/picker.scss +219 -219
  76. package/src/css/elementUI/date-picker/time-picker.scss +90 -90
  77. package/src/css/elementUI/date-picker/time-range-picker.scss +33 -33
  78. package/src/css/elementUI/date-picker/time-spinner.scss +111 -111
  79. package/src/css/elementUI/date-picker/year-table.scss +108 -108
  80. package/src/css/elementUI/date-picker.scss +9 -9
  81. package/src/css/elementUI/descriptions-item.scss +73 -73
  82. package/src/css/elementUI/descriptions.scss +152 -152
  83. package/src/css/elementUI/dialog.scss +199 -199
  84. package/src/css/elementUI/display.scss +12 -12
  85. package/src/css/elementUI/divider.scss +48 -48
  86. package/src/css/elementUI/drawer.scss +164 -164
  87. package/src/css/elementUI/dropdown.scss +208 -208
  88. package/src/css/elementUI/empty.scss +49 -49
  89. package/src/css/elementUI/footer.scss +12 -12
  90. package/src/css/elementUI/form.scss +243 -243
  91. package/src/css/elementUI/header.scss +12 -12
  92. package/src/css/elementUI/icon.scss +45 -45
  93. package/src/css/elementUI/image-viewer.scss +139 -139
  94. package/src/css/elementUI/image.scss +49 -49
  95. package/src/css/elementUI/index.scss +110 -110
  96. package/src/css/elementUI/input-number.scss +178 -178
  97. package/src/css/elementUI/input.scss +478 -478
  98. package/src/css/elementUI/link.scss +90 -90
  99. package/src/css/elementUI/loading.scss +104 -104
  100. package/src/css/elementUI/main.scss +14 -14
  101. package/src/css/elementUI/mention.scss +88 -88
  102. package/src/css/elementUI/menu.scss +339 -339
  103. package/src/css/elementUI/message-box.scss +213 -213
  104. package/src/css/elementUI/message.scss +98 -98
  105. package/src/css/elementUI/mixins/_button.scss +165 -165
  106. package/src/css/elementUI/mixins/_col.scss +33 -33
  107. package/src/css/elementUI/mixins/_var.scss +67 -67
  108. package/src/css/elementUI/mixins/config.scss +5 -5
  109. package/src/css/elementUI/mixins/function.scss +88 -88
  110. package/src/css/elementUI/mixins/mixins.scss +237 -237
  111. package/src/css/elementUI/mixins/utils.scss +39 -39
  112. package/src/css/elementUI/notification.scss +104 -104
  113. package/src/css/elementUI/option-group.scss +33 -33
  114. package/src/css/elementUI/option.scss +71 -71
  115. package/src/css/elementUI/overlay.scss +17 -17
  116. package/src/css/elementUI/page-header.scss +60 -60
  117. package/src/css/elementUI/pagination.scss +238 -238
  118. package/src/css/elementUI/popconfirm.scss +16 -16
  119. package/src/css/elementUI/popover.scss +61 -61
  120. package/src/css/elementUI/popper.scss +106 -106
  121. package/src/css/elementUI/progress.scss +179 -179
  122. package/src/css/elementUI/radio-button.scss +169 -169
  123. package/src/css/elementUI/radio-group.scss +9 -9
  124. package/src/css/elementUI/radio.scss +215 -215
  125. package/src/css/elementUI/rate.scss +108 -108
  126. package/src/css/elementUI/reset.scss +98 -98
  127. package/src/css/elementUI/result.scss +57 -57
  128. package/src/css/elementUI/row.scss +35 -35
  129. package/src/css/elementUI/scrollbar.scss +97 -97
  130. package/src/css/elementUI/segmented.scss +183 -183
  131. package/src/css/elementUI/select-dropdown-v2.scss +1 -1
  132. package/src/css/elementUI/select-dropdown.scss +57 -57
  133. package/src/css/elementUI/select-v2.scss +4 -4
  134. package/src/css/elementUI/select.scss +253 -253
  135. package/src/css/elementUI/skeleton-item.scss +83 -83
  136. package/src/css/elementUI/skeleton.scss +44 -44
  137. package/src/css/elementUI/slider.scss +212 -212
  138. package/src/css/elementUI/space.scss +20 -20
  139. package/src/css/elementUI/spinner.scss +43 -43
  140. package/src/css/elementUI/statistic.scss +35 -35
  141. package/src/css/elementUI/step.scss +316 -316
  142. package/src/css/elementUI/steps.scss +21 -21
  143. package/src/css/elementUI/switch.scss +300 -300
  144. package/src/css/elementUI/table-column.scss +98 -98
  145. package/src/css/elementUI/table-v2.scss +236 -236
  146. package/src/css/elementUI/table.scss +694 -694
  147. package/src/css/elementUI/tabs.scss +659 -659
  148. package/src/css/elementUI/tag.scss +181 -181
  149. package/src/css/elementUI/text.scss +51 -51
  150. package/src/css/elementUI/time-picker.scss +5 -5
  151. package/src/css/elementUI/time-select.scss +37 -37
  152. package/src/css/elementUI/timeline-item.scss +84 -84
  153. package/src/css/elementUI/timeline.scss +46 -46
  154. package/src/css/elementUI/tooltip-v2.scss +95 -95
  155. package/src/css/elementUI/tour.scss +187 -187
  156. package/src/css/elementUI/transfer.scss +203 -203
  157. package/src/css/elementUI/tree-select.scss +41 -41
  158. package/src/css/elementUI/tree.scss +134 -134
  159. package/src/css/elementUI/upload.scss +654 -654
  160. package/src/css/elementUI/var.scss +87 -87
  161. package/src/css/elementUI/virtual-list.scss +40 -40
  162. package/src/directives/vKeydown.ts +93 -93
  163. package/src/hooks/useDictHooks.ts +79 -76
  164. package/src/hooks/useEcharts.ts +58 -58
  165. package/src/hooks/useFileView.ts +34 -34
  166. package/src/hooks/useMessageHooks.ts +132 -132
  167. package/src/hooks/useResetRefHooks.ts +18 -18
  168. package/src/interface/BaseEntity.ts +28 -28
  169. package/src/interface/IMdmDept.ts +82 -82
  170. package/src/interface/IOrgDeptInfo.ts +12 -12
  171. package/src/interface/ISysDictDataCacheVo.ts +46 -46
  172. package/src/interface/ISysDictType.ts +37 -37
  173. package/src/interface/ISysMenuDataVo.ts +22 -22
  174. package/src/interface/ISysMenuInfoVo.ts +83 -83
  175. package/src/interface/ISysMenuOperationVo.ts +21 -21
  176. package/src/interface/ISysUploadFiles.ts +16 -16
  177. package/src/interface/ISysUserInfo.ts +70 -70
  178. package/src/interface/IUserPermissionVo.ts +34 -34
  179. package/src/interface/Message.ts +69 -69
  180. package/src/interface/PageData.ts +17 -17
  181. package/src/interface/ResponseData.ts +16 -16
  182. package/src/interface/dictMapType.ts +11 -11
  183. package/src/interface/enum/FlexEnum.ts +85 -85
  184. package/src/interface/enum/MessageEnum.ts +41 -41
  185. package/src/main.ts +14 -14
  186. package/src/mixin/globalMixin.ts +37 -37
  187. package/src/packages/index.ts +18 -18
  188. package/src/packages/text.vue +13 -13
  189. package/src/plugins/echartsConfig.ts +73 -73
  190. package/src/plugins/plugins.ts +12 -12
  191. package/src/router/index.ts +23 -23
  192. package/src/stores/dictStore.ts +27 -20
  193. package/src/stores/messageStore.ts +49 -49
  194. package/src/stores/permissionStore.ts +108 -108
  195. package/src/stores/storeConfig.ts +23 -23
  196. package/src/stores/userInfoStore.ts +31 -31
  197. package/src/utils/AxiosConfig.ts +216 -216
  198. package/src/utils/encrypt.ts +10 -10
  199. package/src/utils/request.ts +55 -55
  200. package/tsconfig.app.json +12 -12
  201. package/tsconfig.json +11 -11
  202. package/tsconfig.node.json +18 -18
  203. package/vite.config.ts +38 -38
  204. package/adtec-core-package/adtec-core-package.css +0 -1
  205. package/adtec-core-package/adtec-core-package.js +0 -41364
  206. package/adtec-core-package/adtec-core-package.umd.cjs +0 -79
  207. package/adtec-core-package/favicon.ico +0 -0
@@ -1,58 +1,58 @@
1
- /**
2
- * 创建人 胡啸东
3
- * 说明: useEcharts
4
- * 创建时间: 2024/11/4 下午4:51
5
- * 修改时间: 2024/11/4 下午4:51
6
- */
7
- import type { Ref } from 'vue'
8
- import { onBeforeUnmount, onDeactivated, onMounted, shallowRef, unref } from 'vue'
9
- import echarts from '../plugins/echartsConfig.ts'
10
-
11
- export type EChartsCoreOption = echarts.EChartsCoreOption
12
-
13
- const useEcharts = (elRef: Ref<HTMLDivElement>, options: EChartsCoreOption) => {
14
- const charts = shallowRef<echarts.ECharts>()
15
-
16
- const setOptions = (options: EChartsCoreOption) => {
17
- charts.value && charts.value.setOption(options)
18
- }
19
-
20
- // 初始化
21
- const initCharts = (themeColor?: Array<string>) => {
22
- const el = unref(elRef)
23
- if (!el || !unref(el)) {
24
- return
25
- }
26
- charts.value = echarts.init(el)
27
- if (themeColor) {
28
- options.color = themeColor
29
- }
30
- setOptions(options)
31
- }
32
-
33
- // 重新窗口变化时,重新计算
34
- const resize = () => {
35
- charts.value && charts.value.resize()
36
- }
37
-
38
- onMounted(() => {
39
- window.addEventListener('resize', resize)
40
- })
41
-
42
- // 页面keepAlive时,不监听页面
43
- onDeactivated(() => {
44
- window.removeEventListener('resize', resize)
45
- })
46
-
47
- onBeforeUnmount(() => {
48
- window.removeEventListener('resize', resize)
49
- })
50
-
51
- return {
52
- initCharts,
53
- setOptions,
54
- resize,
55
- }
56
- }
57
-
58
- export { useEcharts }
1
+ /**
2
+ * 创建人 胡啸东
3
+ * 说明: useEcharts
4
+ * 创建时间: 2024/11/4 下午4:51
5
+ * 修改时间: 2024/11/4 下午4:51
6
+ */
7
+ import type { Ref } from 'vue'
8
+ import { onBeforeUnmount, onDeactivated, onMounted, shallowRef, unref } from 'vue'
9
+ import echarts from '../plugins/echartsConfig.ts'
10
+
11
+ export type EChartsCoreOption = echarts.EChartsCoreOption
12
+
13
+ const useEcharts = (elRef: Ref<HTMLDivElement>, options: EChartsCoreOption) => {
14
+ const charts = shallowRef<echarts.ECharts>()
15
+
16
+ const setOptions = (options: EChartsCoreOption) => {
17
+ charts.value && charts.value.setOption(options)
18
+ }
19
+
20
+ // 初始化
21
+ const initCharts = (themeColor?: Array<string>) => {
22
+ const el = unref(elRef)
23
+ if (!el || !unref(el)) {
24
+ return
25
+ }
26
+ charts.value = echarts.init(el)
27
+ if (themeColor) {
28
+ options.color = themeColor
29
+ }
30
+ setOptions(options)
31
+ }
32
+
33
+ // 重新窗口变化时,重新计算
34
+ const resize = () => {
35
+ charts.value && charts.value.resize()
36
+ }
37
+
38
+ onMounted(() => {
39
+ window.addEventListener('resize', resize)
40
+ })
41
+
42
+ // 页面keepAlive时,不监听页面
43
+ onDeactivated(() => {
44
+ window.removeEventListener('resize', resize)
45
+ })
46
+
47
+ onBeforeUnmount(() => {
48
+ window.removeEventListener('resize', resize)
49
+ })
50
+
51
+ return {
52
+ initCharts,
53
+ setOptions,
54
+ resize,
55
+ }
56
+ }
57
+
58
+ export { useEcharts }
@@ -1,34 +1,34 @@
1
- import { ref, onMounted, onUnmounted, createApp } from 'vue'
2
- import FileView from '../components/upload/FileViewComponents.vue'
3
-
4
- const useFileView = () => {
5
- const ref_fileView = ref(null)
6
-
7
- const fileView = (id: string) => {
8
- if (ref_fileView.value) {
9
- //@ts-ignore
10
- ref_fileView.value?.viewFile(id)
11
- }
12
- }
13
-
14
- onMounted(() => {
15
- const container = document.createElement('div')
16
- document.body.appendChild(container)
17
- //@ts-ignore
18
- ref_fileView.value = createApp(FileView).mount(container)
19
- onUnmounted(() => {
20
- try {
21
- //@ts-ignore
22
- ref_fileView?.value.$destroy()
23
- } catch {
24
- /* empty */
25
- }
26
- document.body.removeChild(container)
27
- })
28
- })
29
- return {
30
- fileView,
31
- }
32
- }
33
-
34
- export default useFileView
1
+ import { ref, onMounted, onUnmounted, createApp } from 'vue'
2
+ import FileView from '../components/upload/FileViewComponents.vue'
3
+
4
+ const useFileView = () => {
5
+ const ref_fileView = ref(null)
6
+
7
+ const fileView = (id: string) => {
8
+ if (ref_fileView.value) {
9
+ //@ts-ignore
10
+ ref_fileView.value?.viewFile(id)
11
+ }
12
+ }
13
+
14
+ onMounted(() => {
15
+ const container = document.createElement('div')
16
+ document.body.appendChild(container)
17
+ //@ts-ignore
18
+ ref_fileView.value = createApp(FileView).mount(container)
19
+ onUnmounted(() => {
20
+ try {
21
+ //@ts-ignore
22
+ ref_fileView?.value.$destroy()
23
+ } catch {
24
+ /* empty */
25
+ }
26
+ document.body.removeChild(container)
27
+ })
28
+ })
29
+ return {
30
+ fileView,
31
+ }
32
+ }
33
+
34
+ export default useFileView
@@ -1,132 +1,132 @@
1
- /**
2
- * Create by丁盼
3
- * 说明: useMessageHooks
4
- * 创建时间: 2024/9/3 下午5:27
5
- * 修改时间: 2024/9/3 下午5:27
6
- */
7
- //@ts-ignore
8
- import io from 'socket.io-client'
9
- import type { ISysMessageVo } from '../interface/Message'
10
- import { messageStore } from '../stores/messageStore'
11
- import { ElMessage, ElNotification } from 'element-plus'
12
- import { useEventBus } from '@vueuse/core'
13
- export default function useMessageHooks() {
14
- // @ts-ignore
15
- const connect = () => {
16
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
17
- // @ts-ignore
18
- window.socketIo.connect()
19
- }
20
- const bus = useEventBus<ISysMessageVo>('messageClick')
21
- const message = messageStore()
22
- const createSocket = () => {
23
- const socket = io(import.meta.env.VITE_SOCKETIO_URL, {
24
- query: {
25
- token: sessionStorage.getItem('Authorization'),
26
- refreshToken: sessionStorage.getItem('refreshToken'),
27
- sessionId: sessionStorage.getItem('sessionId'),
28
- },
29
- path: '/socket.io/',
30
- transports: ['websocket', 'polling'],
31
- autoConnect: false,
32
- })
33
-
34
- const server_response = (res: any) => {}
35
- socket.off('server_response', server_response)
36
- socket.on('server_response', server_response)
37
- const connect = () => {
38
- message.clearSysMessage()
39
- //连接成功 获取离线数据UserExpireMessageOnEvent
40
- socket.emit('UserExpireMessageOnEvent')
41
- }
42
- socket.off('connect', connect)
43
- socket.on('connect', connect)
44
- socket.on('user_Offline', () => {
45
- console.log('user offline')
46
- ElMessage.warning('您已被强制下线,即将跳转至登录页,请重新登录')
47
- setTimeout(() => {
48
- window.location.href = '/'
49
- }, 2000)
50
- })
51
-
52
- const message_accept = (res: ISysMessageVo) => {
53
- // if (res.params) {
54
- // res.params = JSON.parse(res.params + '')
55
- // }
56
- let messageType = '通知'
57
- if (res.messageType === 1) {
58
- messageType = '消息'
59
- } else if (res.messageType === 2) {
60
- messageType = '待办'
61
- }
62
-
63
- const notif = ElNotification({
64
- duration: 2000,
65
- dangerouslyUseHTMLString: true,
66
- onClick: () => {
67
- bus.emit(res)
68
- notif.close()
69
- },
70
- title: messageType,
71
- message: res.title,
72
- })
73
- message.setSysMessage(res)
74
- }
75
- socket.off('message_accept', message_accept)
76
- socket.on('message_accept', message_accept)
77
- const expire_Message = (res: ISysMessageVo[]) => {
78
- res.forEach((item) => {
79
- message.setSysMessage(item)
80
- })
81
- }
82
- socket.off('expire_Message', expire_Message)
83
- socket.on('expire_Message', expire_Message)
84
- //@ts-ignore
85
- window.socketIo = socket
86
- }
87
- /**
88
- * 接收方法注册
89
- */
90
- const registerResponseEvent = (eventName: string, event: Function) => {
91
- //@ts-ignore
92
- window.socketIo.on(eventName, event)
93
- }
94
- const close = () => {
95
- //@ts-ignore
96
- window.socketIo.close()
97
- message.clearSysMessage()
98
- }
99
- /**
100
- * 消息发送
101
- * @param msg
102
- */
103
- const messageSend = (msg: ISysMessageVo) => {
104
- //@ts-ignore
105
- window.socketIo.emit('messageSend', JSON.stringify(msg))
106
- }
107
- /**
108
- * 设置消息已读
109
- * @constructor
110
- */
111
- const setMessageRead = (msg: ISysMessageVo) => {
112
- //@ts-ignore
113
- window.socketIo.emit('setMessageRead', JSON.stringify(msg))
114
- message.setSysMessageStatus(msg)
115
- }
116
- const setMessageReadAll = () => {
117
- message.getMessageList.forEach((item) => {
118
- //@ts-ignore
119
- window.socketIo.emit('setMessageRead', JSON.stringify(item))
120
- })
121
- message.clearSysMessage()
122
- }
123
- return {
124
- close,
125
- connect,
126
- createSocket,
127
- messageSend,
128
- registerResponseEvent,
129
- setMessageRead,
130
- setMessageReadAll,
131
- }
132
- }
1
+ /**
2
+ * Create by丁盼
3
+ * 说明: useMessageHooks
4
+ * 创建时间: 2024/9/3 下午5:27
5
+ * 修改时间: 2024/9/3 下午5:27
6
+ */
7
+ //@ts-ignore
8
+ import io from 'socket.io-client'
9
+ import type { ISysMessageVo } from '../interface/Message'
10
+ import { messageStore } from '../stores/messageStore'
11
+ import { ElMessage, ElNotification } from 'element-plus'
12
+ import { useEventBus } from '@vueuse/core'
13
+ export default function useMessageHooks() {
14
+ // @ts-ignore
15
+ const connect = () => {
16
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
17
+ // @ts-ignore
18
+ window.socketIo.connect()
19
+ }
20
+ const bus = useEventBus<ISysMessageVo>('messageClick')
21
+ const message = messageStore()
22
+ const createSocket = () => {
23
+ const socket = io(import.meta.env.VITE_SOCKETIO_URL, {
24
+ query: {
25
+ token: sessionStorage.getItem('Authorization'),
26
+ refreshToken: sessionStorage.getItem('refreshToken'),
27
+ sessionId: sessionStorage.getItem('sessionId'),
28
+ },
29
+ path: '/socket.io/',
30
+ transports: ['websocket', 'polling'],
31
+ autoConnect: false,
32
+ })
33
+
34
+ const server_response = (res: any) => {}
35
+ socket.off('server_response', server_response)
36
+ socket.on('server_response', server_response)
37
+ const connect = () => {
38
+ message.clearSysMessage()
39
+ //连接成功 获取离线数据UserExpireMessageOnEvent
40
+ socket.emit('UserExpireMessageOnEvent')
41
+ }
42
+ socket.off('connect', connect)
43
+ socket.on('connect', connect)
44
+ socket.on('user_Offline', () => {
45
+ console.log('user offline')
46
+ ElMessage.warning('您已被强制下线,即将跳转至登录页,请重新登录')
47
+ setTimeout(() => {
48
+ window.location.href = '/'
49
+ }, 2000)
50
+ })
51
+
52
+ const message_accept = (res: ISysMessageVo) => {
53
+ // if (res.params) {
54
+ // res.params = JSON.parse(res.params + '')
55
+ // }
56
+ let messageType = '通知'
57
+ if (res.messageType === 1) {
58
+ messageType = '消息'
59
+ } else if (res.messageType === 2) {
60
+ messageType = '待办'
61
+ }
62
+
63
+ const notif = ElNotification({
64
+ duration: 2000,
65
+ dangerouslyUseHTMLString: true,
66
+ onClick: () => {
67
+ bus.emit(res)
68
+ notif.close()
69
+ },
70
+ title: messageType,
71
+ message: res.title,
72
+ })
73
+ message.setSysMessage(res)
74
+ }
75
+ socket.off('message_accept', message_accept)
76
+ socket.on('message_accept', message_accept)
77
+ const expire_Message = (res: ISysMessageVo[]) => {
78
+ res.forEach((item) => {
79
+ message.setSysMessage(item)
80
+ })
81
+ }
82
+ socket.off('expire_Message', expire_Message)
83
+ socket.on('expire_Message', expire_Message)
84
+ //@ts-ignore
85
+ window.socketIo = socket
86
+ }
87
+ /**
88
+ * 接收方法注册
89
+ */
90
+ const registerResponseEvent = (eventName: string, event: Function) => {
91
+ //@ts-ignore
92
+ window.socketIo.on(eventName, event)
93
+ }
94
+ const close = () => {
95
+ //@ts-ignore
96
+ window.socketIo.close()
97
+ message.clearSysMessage()
98
+ }
99
+ /**
100
+ * 消息发送
101
+ * @param msg
102
+ */
103
+ const messageSend = (msg: ISysMessageVo) => {
104
+ //@ts-ignore
105
+ window.socketIo.emit('messageSend', JSON.stringify(msg))
106
+ }
107
+ /**
108
+ * 设置消息已读
109
+ * @constructor
110
+ */
111
+ const setMessageRead = (msg: ISysMessageVo) => {
112
+ //@ts-ignore
113
+ window.socketIo.emit('setMessageRead', JSON.stringify(msg))
114
+ message.setSysMessageStatus(msg)
115
+ }
116
+ const setMessageReadAll = () => {
117
+ message.getMessageList.forEach((item) => {
118
+ //@ts-ignore
119
+ window.socketIo.emit('setMessageRead', JSON.stringify(item))
120
+ })
121
+ message.clearSysMessage()
122
+ }
123
+ return {
124
+ close,
125
+ connect,
126
+ createSocket,
127
+ messageSend,
128
+ registerResponseEvent,
129
+ setMessageRead,
130
+ setMessageReadAll,
131
+ }
132
+ }
@@ -1,18 +1,18 @@
1
- import { type Ref, ref } from 'vue'
2
-
3
- /**
4
- * 创建人 胡啸东
5
- * 说明: 用于重置对象
6
- * 创建时间: 2024/12/18 下午3:57
7
- * 修改时间: 2024/12/18 下午3:57
8
- */
9
-
10
- export function useResetRefHooks<T>(value: T): [Ref<T>, () => void] {
11
- const initValue = JSON.parse(JSON.stringify(value))
12
- const state = ref(value)
13
- const reset = () => {
14
- state.value = JSON.parse(JSON.stringify(initValue))
15
- }
16
- //@ts-ignore
17
- return [state, reset]
18
- }
1
+ import { type Ref, ref } from 'vue'
2
+
3
+ /**
4
+ * 创建人 胡啸东
5
+ * 说明: 用于重置对象
6
+ * 创建时间: 2024/12/18 下午3:57
7
+ * 修改时间: 2024/12/18 下午3:57
8
+ */
9
+
10
+ export function useResetRefHooks<T>(value: T): [Ref<T>, () => void] {
11
+ const initValue = JSON.parse(JSON.stringify(value))
12
+ const state = ref(value)
13
+ const reset = () => {
14
+ state.value = JSON.parse(JSON.stringify(initValue))
15
+ }
16
+ //@ts-ignore
17
+ return [state, reset]
18
+ }
@@ -1,28 +1,28 @@
1
- /**
2
- * 创建人 胡啸东
3
- * 说明: BaseEntity
4
- * 创建时间: 2024/12/16 上午10:33
5
- * 修改时间: 2024/12/16 上午10:33
6
- */
7
- export interface BaseEntity {
8
- // 创建者
9
- createBy?: string
10
-
11
- // 创建时间,使用Date类型来模拟对应的时间值,注意在TypeScript中处理日期相关操作可能需要借助额外的库,比如moment.js等
12
- createTime?: string
13
-
14
- // 更新者
15
- updateBy?: string
16
-
17
- // 更新时间
18
- updateTime?: string
19
-
20
- // 删除标志(0代表存在 2代表删除),使用number类型来模拟整数
21
- isDelete?: '1' | '0'
22
-
23
- // 更新者名字,该字段在数据库表结构对应的映射中不存在(exist = false),仅在代码逻辑中有使用
24
- updateByName?: string
25
-
26
- // 创建者名字,同样该字段在数据库表结构对应的映射中不存在(exist = false),仅在代码逻辑中有使用
27
- createByName?: string
28
- }
1
+ /**
2
+ * 创建人 胡啸东
3
+ * 说明: BaseEntity
4
+ * 创建时间: 2024/12/16 上午10:33
5
+ * 修改时间: 2024/12/16 上午10:33
6
+ */
7
+ export interface BaseEntity {
8
+ // 创建者
9
+ createBy?: string
10
+
11
+ // 创建时间,使用Date类型来模拟对应的时间值,注意在TypeScript中处理日期相关操作可能需要借助额外的库,比如moment.js等
12
+ createTime?: string
13
+
14
+ // 更新者
15
+ updateBy?: string
16
+
17
+ // 更新时间
18
+ updateTime?: string
19
+
20
+ // 删除标志(0代表存在 2代表删除),使用number类型来模拟整数
21
+ isDelete?: '1' | '0'
22
+
23
+ // 更新者名字,该字段在数据库表结构对应的映射中不存在(exist = false),仅在代码逻辑中有使用
24
+ updateByName?: string
25
+
26
+ // 创建者名字,同样该字段在数据库表结构对应的映射中不存在(exist = false),仅在代码逻辑中有使用
27
+ createByName?: string
28
+ }