eoss-ui 0.6.99 → 0.7.10

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 (243) hide show
  1. package/lib/calogin.js +233 -233
  2. package/lib/eoss-ui.common.js +769 -757
  3. package/lib/flow-list.js +81 -81
  4. package/lib/flow.js +304 -292
  5. package/lib/index.js +1 -1
  6. package/lib/main.js +132 -132
  7. package/lib/qr-code.js +13 -13
  8. package/package.json +160 -160
  9. package/packages/button/index.js +5 -5
  10. package/packages/button/src/main.vue +418 -418
  11. package/packages/button-group/index.js +5 -5
  12. package/packages/button-group/src/main.vue +298 -298
  13. package/packages/calendar/index.js +5 -5
  14. package/packages/calogin/index.js +5 -5
  15. package/packages/calogin/src/main.vue +412 -412
  16. package/packages/calogin/src/plugin.js +915 -915
  17. package/packages/card/index.js +5 -5
  18. package/packages/card/src/main.vue +156 -156
  19. package/packages/cascader/index.js +5 -5
  20. package/packages/cascader/src/main.vue +168 -168
  21. package/packages/checkbox-group/index.js +5 -5
  22. package/packages/checkbox-group/src/main.vue +333 -333
  23. package/packages/clients/index.js +5 -5
  24. package/packages/clients/src/main.vue +151 -151
  25. package/packages/data-table/index.js +5 -5
  26. package/packages/data-table/src/children.vue +39 -39
  27. package/packages/data-table/src/column.vue +988 -988
  28. package/packages/data-table/src/main.vue +1831 -1831
  29. package/packages/data-table/src/sizer.vue +195 -195
  30. package/packages/data-table-form/index.js +5 -5
  31. package/packages/data-table-form/src/checkbox.vue +101 -101
  32. package/packages/data-table-form/src/colgroup.vue +17 -17
  33. package/packages/data-table-form/src/main.vue +181 -181
  34. package/packages/data-table-form/src/radio.vue +65 -65
  35. package/packages/data-table-form/src/table.vue +233 -233
  36. package/packages/data-table-form/src/tbody.vue +336 -336
  37. package/packages/data-table-form/src/thead.vue +68 -68
  38. package/packages/date-picker/index.js +5 -5
  39. package/packages/date-picker/src/main.vue +236 -236
  40. package/packages/dialog/index.js +5 -5
  41. package/packages/enable-drag/index.js +5 -5
  42. package/packages/enterprise/index.js +5 -5
  43. package/packages/enterprise/src/main.vue +66 -66
  44. package/packages/error-page/index.js +5 -5
  45. package/packages/error-page/src/main.vue +44 -44
  46. package/packages/flow/index.js +5 -5
  47. package/packages/flow/src/component/Circulate.vue +405 -403
  48. package/packages/flow/src/component/CommonOpinions.vue +364 -364
  49. package/packages/flow/src/component/CustomPreset.vue +322 -322
  50. package/packages/flow/src/component/FileList.vue +99 -99
  51. package/packages/flow/src/component/Preset.vue +255 -255
  52. package/packages/flow/src/component/SendMsg.vue +242 -242
  53. package/packages/flow/src/component/TimeLimit.vue +190 -190
  54. package/packages/flow/src/component/taskUnionExamine.vue +641 -641
  55. package/packages/flow/src/form.vue +121 -121
  56. package/packages/flow/src/freeStartFlow.vue +2844 -2844
  57. package/packages/flow/src/main.vue +3742 -3726
  58. package/packages/flow/src/processForm.vue +1287 -1287
  59. package/packages/flow/src/processReject.vue +308 -308
  60. package/packages/flow/src/reset.vue +941 -941
  61. package/packages/flow/src/startTaskRead.vue +690 -690
  62. package/packages/flow/src/supervise.vue +159 -159
  63. package/packages/flow/src/table.vue +58 -58
  64. package/packages/flow-group/index.js +5 -5
  65. package/packages/flow-group/src/main.vue +692 -692
  66. package/packages/flow-list/index.js +5 -5
  67. package/packages/flow-list/src/main.vue +1770 -1770
  68. package/packages/form/index.js +5 -5
  69. package/packages/form/src/main.vue +3846 -3846
  70. package/packages/form/src/table.vue +1508 -1508
  71. package/packages/handle-user/index.js +5 -5
  72. package/packages/handle-user/src/main.vue +137 -137
  73. package/packages/handler/index.js +5 -5
  74. package/packages/handler/src/main.vue +493 -493
  75. package/packages/icon/index.js +5 -5
  76. package/packages/icon/src/main.vue +101 -101
  77. package/packages/icons/index.js +5 -5
  78. package/packages/icons/src/main.vue +81 -81
  79. package/packages/input/index.js +5 -5
  80. package/packages/input/src/main.vue +356 -356
  81. package/packages/input-number/index.js +5 -5
  82. package/packages/input-number/src/main.vue +106 -106
  83. package/packages/label/index.js +5 -5
  84. package/packages/label/src/main.vue +457 -457
  85. package/packages/layout/index.js +5 -5
  86. package/packages/layout/src/item.vue +152 -152
  87. package/packages/layout/src/main.vue +31 -31
  88. package/packages/login/index.js +5 -5
  89. package/packages/login/src/main.vue +1993 -1993
  90. package/packages/login/src/resetPassword.vue +562 -562
  91. package/packages/main/index.js +5 -5
  92. package/packages/main/src/default/message.vue +249 -249
  93. package/packages/main/src/default/notice.vue +157 -157
  94. package/packages/main/src/default/userinfo.vue +502 -502
  95. package/packages/main/src/public/online.vue +89 -89
  96. package/packages/main/src/public/search.vue +464 -464
  97. package/packages/main/src/public/settings.vue +221 -221
  98. package/packages/main/src/simplicity/apps.vue +388 -388
  99. package/packages/main/src/simplicity/avatar.vue +82 -82
  100. package/packages/main/src/simplicity/handler.vue +259 -259
  101. package/packages/main/src/simplicity/index.vue +2125 -2125
  102. package/packages/main/src/simplicity/lists.vue +84 -84
  103. package/packages/main/src/simplicity/menu-list.vue +135 -135
  104. package/packages/main/src/simplicity/message.vue +259 -259
  105. package/packages/main/src/simplicity/notice.vue +190 -190
  106. package/packages/main/src/simplicity/router-page.vue +45 -45
  107. package/packages/main/src/simplicity/sub-menu.vue +264 -264
  108. package/packages/main/src/simplicity/user.vue +259 -259
  109. package/packages/main/src/simplicity/userinfo.vue +397 -397
  110. package/packages/menu/index.js +5 -5
  111. package/packages/menu/src/main.vue +584 -584
  112. package/packages/nav/index.js +5 -5
  113. package/packages/nav/src/main.vue +351 -351
  114. package/packages/notify/index.js +5 -5
  115. package/packages/notify/src/main.vue +538 -538
  116. package/packages/page/index.js +5 -5
  117. package/packages/page/src/main.vue +167 -167
  118. package/packages/pagination/index.js +5 -5
  119. package/packages/pagination/src/main.vue +96 -96
  120. package/packages/player/index.js +5 -5
  121. package/packages/player/src/main.vue +194 -194
  122. package/packages/qr-code/index.js +5 -5
  123. package/packages/qr-code/src/main.vue +170 -170
  124. package/packages/radio-group/index.js +6 -6
  125. package/packages/radio-group/src/main.vue +319 -319
  126. package/packages/retrial-auth/index.js +5 -5
  127. package/packages/retrial-auth/src/main.vue +280 -280
  128. package/packages/select/index.js +5 -5
  129. package/packages/select/src/main.vue +781 -781
  130. package/packages/select-ganged/index.js +5 -5
  131. package/packages/select-ganged/src/main.vue +724 -724
  132. package/packages/selector/index.js +5 -5
  133. package/packages/selector/src/main.vue +761 -761
  134. package/packages/selector-panel/index.js +5 -5
  135. package/packages/selector-panel/src/main.vue +1027 -1027
  136. package/packages/selector-panel/src/selection.vue +170 -170
  137. package/packages/selector-panel/src/tree.vue +129 -129
  138. package/packages/sizer/index.js +5 -5
  139. package/packages/sizer/src/main.vue +254 -254
  140. package/packages/steps/index.js +5 -5
  141. package/packages/steps/src/main.vue +181 -181
  142. package/packages/switch/index.js +5 -5
  143. package/packages/switch/src/main.vue +154 -154
  144. package/packages/table-form/index.js +5 -5
  145. package/packages/tabs/index.js +5 -5
  146. package/packages/tabs/src/main.vue +788 -788
  147. package/packages/tabs-panel/index.js +5 -5
  148. package/packages/tabs-panel/src/main.vue +29 -29
  149. package/packages/theme-chalk/src/base.scss +261 -261
  150. package/packages/theme-chalk/src/button-group.scss +176 -176
  151. package/packages/theme-chalk/src/button.scss +24 -24
  152. package/packages/theme-chalk/src/calendar.scss +113 -113
  153. package/packages/theme-chalk/src/card.scss +99 -99
  154. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  155. package/packages/theme-chalk/src/clients.scss +87 -87
  156. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  157. package/packages/theme-chalk/src/data-table.scss +293 -293
  158. package/packages/theme-chalk/src/date-picker.scss +7 -7
  159. package/packages/theme-chalk/src/dialog.scss +77 -77
  160. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  161. package/packages/theme-chalk/src/enterprise.scss +5 -5
  162. package/packages/theme-chalk/src/error-page.scss +18 -18
  163. package/packages/theme-chalk/src/flow-group.scss +110 -110
  164. package/packages/theme-chalk/src/flow-list.scss +39 -39
  165. package/packages/theme-chalk/src/flow.scss +348 -348
  166. package/packages/theme-chalk/src/form.scss +499 -499
  167. package/packages/theme-chalk/src/handle-user.scss +40 -40
  168. package/packages/theme-chalk/src/handler.scss +143 -143
  169. package/packages/theme-chalk/src/icon.scss +1817 -1817
  170. package/packages/theme-chalk/src/icons.scss +99 -99
  171. package/packages/theme-chalk/src/input.scss +9 -9
  172. package/packages/theme-chalk/src/label.scss +24 -24
  173. package/packages/theme-chalk/src/layout.scss +46 -46
  174. package/packages/theme-chalk/src/login.scss +984 -984
  175. package/packages/theme-chalk/src/main.scss +663 -663
  176. package/packages/theme-chalk/src/menu.scss +222 -222
  177. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  178. package/packages/theme-chalk/src/nav.scss +111 -111
  179. package/packages/theme-chalk/src/page.scss +3 -3
  180. package/packages/theme-chalk/src/pagination.scss +29 -29
  181. package/packages/theme-chalk/src/player.scss +9 -9
  182. package/packages/theme-chalk/src/qr-code.scss +17 -17
  183. package/packages/theme-chalk/src/radio-group.scss +9 -9
  184. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  185. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  186. package/packages/theme-chalk/src/select.scss +8 -8
  187. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  188. package/packages/theme-chalk/src/selector.scss +92 -92
  189. package/packages/theme-chalk/src/simplicity.scss +1361 -1361
  190. package/packages/theme-chalk/src/sizer.scss +36 -36
  191. package/packages/theme-chalk/src/steps.scss +88 -88
  192. package/packages/theme-chalk/src/switch.scss +3 -3
  193. package/packages/theme-chalk/src/table-form.scss +1 -1
  194. package/packages/theme-chalk/src/tabs.scss +87 -87
  195. package/packages/theme-chalk/src/tips.scss +7 -7
  196. package/packages/theme-chalk/src/toolbar.scss +179 -179
  197. package/packages/theme-chalk/src/tree-group.scss +72 -72
  198. package/packages/theme-chalk/src/tree.scss +165 -165
  199. package/packages/theme-chalk/src/upload.scss +172 -172
  200. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  201. package/packages/tips/index.js +5 -5
  202. package/packages/tips/src/main.vue +141 -141
  203. package/packages/toolbar/index.js +5 -5
  204. package/packages/toolbar/src/main.vue +430 -430
  205. package/packages/tree/index.js +5 -5
  206. package/packages/tree-group/index.js +5 -5
  207. package/packages/upload/index.js +5 -5
  208. package/packages/upload/src/main.vue +1343 -1343
  209. package/packages/upload/src/picture.js +15 -15
  210. package/packages/wujie/index.js +5 -5
  211. package/packages/wujie/src/main.vue +145 -145
  212. package/packages/wxlogin/index.js +5 -5
  213. package/packages/wxlogin/src/main.vue +128 -128
  214. package/src/config/api.js +308 -308
  215. package/src/config/image.js +2 -2
  216. package/src/index.js +163 -163
  217. package/src/utils/bus.js +3 -3
  218. package/src/utils/date-util.js +312 -312
  219. package/src/utils/http.js +50 -50
  220. package/src/utils/rules.js +18 -18
  221. package/src/utils/store.js +21 -21
  222. package/src/utils/webSocket.js +107 -107
  223. package/packages/.DS_Store +0 -0
  224. package/packages/autocomplete/.DS_Store +0 -0
  225. package/packages/calogin/.DS_Store +0 -0
  226. package/packages/date-picker/.DS_Store +0 -0
  227. package/packages/date-picker/src/.DS_Store +0 -0
  228. package/packages/flow/.DS_Store +0 -0
  229. package/packages/flow/src/.DS_Store +0 -0
  230. package/packages/flow-list/.DS_Store +0 -0
  231. package/packages/form/.DS_Store +0 -0
  232. package/packages/login/.DS_Store +0 -0
  233. package/packages/main/.DS_Store +0 -0
  234. package/packages/main/src/.DS_Store +0 -0
  235. package/packages/menu/.DS_Store +0 -0
  236. package/packages/scrollbar/.DS_Store +0 -0
  237. package/packages/select/.DS_Store +0 -0
  238. package/packages/selector/.DS_Store +0 -0
  239. package/packages/selector-panel/.DS_Store +0 -0
  240. package/packages/theme-chalk/src/.DS_Store +0 -0
  241. package/packages/upload/.DS_Store +0 -0
  242. package/src/.DS_Store +0 -0
  243. package/src/utils/.DS_Store +0 -0
@@ -1,259 +1,259 @@
1
- <template>
2
- <el-drawer
3
- class="es-simplicity-message"
4
- modal-class="es-simplicity-message-modal"
5
- direction="rtl"
6
- size="648px"
7
- :withHeader="false"
8
- :visible.sync="show"
9
- :modal-append-to-body="false"
10
- >
11
- <div class="es-simplicity-message-header">
12
- <span class="es-simplicity-message-title">消息提示</span>
13
- <span class="es-simplicity-message-overlook" @click="handleIgnoreAll"
14
- >全部忽略</span
15
- >
16
- </div>
17
- <div class="es-simplicity-message-lists-box">
18
- <div class="es-simplicity-message-lists">
19
- <el-scrollbar class="es-scrollbar">
20
- <div v-infinite-scroll="getMsg" :infinite-scroll-disabled="disabled">
21
- <div
22
- v-for="(item, index) in msgs"
23
- :key="item.id"
24
- class="es-simplicity-message-item"
25
- >
26
- <div class="es-simplicity-message-item-title">
27
- {{ item.title }}
28
- </div>
29
- <div>
30
- <span class="es-simplicity-message-item-time">
31
- {{ item.time }}
32
- </span>
33
- <span
34
- class="es-simplicity-message-handler"
35
- v-show="item.handlerUrl"
36
- @click="handleMessage(item, index)"
37
- >
38
- 处理
39
- </span>
40
- <span
41
- class="es-simplicity-message-overlook"
42
- @click="handleIgnore(item, index)"
43
- >
44
- 忽略
45
- </span>
46
- </div>
47
- </div>
48
- <p class="es-simplicity-message-tips" v-if="loading">加载中...</p>
49
- <p class="es-simplicity-message-tips" v-if="noMore && count > 0">
50
- 没有更多了
51
- </p>
52
- </div>
53
- </el-scrollbar>
54
- </div>
55
- </div>
56
- <div class="es-simplicity-message-total">共有 {{ count }} 条消息记录</div>
57
- <es-dialog
58
- title="处理"
59
- name="manage"
60
- width="90%"
61
- height="80%"
62
- :visible.sync="dialog.show"
63
- :url="dialog.url"
64
- :param="dialog.params"
65
- @close="handleClose"
66
- ></es-dialog>
67
- </el-drawer>
68
- </template>
69
- <script>
70
- import {
71
- sysMsgPage,
72
- ignoreSysMsg,
73
- ignoreAllSysMsg
74
- } from 'eoss-ui/src/config/api.js';
75
- import util from 'eoss-ui/src/utils/util';
76
- export default {
77
- name: 'Message',
78
- provide() {
79
- return {
80
- deleteMessage: this.handleRemove
81
- };
82
- },
83
- props: {
84
- visible: Boolean,
85
- total: {
86
- type: Number,
87
- default: 0
88
- },
89
- winopen: Boolean
90
- },
91
- computed: {
92
- show: {
93
- get() {
94
- return this.visible;
95
- },
96
- set(val) {
97
- this.$emit('update:visible', val);
98
- }
99
- },
100
- count: {
101
- get() {
102
- return this.total;
103
- },
104
- set(val) {
105
- this.$emit('update:total', val);
106
- }
107
- },
108
- noMore() {
109
- return this.msgs.length >= this.count;
110
- },
111
- disabled() {
112
- return this.loading || this.noMore;
113
- }
114
- },
115
- watch: {
116
- total(val, old) {
117
- if (parseInt(val, 10) < parseInt(old, 10) && this.index !== null) {
118
- this.handleRemove();
119
- }
120
- }
121
- },
122
- data() {
123
- return {
124
- //加载数据
125
- loading: false,
126
- //消息页码
127
- pageNum: 1,
128
- pageSize: 20,
129
- pageCount: 1,
130
- //消息数据,
131
- msgs: [],
132
- dialog: {
133
- params: {},
134
- url: '',
135
- show: false
136
- },
137
- index: null,
138
- deleteId: null
139
- };
140
- },
141
- mounted() {
142
- util.win.deleteMsg = this.handleRemove;
143
- },
144
- methods: {
145
- //获取消息列表
146
- getMsg(reload) {
147
- if (this.pageNum <= this.pageCount) {
148
- this.loading = true;
149
- util
150
- .ajax({
151
- url: sysMsgPage,
152
- params: {
153
- pageNum: reload ? 1 : this.pageNum,
154
- pageSize: this.pageSize
155
- }
156
- })
157
- .then((res) => {
158
- if (res && res.rCode === 0) {
159
- this.pageCount = res.results.pageCount;
160
- this.loading = false;
161
- if (reload || this.pageNum == 1) {
162
- this.msgs = JSON.parse(JSON.stringify(res.results.records));
163
- } else {
164
- this.msgs = this.msgs.concat(res.results.records);
165
- }
166
- this.pageNum++;
167
- } else {
168
- let msg = res.msg || '系统错误,请联系管理员!';
169
- this.$message.error(msg);
170
- }
171
- })
172
- .catch((err) => {
173
- this.loading = false;
174
- if (err.message && err.message !== 'canceled') {
175
- this.$message.error(err.message);
176
- }
177
- });
178
- }
179
- },
180
- //忽略
181
- handleIgnore(res, i) {
182
- util
183
- .ajax({
184
- url: ignoreSysMsg,
185
- params: {
186
- id: res.id
187
- }
188
- })
189
- .then((res) => {
190
- if (res.rCode == 0) {
191
- this.count -= 1;
192
- this.msgs.splice(i, 1);
193
- } else {
194
- let msg = res.msg || '系统错误,请联系管理员!';
195
- this.$message.error(msg);
196
- }
197
- });
198
- },
199
- //全部忽略
200
- handleIgnoreAll() {
201
- util
202
- .ajax({
203
- url: ignoreAllSysMsg
204
- })
205
- .then((res) => {
206
- this.count = 0;
207
- this.msgs = [];
208
- this.$emit('ignore', { type: 'ignore', value: 'all' });
209
- })
210
- .catch((err) => {
211
- if (err.message && err.message !== 'canceled') {
212
- this.$message.error(err.message);
213
- }
214
- });
215
- },
216
- //处理消息
217
- handleMessage(item, index) {
218
- this.count -= 1;
219
- this.msgs.splice(index, 1);
220
- if (this.winopen) {
221
- const mywin = util.win.open(item.handlerUrl);
222
- if (mywin) {
223
- let times = setInterval(() => {
224
- if (mywin.closed) {
225
- clearInterval(times);
226
- this.$parent.$emit('bus-emit', 'waitdone');
227
- }
228
- }, 1000);
229
- }
230
- } else {
231
- this.dialog = {
232
- show: true,
233
- url: item.handlerUrl,
234
- data: {
235
- id: item.id,
236
- pendingId: item.pendingId,
237
- userId: item.userId
238
- }
239
- };
240
- this.index = index;
241
- }
242
- },
243
- handleRemove(id) {
244
- if (this.index !== null) {
245
- this.count -= 1;
246
- this.msgs.splice(this.index, 1);
247
- this.index = null;
248
- }
249
- if (id) {
250
- this.$emit('handle', id);
251
- }
252
- this.dialog.show = false;
253
- },
254
- handleClose() {
255
- this.$parent.$emit('bus-emit', 'waitdone');
256
- }
257
- }
258
- };
259
- </script>
1
+ <template>
2
+ <el-drawer
3
+ class="es-simplicity-message"
4
+ modal-class="es-simplicity-message-modal"
5
+ direction="rtl"
6
+ size="648px"
7
+ :withHeader="false"
8
+ :visible.sync="show"
9
+ :modal-append-to-body="false"
10
+ >
11
+ <div class="es-simplicity-message-header">
12
+ <span class="es-simplicity-message-title">消息提示</span>
13
+ <span class="es-simplicity-message-overlook" @click="handleIgnoreAll"
14
+ >全部忽略</span
15
+ >
16
+ </div>
17
+ <div class="es-simplicity-message-lists-box">
18
+ <div class="es-simplicity-message-lists">
19
+ <el-scrollbar class="es-scrollbar">
20
+ <div v-infinite-scroll="getMsg" :infinite-scroll-disabled="disabled">
21
+ <div
22
+ v-for="(item, index) in msgs"
23
+ :key="item.id"
24
+ class="es-simplicity-message-item"
25
+ >
26
+ <div class="es-simplicity-message-item-title">
27
+ {{ item.title }}
28
+ </div>
29
+ <div>
30
+ <span class="es-simplicity-message-item-time">
31
+ {{ item.time }}
32
+ </span>
33
+ <span
34
+ class="es-simplicity-message-handler"
35
+ v-show="item.handlerUrl"
36
+ @click="handleMessage(item, index)"
37
+ >
38
+ 处理
39
+ </span>
40
+ <span
41
+ class="es-simplicity-message-overlook"
42
+ @click="handleIgnore(item, index)"
43
+ >
44
+ 忽略
45
+ </span>
46
+ </div>
47
+ </div>
48
+ <p class="es-simplicity-message-tips" v-if="loading">加载中...</p>
49
+ <p class="es-simplicity-message-tips" v-if="noMore && count > 0">
50
+ 没有更多了
51
+ </p>
52
+ </div>
53
+ </el-scrollbar>
54
+ </div>
55
+ </div>
56
+ <div class="es-simplicity-message-total">共有 {{ count }} 条消息记录</div>
57
+ <es-dialog
58
+ title="处理"
59
+ name="manage"
60
+ width="90%"
61
+ height="80%"
62
+ :visible.sync="dialog.show"
63
+ :url="dialog.url"
64
+ :param="dialog.params"
65
+ @close="handleClose"
66
+ ></es-dialog>
67
+ </el-drawer>
68
+ </template>
69
+ <script>
70
+ import {
71
+ sysMsgPage,
72
+ ignoreSysMsg,
73
+ ignoreAllSysMsg
74
+ } from 'eoss-ui/src/config/api.js';
75
+ import util from 'eoss-ui/src/utils/util';
76
+ export default {
77
+ name: 'Message',
78
+ provide() {
79
+ return {
80
+ deleteMessage: this.handleRemove
81
+ };
82
+ },
83
+ props: {
84
+ visible: Boolean,
85
+ total: {
86
+ type: Number,
87
+ default: 0
88
+ },
89
+ winopen: Boolean
90
+ },
91
+ computed: {
92
+ show: {
93
+ get() {
94
+ return this.visible;
95
+ },
96
+ set(val) {
97
+ this.$emit('update:visible', val);
98
+ }
99
+ },
100
+ count: {
101
+ get() {
102
+ return this.total;
103
+ },
104
+ set(val) {
105
+ this.$emit('update:total', val);
106
+ }
107
+ },
108
+ noMore() {
109
+ return this.msgs.length >= this.count;
110
+ },
111
+ disabled() {
112
+ return this.loading || this.noMore;
113
+ }
114
+ },
115
+ watch: {
116
+ total(val, old) {
117
+ if (parseInt(val, 10) < parseInt(old, 10) && this.index !== null) {
118
+ this.handleRemove();
119
+ }
120
+ }
121
+ },
122
+ data() {
123
+ return {
124
+ //加载数据
125
+ loading: false,
126
+ //消息页码
127
+ pageNum: 1,
128
+ pageSize: 20,
129
+ pageCount: 1,
130
+ //消息数据,
131
+ msgs: [],
132
+ dialog: {
133
+ params: {},
134
+ url: '',
135
+ show: false
136
+ },
137
+ index: null,
138
+ deleteId: null
139
+ };
140
+ },
141
+ mounted() {
142
+ util.win.deleteMsg = this.handleRemove;
143
+ },
144
+ methods: {
145
+ //获取消息列表
146
+ getMsg(reload) {
147
+ if (this.pageNum <= this.pageCount) {
148
+ this.loading = true;
149
+ util
150
+ .ajax({
151
+ url: sysMsgPage,
152
+ params: {
153
+ pageNum: reload ? 1 : this.pageNum,
154
+ pageSize: this.pageSize
155
+ }
156
+ })
157
+ .then((res) => {
158
+ if (res && res.rCode === 0) {
159
+ this.pageCount = res.results.pageCount;
160
+ this.loading = false;
161
+ if (reload || this.pageNum == 1) {
162
+ this.msgs = JSON.parse(JSON.stringify(res.results.records));
163
+ } else {
164
+ this.msgs = this.msgs.concat(res.results.records);
165
+ }
166
+ this.pageNum++;
167
+ } else {
168
+ let msg = res.msg || '系统错误,请联系管理员!';
169
+ this.$message.error(msg);
170
+ }
171
+ })
172
+ .catch((err) => {
173
+ this.loading = false;
174
+ if (err.message && err.message !== 'canceled') {
175
+ this.$message.error(err.message);
176
+ }
177
+ });
178
+ }
179
+ },
180
+ //忽略
181
+ handleIgnore(res, i) {
182
+ util
183
+ .ajax({
184
+ url: ignoreSysMsg,
185
+ params: {
186
+ id: res.id
187
+ }
188
+ })
189
+ .then((res) => {
190
+ if (res.rCode == 0) {
191
+ this.count -= 1;
192
+ this.msgs.splice(i, 1);
193
+ } else {
194
+ let msg = res.msg || '系统错误,请联系管理员!';
195
+ this.$message.error(msg);
196
+ }
197
+ });
198
+ },
199
+ //全部忽略
200
+ handleIgnoreAll() {
201
+ util
202
+ .ajax({
203
+ url: ignoreAllSysMsg
204
+ })
205
+ .then((res) => {
206
+ this.count = 0;
207
+ this.msgs = [];
208
+ this.$emit('ignore', { type: 'ignore', value: 'all' });
209
+ })
210
+ .catch((err) => {
211
+ if (err.message && err.message !== 'canceled') {
212
+ this.$message.error(err.message);
213
+ }
214
+ });
215
+ },
216
+ //处理消息
217
+ handleMessage(item, index) {
218
+ this.count -= 1;
219
+ this.msgs.splice(index, 1);
220
+ if (this.winopen) {
221
+ const mywin = util.win.open(item.handlerUrl);
222
+ if (mywin) {
223
+ let times = setInterval(() => {
224
+ if (mywin.closed) {
225
+ clearInterval(times);
226
+ this.$parent.$emit('bus-emit', 'waitdone');
227
+ }
228
+ }, 1000);
229
+ }
230
+ } else {
231
+ this.dialog = {
232
+ show: true,
233
+ url: item.handlerUrl,
234
+ data: {
235
+ id: item.id,
236
+ pendingId: item.pendingId,
237
+ userId: item.userId
238
+ }
239
+ };
240
+ this.index = index;
241
+ }
242
+ },
243
+ handleRemove(id) {
244
+ if (this.index !== null) {
245
+ this.count -= 1;
246
+ this.msgs.splice(this.index, 1);
247
+ this.index = null;
248
+ }
249
+ if (id) {
250
+ this.$emit('handle', id);
251
+ }
252
+ this.dialog.show = false;
253
+ },
254
+ handleClose() {
255
+ this.$parent.$emit('bus-emit', 'waitdone');
256
+ }
257
+ }
258
+ };
259
+ </script>