eoss-ui 0.7.45 → 0.7.47

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 (283) hide show
  1. package/lib/button-group.js +3 -3
  2. package/lib/calendar.js +6 -6
  3. package/lib/calogin.js +233 -233
  4. package/lib/clients.js +5 -5
  5. package/lib/data-table.js +21 -16
  6. package/lib/enable-drag.js +9 -8
  7. package/lib/eoss-ui.common.js +1126 -1082
  8. package/lib/flow-list.js +81 -81
  9. package/lib/flow.js +354 -348
  10. package/lib/handler.js +8 -8
  11. package/lib/icon.js +3 -3
  12. package/lib/icons.js +1 -1
  13. package/lib/index.js +1 -1
  14. package/lib/login.js +22 -19
  15. package/lib/main.js +296 -267
  16. package/lib/nav.js +4 -4
  17. package/lib/qr-code.js +13 -13
  18. package/lib/theme-chalk/base.css +1 -1
  19. package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
  20. package/lib/theme-chalk/fonts/iconfont.woff +0 -0
  21. package/lib/theme-chalk/icon.css +1 -1
  22. package/lib/theme-chalk/index.css +1 -1
  23. package/lib/theme-chalk/login.css +1 -1
  24. package/lib/theme-chalk/main.css +1 -1
  25. package/lib/theme-chalk/menu.css +1 -1
  26. package/lib/theme-chalk/simplicity.css +1 -1
  27. package/lib/theme-chalk/sizer.css +1 -1
  28. package/lib/theme-chalk/upload.css +1 -1
  29. package/lib/tips.js +3 -3
  30. package/lib/upload.js +9 -9
  31. package/package.json +160 -160
  32. package/packages/button/index.js +5 -5
  33. package/packages/button/src/main.vue +418 -418
  34. package/packages/button-group/index.js +5 -5
  35. package/packages/button-group/src/main.vue +346 -346
  36. package/packages/calendar/index.js +5 -5
  37. package/packages/calendar/src/main.vue +4 -4
  38. package/packages/calogin/index.js +5 -5
  39. package/packages/calogin/src/main.vue +412 -412
  40. package/packages/calogin/src/plugin.js +915 -915
  41. package/packages/card/index.js +5 -5
  42. package/packages/card/src/main.vue +156 -156
  43. package/packages/cascader/index.js +5 -5
  44. package/packages/cascader/src/main.vue +168 -168
  45. package/packages/checkbox-group/index.js +5 -5
  46. package/packages/checkbox-group/src/main.vue +333 -333
  47. package/packages/clients/index.js +5 -5
  48. package/packages/clients/src/main.vue +151 -151
  49. package/packages/data-table/index.js +5 -5
  50. package/packages/data-table/src/children.vue +39 -39
  51. package/packages/data-table/src/column.vue +992 -992
  52. package/packages/data-table/src/main.vue +1840 -1831
  53. package/packages/data-table/src/sizer.vue +195 -195
  54. package/packages/data-table-form/index.js +5 -5
  55. package/packages/data-table-form/src/checkbox.vue +101 -101
  56. package/packages/data-table-form/src/colgroup.vue +17 -17
  57. package/packages/data-table-form/src/main.vue +181 -181
  58. package/packages/data-table-form/src/radio.vue +65 -65
  59. package/packages/data-table-form/src/table.vue +233 -233
  60. package/packages/data-table-form/src/tbody.vue +336 -336
  61. package/packages/data-table-form/src/thead.vue +68 -68
  62. package/packages/date-picker/index.js +5 -5
  63. package/packages/date-picker/src/main.vue +236 -236
  64. package/packages/dialog/index.js +5 -5
  65. package/packages/enable-drag/index.js +5 -5
  66. package/packages/enable-drag/src/main.vue +5 -5
  67. package/packages/enterprise/index.js +5 -5
  68. package/packages/enterprise/src/main.vue +66 -66
  69. package/packages/error-page/index.js +5 -5
  70. package/packages/error-page/src/main.vue +44 -44
  71. package/packages/flow/index.js +5 -5
  72. package/packages/flow/src/component/Circulate.vue +413 -413
  73. package/packages/flow/src/component/CommonOpinions.vue +373 -373
  74. package/packages/flow/src/component/CustomPreset.vue +322 -322
  75. package/packages/flow/src/component/FileList.vue +97 -97
  76. package/packages/flow/src/component/FreeCirculation.vue +240 -240
  77. package/packages/flow/src/component/Preset.vue +255 -255
  78. package/packages/flow/src/component/SendMsg.vue +242 -242
  79. package/packages/flow/src/component/TimeLimit.vue +190 -190
  80. package/packages/flow/src/component/taskUnionExamine.vue +756 -756
  81. package/packages/flow/src/form.vue +121 -121
  82. package/packages/flow/src/freeStartFlow.vue +2846 -2847
  83. package/packages/flow/src/main.vue +3861 -3855
  84. package/packages/flow/src/processForm.vue +1365 -1365
  85. package/packages/flow/src/processReject.vue +309 -309
  86. package/packages/flow/src/reset.vue +942 -941
  87. package/packages/flow/src/selectUser.vue +2 -1
  88. package/packages/flow/src/startTaskRead.vue +692 -691
  89. package/packages/flow/src/supervise.vue +159 -159
  90. package/packages/flow/src/table.vue +58 -58
  91. package/packages/flow-group/index.js +5 -5
  92. package/packages/flow-group/src/main.vue +717 -717
  93. package/packages/flow-list/index.js +5 -5
  94. package/packages/flow-list/src/main.vue +1787 -1787
  95. package/packages/form/index.js +5 -5
  96. package/packages/form/src/main.vue +3901 -3901
  97. package/packages/form/src/table.vue +1512 -1512
  98. package/packages/handle-user/index.js +5 -5
  99. package/packages/handle-user/src/main.vue +137 -137
  100. package/packages/handler/index.js +5 -5
  101. package/packages/handler/src/main.vue +496 -496
  102. package/packages/icon/index.js +5 -5
  103. package/packages/icon/src/main.vue +104 -104
  104. package/packages/icons/index.js +5 -5
  105. package/packages/icons/src/icon.json +1 -1
  106. package/packages/icons/src/main.vue +81 -81
  107. package/packages/input/index.js +5 -5
  108. package/packages/input/src/main.vue +356 -356
  109. package/packages/input-number/index.js +5 -5
  110. package/packages/input-number/src/main.vue +106 -106
  111. package/packages/label/index.js +5 -5
  112. package/packages/label/src/main.vue +457 -457
  113. package/packages/layout/index.js +5 -5
  114. package/packages/layout/src/item.vue +152 -152
  115. package/packages/layout/src/main.vue +31 -31
  116. package/packages/login/index.js +5 -5
  117. package/packages/login/src/main.vue +2082 -2078
  118. package/packages/login/src/resetPassword.vue +557 -557
  119. package/packages/main/index.js +5 -5
  120. package/packages/main/src/default/message.vue +249 -249
  121. package/packages/main/src/default/notice.vue +157 -157
  122. package/packages/main/src/default/userinfo.vue +503 -503
  123. package/packages/main/src/public/online.vue +89 -89
  124. package/packages/main/src/public/search.vue +464 -464
  125. package/packages/main/src/public/settings.vue +227 -221
  126. package/packages/main/src/simplicity/apps.vue +388 -388
  127. package/packages/main/src/simplicity/avatar.vue +82 -82
  128. package/packages/main/src/simplicity/handler.vue +160 -158
  129. package/packages/main/src/simplicity/index.vue +2277 -2277
  130. package/packages/main/src/simplicity/lists.vue +84 -84
  131. package/packages/main/src/simplicity/menu-list.vue +135 -135
  132. package/packages/main/src/simplicity/message.vue +293 -293
  133. package/packages/main/src/simplicity/notice.vue +222 -222
  134. package/packages/main/src/simplicity/router-page.vue +45 -45
  135. package/packages/main/src/simplicity/sub-menu.vue +274 -274
  136. package/packages/main/src/simplicity/user.vue +259 -259
  137. package/packages/main/src/simplicity/userinfo.vue +401 -401
  138. package/packages/menu/index.js +5 -5
  139. package/packages/menu/src/main.vue +595 -595
  140. package/packages/nav/index.js +5 -5
  141. package/packages/nav/src/main.vue +351 -351
  142. package/packages/notify/index.js +5 -5
  143. package/packages/notify/src/main.vue +538 -538
  144. package/packages/page/index.js +5 -5
  145. package/packages/page/src/main.vue +167 -167
  146. package/packages/pagination/index.js +5 -5
  147. package/packages/pagination/src/main.vue +96 -96
  148. package/packages/player/index.js +5 -5
  149. package/packages/player/src/main.vue +194 -194
  150. package/packages/qr-code/index.js +5 -5
  151. package/packages/qr-code/src/main.vue +170 -170
  152. package/packages/radio-group/index.js +6 -6
  153. package/packages/radio-group/src/main.vue +319 -319
  154. package/packages/retrial-auth/index.js +5 -5
  155. package/packages/retrial-auth/src/main.vue +280 -280
  156. package/packages/select/index.js +5 -5
  157. package/packages/select/src/main.vue +782 -782
  158. package/packages/select-ganged/index.js +5 -5
  159. package/packages/select-ganged/src/main.vue +724 -724
  160. package/packages/selector/index.js +5 -5
  161. package/packages/selector/src/main.vue +761 -761
  162. package/packages/selector-panel/index.js +5 -5
  163. package/packages/selector-panel/src/main.vue +1027 -1027
  164. package/packages/selector-panel/src/selection.vue +170 -170
  165. package/packages/selector-panel/src/tree.vue +129 -129
  166. package/packages/sizer/index.js +5 -5
  167. package/packages/sizer/src/main.vue +254 -254
  168. package/packages/steps/index.js +5 -5
  169. package/packages/steps/src/main.vue +181 -181
  170. package/packages/switch/index.js +5 -5
  171. package/packages/switch/src/main.vue +170 -170
  172. package/packages/table-form/index.js +5 -5
  173. package/packages/tabs/index.js +5 -5
  174. package/packages/tabs/src/main.vue +788 -788
  175. package/packages/tabs-panel/index.js +5 -5
  176. package/packages/tabs-panel/src/main.vue +29 -29
  177. package/packages/theme-chalk/lib/base.css +1 -1
  178. package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
  179. package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
  180. package/packages/theme-chalk/lib/icon.css +1 -1
  181. package/packages/theme-chalk/lib/index.css +1 -1
  182. package/packages/theme-chalk/lib/login.css +1 -1
  183. package/packages/theme-chalk/lib/main.css +1 -1
  184. package/packages/theme-chalk/lib/menu.css +1 -1
  185. package/packages/theme-chalk/lib/simplicity.css +1 -1
  186. package/packages/theme-chalk/lib/sizer.css +1 -1
  187. package/packages/theme-chalk/lib/upload.css +1 -1
  188. package/packages/theme-chalk/src/base.scss +261 -261
  189. package/packages/theme-chalk/src/button-group.scss +176 -176
  190. package/packages/theme-chalk/src/button.scss +24 -24
  191. package/packages/theme-chalk/src/calendar.scss +113 -113
  192. package/packages/theme-chalk/src/card.scss +99 -99
  193. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  194. package/packages/theme-chalk/src/clients.scss +87 -87
  195. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  196. package/packages/theme-chalk/src/data-table.scss +293 -293
  197. package/packages/theme-chalk/src/date-picker.scss +7 -7
  198. package/packages/theme-chalk/src/dialog.scss +77 -77
  199. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  200. package/packages/theme-chalk/src/enterprise.scss +5 -5
  201. package/packages/theme-chalk/src/error-page.scss +18 -18
  202. package/packages/theme-chalk/src/flow-group.scss +110 -110
  203. package/packages/theme-chalk/src/flow-list.scss +39 -39
  204. package/packages/theme-chalk/src/flow.scss +351 -351
  205. package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
  206. package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
  207. package/packages/theme-chalk/src/form.scss +501 -501
  208. package/packages/theme-chalk/src/handle-user.scss +40 -40
  209. package/packages/theme-chalk/src/handler.scss +148 -148
  210. package/packages/theme-chalk/src/icon.scss +1429 -1817
  211. package/packages/theme-chalk/src/icons.scss +99 -99
  212. package/packages/theme-chalk/src/input.scss +9 -9
  213. package/packages/theme-chalk/src/label.scss +24 -24
  214. package/packages/theme-chalk/src/layout.scss +46 -46
  215. package/packages/theme-chalk/src/login.scss +1006 -987
  216. package/packages/theme-chalk/src/main.scss +663 -663
  217. package/packages/theme-chalk/src/menu.scss +224 -224
  218. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  219. package/packages/theme-chalk/src/nav.scss +111 -111
  220. package/packages/theme-chalk/src/page.scss +3 -3
  221. package/packages/theme-chalk/src/pagination.scss +29 -29
  222. package/packages/theme-chalk/src/player.scss +9 -9
  223. package/packages/theme-chalk/src/qr-code.scss +17 -17
  224. package/packages/theme-chalk/src/radio-group.scss +9 -9
  225. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  226. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  227. package/packages/theme-chalk/src/select.scss +8 -8
  228. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  229. package/packages/theme-chalk/src/selector.scss +114 -114
  230. package/packages/theme-chalk/src/simplicity.scss +1380 -1380
  231. package/packages/theme-chalk/src/sizer.scss +36 -36
  232. package/packages/theme-chalk/src/steps.scss +88 -88
  233. package/packages/theme-chalk/src/switch.scss +3 -3
  234. package/packages/theme-chalk/src/table-form.scss +1 -1
  235. package/packages/theme-chalk/src/tabs.scss +87 -87
  236. package/packages/theme-chalk/src/tips.scss +7 -7
  237. package/packages/theme-chalk/src/toolbar.scss +179 -179
  238. package/packages/theme-chalk/src/tree-group.scss +72 -72
  239. package/packages/theme-chalk/src/tree.scss +165 -165
  240. package/packages/theme-chalk/src/upload.scss +172 -172
  241. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  242. package/packages/tips/index.js +5 -5
  243. package/packages/tips/src/main.vue +141 -141
  244. package/packages/toolbar/index.js +5 -5
  245. package/packages/toolbar/src/main.vue +430 -430
  246. package/packages/tree/index.js +5 -5
  247. package/packages/tree-group/index.js +5 -5
  248. package/packages/upload/index.js +5 -5
  249. package/packages/upload/src/main.vue +1344 -1344
  250. package/packages/upload/src/picture.js +15 -15
  251. package/packages/wujie/index.js +5 -5
  252. package/packages/wujie/src/main.vue +145 -145
  253. package/packages/wxlogin/index.js +5 -5
  254. package/packages/wxlogin/src/main.vue +128 -128
  255. package/src/config/api.js +315 -315
  256. package/src/config/image.js +2 -2
  257. package/src/index.js +163 -163
  258. package/src/utils/bus.js +3 -3
  259. package/src/utils/date-util.js +312 -312
  260. package/src/utils/http.js +50 -50
  261. package/src/utils/rules.js +18 -18
  262. package/src/utils/store.js +21 -21
  263. package/src/utils/webSocket.js +107 -107
  264. package/packages/.DS_Store +0 -0
  265. package/packages/calogin/.DS_Store +0 -0
  266. package/packages/date-picker/.DS_Store +0 -0
  267. package/packages/date-picker/src/.DS_Store +0 -0
  268. package/packages/dialog/.DS_Store +0 -0
  269. package/packages/flow/.DS_Store +0 -0
  270. package/packages/flow/src/.DS_Store +0 -0
  271. package/packages/flow-list/.DS_Store +0 -0
  272. package/packages/form/.DS_Store +0 -0
  273. package/packages/login/.DS_Store +0 -0
  274. package/packages/main/.DS_Store +0 -0
  275. package/packages/main/src/.DS_Store +0 -0
  276. package/packages/menu/.DS_Store +0 -0
  277. package/packages/select/.DS_Store +0 -0
  278. package/packages/selector/.DS_Store +0 -0
  279. package/packages/selector-panel/.DS_Store +0 -0
  280. package/packages/theme-chalk/src/.DS_Store +0 -0
  281. package/packages/upload/.DS_Store +0 -0
  282. package/src/.DS_Store +0 -0
  283. package/src/utils/.DS_Store +0 -0
@@ -1,1787 +1,1787 @@
1
- <template>
2
- <div class="es-flow-list">
3
- <div
4
- class="es-flow-list-item"
5
- v-for="(item, index) in content"
6
- :key="index"
7
- v-show="
8
- (item.type == 'splitReading' &&
9
- splitReadingData &&
10
- splitReadingData.length > 0) ||
11
- (item.type == 'preset' &&
12
- presetData &&
13
- presetData.length > 0 &&
14
- currentUserHasPresetInfoAuth) ||
15
- (item.type != 'splitReading' && item.type != 'preset')
16
- "
17
- >
18
- <div
19
- class="es-flow-list-box"
20
- :ref="item.type"
21
- :style="`position:${height == 'auto' ? 'unset' : 'absolute'}`"
22
- >
23
- <es-data-table
24
- v-if="show"
25
- :class="{ 'es-flow-group-data-table': item.type !== 'sign' }"
26
- :display="display"
27
- @cell-click="handleCellClick"
28
- :full="height !== 'auto'"
29
- v-bind="item"
30
- :data="
31
- showDoresult
32
- ? returnData(item.type).filter(
33
- (x) => x.doresult || x.handleInfo || x.pendstate != 2
34
- )
35
- : returnData(item.type)
36
- "
37
- @btn-click="handleBtnClick"
38
- @selection-change="handleSelectionChange"
39
- ></es-data-table>
40
- </div>
41
- </div>
42
- <es-dialog
43
- append-to-body
44
- :close-on-click-modal="false"
45
- title="查看附件"
46
- :visible.sync="showFileList"
47
- v-if="showFileList"
48
- >
49
- <FileList
50
- :ownId="wfpendingid"
51
- :code="flowTableInfo.adjunctCode"
52
- :deleted="false"
53
- :disabled="true"
54
- @cancel="showFileList = false"
55
- />
56
- </es-dialog>
57
- <es-dialog
58
- append-to-body
59
- :close-on-click-modal="false"
60
- title="查看催办记录"
61
- :visible.sync="showPress"
62
- height="500px"
63
- v-if="showPress"
64
- >
65
- <div style="height: 400px" v-loading="pressLoading">
66
- <es-data-table
67
- v-if="show"
68
- :data="pressTableList"
69
- :thead="pressThead"
70
- @page-size-change="handleSizeChange"
71
- @page-current-change="handleCurrentChange"
72
- stripe
73
- full
74
- style="width: 100%"
75
- @sort-change="sortChange"
76
- :page="pageInfo"
77
- />
78
- </div>
79
- </es-dialog>
80
- <es-dialog
81
- append-to-body
82
- :close-on-click-modal="false"
83
- title="删除"
84
- :visible.sync="showDel"
85
- height="auto"
86
- class="del-flow"
87
- v-if="showDel"
88
- >
89
- <es-form
90
- v-loading="delLoading"
91
- :model="formData"
92
- :contents="formItemList"
93
- @submit="handleFormSubmit"
94
- >
95
- </es-form>
96
- </es-dialog>
97
- </div>
98
- </template>
99
-
100
- <script>
101
- import {
102
- findCodeValues,
103
- deletePresetInfo,
104
- pendedhistoryListJson,
105
- toPresetInfoListIndex,
106
- pressListJson,
107
- pendedhistoryListWithCircularReadJson,
108
- deleteFlow,
109
- taskReadWithDraw,
110
- fyListJson,
111
- circularReadWithdraw
112
- } from 'eoss-ui/src/config/api';
113
- import FileList from '../../flow/src/component/FileList.vue';
114
- import util from 'eoss-ui/src/utils/util';
115
- export default {
116
- name: 'EsFlowList',
117
- components: {
118
- [FileList.name]: FileList
119
- },
120
- props: {
121
- businessId: {
122
- type: String,
123
- default: ''
124
- },
125
- getListCount: {
126
- type: Function,
127
- default: () => {}
128
- },
129
- flowViewType:{
130
- type: [Number,String],
131
- default: 0
132
- },
133
- hide: {
134
- type: String,
135
- default: ''
136
- },
137
- hideBtn: {
138
- type: Boolean,
139
- default: false
140
- },
141
- params: {
142
- type: Object,
143
- default: () => {
144
- return {};
145
- }
146
- },
147
- toolbar: {
148
- type: Array,
149
- default: () => []
150
- },
151
- headFields: {
152
- type: Array,
153
- default: () => []
154
- },
155
- contents: {
156
- type: Array,
157
- default() {
158
- return ['flow', 'splitReading', 'preset'];
159
- }
160
- },
161
- numbers: {
162
- type: Boolean,
163
- default: false
164
- },
165
- height: {
166
- type: String,
167
- default: ''
168
- },
169
- showDoresult: {
170
- type: Boolean,
171
- default: false
172
- },
173
- theadWidth: {
174
- type: Object,
175
- default: () => {
176
- return {};
177
- }
178
- },
179
- type: {
180
- type: String,
181
- default: ''
182
- },
183
- display: Boolean
184
- },
185
- inheritAttrs: false,
186
- data() {
187
- return {
188
- pressLoading: false,
189
- pressTableList: [],
190
- circularData: [],
191
- selectList: [],
192
- flowHeight: '',
193
- presetHeight: '',
194
- signHeight: '',
195
- splitReadingHeight: '',
196
- circularHeight: '',
197
- untreatedReadHeight: '',
198
- processedReadHeight: '',
199
- untreatedReadData: [],
200
- processedReadData: [],
201
- hasCircularReadWithdrawAuthority: false,
202
- currentPage: 1,
203
- pageSize: 20,
204
- flowListCount: {},
205
- currentUserHasPresetInfoAuth: false,
206
- pressThead: [
207
- {
208
- title: '催办节点',
209
- align: 'center',
210
- sortable: true,
211
- field: 'urge_item'
212
- },
213
- {
214
- title: '催办人名称',
215
- sortable: true,
216
- align: 'center',
217
- field: 'urge_man_name'
218
- },
219
- {
220
- title: '催办时间',
221
- sortable: true,
222
- align: 'center',
223
- field: 'urge_time'
224
- },
225
- {
226
- title: '被催办人名称',
227
- align: 'center',
228
- sortable: true,
229
- field: 'urged_man_name'
230
- }
231
- ],
232
- wfpendingid: '',
233
- showFileList: false,
234
- flowData: [],
235
- splitReadingData: [],
236
- presetData: [],
237
- signData: [],
238
- loading: '', //加载中
239
- preset_type: [], //预设类型
240
- showPress: false, //查看催办记录弹窗
241
- modify: false,
242
- formData: { reason: '' },
243
- formItemList: [
244
- {
245
- name: 'reason',
246
- label: '删除原因',
247
- type: 'textarea',
248
- placeholder: '请输入删除原因',
249
- rules: {
250
- required: true,
251
- message: '请输入删除原因',
252
- trigger: 'blur'
253
- },
254
- value: '',
255
- rows: 5
256
- },
257
- {
258
- type: 'submit',
259
- skin: 'lay-form-btns',
260
- contents: [
261
- {
262
- type: 'primary',
263
- plain: true,
264
- text: '保存',
265
- event: 'confirm'
266
- }
267
- ]
268
- }
269
- ],
270
- delLoading: false,
271
- showDel: false,
272
- attachmentPaperClipCssStyle: '',
273
- is_edit: [], //是否可编辑
274
- flowTableInfo: {
275
- adjunctCode: '',
276
- hasAgent: '1' //是否展示代办人 1:展示 0:不展示
277
- },
278
- show: false,
279
- taskReadName: '', //非流程列表名称
280
- options: [
281
- { label: '时间排序', value: '1' },
282
- { label: '部门排序', value: '2' },
283
- { label: '树形排序', value: '3' }
284
- ],
285
- isShort: 0, //是否隐藏筛选
286
- viewType: '1', //排序方式
287
- flowTableList: [], //流程列表
288
- fyTableList: [], //分阅列表
289
- showSuggest: 'all', //筛选显示数据
290
- presetInfoListHiddenColumns: '', //隐藏表格展示数据
291
- canDelete: false, //是否展示操作按钮
292
- historyId: '',
293
- sidx: '',
294
- sord: '',
295
- total: 0
296
- };
297
- },
298
- watch: {
299
- flowViewType:{
300
- handler(val) {
301
- if(val){
302
- this.loading = util.loading(this.$loading, '加载中...');
303
- this.getFlowList(val);
304
- }
305
- },
306
- deep:true,
307
- immediate:true
308
- }
309
- },
310
-
311
- computed: {
312
- toolbars() {
313
- return {
314
- flow: [
315
- {
316
- type: 'text',
317
- contents: '流程列表'
318
- },
319
- {
320
- type: 'search',
321
- contents: [
322
- {
323
- name: 'showSuggest',
324
- type: 'radio',
325
- changeSearch: true,
326
- data: [
327
- {
328
- value: 'all',
329
- name: '显示全部',
330
- checked: true
331
- },
332
- { value: 'have', name: '显示已填意见' }
333
- ],
334
- events: {
335
- change: (key, value) => {
336
- this.handleChange(key, value);
337
- }
338
- }
339
- },
340
- {
341
- type: 'select',
342
- placeholder: '请选择',
343
- name: 'viewType',
344
- width: '140px',
345
- changeSearch: true,
346
- events: {
347
- change: (key, value) => {
348
- this.handleChange(key, value);
349
- }
350
- },
351
- data: [
352
- {
353
- value: 1,
354
- selected: true,
355
- name: '时间排序'
356
- },
357
- {
358
- value: 2,
359
- name: '部门排序'
360
- },
361
- {
362
- value: 3,
363
- name: '树形排序'
364
- }
365
- ]
366
- }
367
- ]
368
- }
369
- ],
370
- preset: [
371
- {
372
- type: 'text',
373
- contents: '预设列表'
374
- }
375
- ],
376
- sign: [
377
- {
378
- type: 'button',
379
- contents: [
380
- {
381
- text: '生成处理签',
382
- type: 'primary'
383
- }
384
- ]
385
- }
386
- ],
387
- splitReading: [
388
- {
389
- type: 'text',
390
- contents:
391
- (this.taskReadName ? this.taskReadName : '非流程') + '列表'
392
- }
393
- ],
394
- circular: [
395
- {
396
- type: 'text',
397
- contents: '传阅列表'
398
- }
399
- ],
400
- untreatedRead: [
401
- {
402
- type: 'text',
403
- contents: '未处理分阅列表'
404
- },
405
- {
406
- type: 'button',
407
- contents: [
408
- {
409
- text: '撤销分阅',
410
- fun: 'recallRead'
411
- }
412
- ]
413
- }
414
- ],
415
- processedRead: [
416
- {
417
- type: 'text',
418
- contents: '已处理分阅列表'
419
- }
420
- ]
421
- // Reading situation
422
- };
423
- },
424
- pageInfo() {
425
- return {
426
- pageNum: this.currentPage,
427
- pageSize: this.pageSize,
428
- totalCount: this.total
429
- };
430
- },
431
- theads() {
432
- const _that = this;
433
- let newThead = {
434
- flow: [
435
- {
436
- label: '经办部门',
437
- field: 'deptid',
438
- align: 'center',
439
- key: 'jbbm',
440
- showOverflowTooltip: true,
441
- width: this.theadWidth.deptid || 150,
442
- render: (h, params) => {
443
- return h(
444
- 'span',
445
- {},
446
- params.row.doDeptName
447
- ? params.row.doDeptName
448
- : params.row.deptName
449
- );
450
- }
451
- },
452
- {
453
- label: '步骤',
454
- field: 'itemname',
455
- align: 'center',
456
- key: 'bz',
457
- showOverflowTooltip: true,
458
- width: this.theadWidth.itemname || 110
459
- },
460
- {
461
- label: '办理人',
462
- field: 'userName',
463
- align: 'center',
464
- key: 'blr',
465
- showOverflowTooltip: true,
466
- width: this.theadWidth.userName || 110
467
- },
468
- {
469
- label: '办理人部门',
470
- field: 'deptName',
471
- align: 'center',
472
- showOverflowTooltip: true,
473
- key: 'blrbm',
474
- width: this.theadWidth.deptName || 110
475
- },
476
- {
477
- label: '状态',
478
- field: 'pendstate',
479
- key: 'zt',
480
- align: 'center',
481
- showOverflowTooltip: true,
482
- width: this.theadWidth.pendstate || 80,
483
- render: (h, params) => {
484
- return h('span', {
485
- style: {
486
- color:
487
- params.row.pendstate == 0 || params.row.pendstate == 3
488
- ? 'red'
489
- : params.row.pendstate == 1
490
- ? 'green'
491
- : 'deepskyblue'
492
- },
493
- domProps: { innerHTML: params.row.querykeywords }
494
- });
495
- }
496
- },
497
- {
498
- label: '办理意见',
499
- field: 'doresult',
500
- align: 'center',
501
- width: this.theadWidth.doresult,
502
- showOverflowTooltip: true,
503
- key: 'blyj',
504
- render: (h, params) => {
505
- if (
506
- params.row.doresult &&
507
- (params.row.doresult.startsWith('http') ||
508
- params.row.doresult.startsWith('https'))
509
- ) {
510
- return h('img', {
511
- attrs: { src: params.row.doresult },
512
- style: { width: '100px', height: '100px' }
513
- });
514
- } else {
515
- return h('span', {}, [
516
- params.row.doresult
517
- ? params.row.doresult + (params.row.handleInfo ? '&' : '')
518
- : '',
519
- h(
520
- 'span',
521
- { style: { color: '#A5A5A5', marginLeft: '2px' } },
522
- params.row.handleInfo || ''
523
- )
524
- ]);
525
- }
526
- }
527
- },
528
- {
529
- label: '验签',
530
- field: 'authTypeStr',
531
- align: 'center',
532
- key: 'yq',
533
- showOverflowTooltip: true,
534
- width: this.theadWidth.authTypeStr || 70,
535
- render: (h, params) => {
536
- return h(
537
- 'span',
538
- { style: { color: 'deepskyblue' } },
539
- params.row.authTypeStr
540
- );
541
- }
542
- },
543
- {
544
- label: '附件',
545
- key: 'fj',
546
- field: 'hasAdjunct',
547
- align: 'center',
548
- showOverflowTooltip: true,
549
- width: this.theadWidth.hasAdjunct || 70,
550
- render: (h, params) => {
551
- if (params.row.hasAdjunct) {
552
- return h('span', {
553
- style: _that.attachmentPaperClipCssStyle
554
- ? _that.attachmentPaperClipCssStyle
555
- : { color: 'red', fontSize: '20px' },
556
- class: 'iconfont es-icon-fujian'
557
- });
558
- } else {
559
- return h('span', {}, '');
560
- }
561
- }
562
- },
563
- {
564
- label: '时间',
565
- field: 'doetime',
566
- align: 'center',
567
- key: 'sj',
568
- showOverflowTooltip: true,
569
- width: this.theadWidth.doetime || 150,
570
- render: (h, params) => {
571
- return h(
572
- 'span',
573
- {},
574
- params.row.doetime
575
- ? util.formatDate(params.row.doetime, 'yyyy-MM-dd HH:mm')
576
- : ''
577
- );
578
- }
579
- },
580
- {
581
- label: '代办人',
582
- field: 'douserid',
583
- align: 'center',
584
- key: 'dbr',
585
- showOverflowTooltip: true,
586
- width: this.theadWidth.douserid || 80,
587
- hide: _that.flowTableInfo.hasAgent != '1'
588
- },
589
- {
590
- label: '催办',
591
- field: 'pressTimes',
592
- align: 'center',
593
- key: 'cb',
594
- showOverflowTooltip: true,
595
- width: this.theadWidth.pressTimes || 150,
596
- render: (h, params) => {
597
- return h(
598
- 'span',
599
- { style: 'color:deepskyblue;cursor: pointer;' },
600
- params.row.pressTimes
601
- );
602
- }
603
- },
604
- {
605
- title: '操作',
606
- type: 'handle',
607
- width: this.modify ? '130' : '100',
608
- template: '',
609
- hide: this.hideBtn,
610
- events: [
611
- {
612
- text: '删除',
613
- rules: (rows) => {
614
- return rows.canDelete;
615
- }
616
- }
617
- // {
618
- // text: '修改',
619
- // rules: (rows) => {
620
- // return this.modify && rows.pendstate == 2;
621
- // }
622
- // }
623
- ]
624
- }
625
- ],
626
- preset: this.thead,
627
- splitReading: [
628
- {
629
- label: '经办部门',
630
- field: 'deptid',
631
- key: 'jbbm',
632
- align: 'center',
633
- showOverflowTooltip: true,
634
- width: this.theadWidth.deptid || 150
635
- },
636
- {
637
- label: '步骤',
638
- field: 'itemname',
639
- align: 'center',
640
- key: 'bz',
641
- showOverflowTooltip: true,
642
- width: this.theadWidth.itemname || 110
643
- },
644
- {
645
- label: '办理人',
646
- field: 'userName',
647
- align: 'center',
648
- key: 'blr',
649
- showOverflowTooltip: true,
650
- width: this.theadWidth.userName || 110
651
- },
652
- {
653
- label: '状态',
654
- field: 'pendstate',
655
- align: 'center',
656
- key: 'zt',
657
- showOverflowTooltip: true,
658
- width: this.theadWidth.pendstate || 80,
659
- render: (h, params) => {
660
- return h('span', {
661
- style: {
662
- color:
663
- params.row.pendstate == 0 || params.row.pendstate == 3
664
- ? 'red'
665
- : params.row.pendstate == 1
666
- ? 'green'
667
- : 'deepskyblue'
668
- },
669
- domProps: { innerHTML: params.row.querykeywords }
670
- });
671
- }
672
- },
673
- {
674
- label: '办理意见',
675
- field: 'doresult',
676
- align: 'center',
677
- key: 'blyj',
678
- width: this.theadWidth.doresult,
679
- showOverflowTooltip: true,
680
- render: (h, params) => {
681
- if (
682
- params.row.doresult &&
683
- (params.row.doresult.startsWith('http') ||
684
- params.row.doresult.startsWith('https'))
685
- ) {
686
- return h('img', {
687
- attrs: { src: params.row.doresult },
688
- style: { width: '100px', height: '100px' }
689
- });
690
- } else {
691
- return h('span', {}, [
692
- params.row.doresult
693
- ? params.row.doresult + (params.row.handleInfo ? '&' : '')
694
- : '',
695
- h(
696
- 'span',
697
- { style: { color: '#A5A5A5', marginLeft: '2px' } },
698
- params.row.handleInfo || ''
699
- )
700
- ]);
701
- }
702
- }
703
- },
704
- {
705
- label: '验签',
706
- field: 'authTypeStr',
707
- align: 'center',
708
- key: 'yq',
709
- showOverflowTooltip: true,
710
- width: this.theadWidth.authTypeStr || 70,
711
- render: (h, params) => {
712
- return h(
713
- 'span',
714
- { style: { color: 'deepskyblue' } },
715
- params.row.authTypeStr
716
- );
717
- }
718
- },
719
- {
720
- label: '附件',
721
- field: 'hasAdjunct',
722
- align: 'center',
723
- key: 'fj',
724
- showOverflowTooltip: true,
725
- width: this.theadWidth.hasAdjunct || 70,
726
- render: (h, params) => {
727
- if (params.row.hasAdjunct) {
728
- return h('span', {
729
- style: _that.attachmentPaperClipCssStyle
730
- ? _that.attachmentPaperClipCssStyle
731
- : { color: 'red', fontSize: '20px' },
732
- class: 'iconfont es-icon-fujian'
733
- });
734
- } else {
735
- return h('span', {}, '');
736
- }
737
- }
738
- },
739
- {
740
- label: '时间',
741
- field: 'doetime',
742
- align: 'center',
743
- key: 'sj',
744
- showOverflowTooltip: true,
745
- width: this.theadWidth.doetime || 150,
746
- render: (h, params) => {
747
- return h(
748
- 'span',
749
- {},
750
- params.row.doetime
751
- ? util.formatDate(params.row.doetime, 'yyyy-MM-dd HH:mm')
752
- : ''
753
- );
754
- }
755
- },
756
- {
757
- label: '代办人',
758
- field: 'douserid',
759
- align: 'center',
760
- key: 'dbr',
761
- showOverflowTooltip: true,
762
- width: this.theadWidth.douserid || 80,
763
- hide: _that.flowTableInfo.hasAgent != '1'
764
- },
765
- {
766
- label: '催办',
767
- field: 'pressTimes',
768
- align: 'center',
769
- key: 'cb',
770
- showOverflowTooltip: true,
771
- width: this.theadWidth.pressTimes || 150,
772
- render: (h, params) => {
773
- return h(
774
- 'span',
775
- { style: 'color:deepskyblue;cursor: pointer;' },
776
- params.row.pressTimes
777
- );
778
- }
779
- },
780
- {
781
- title: '操作',
782
- type: 'handle',
783
- width: '100',
784
- template: '',
785
- hide: this.hideBtn,
786
- events: [
787
- {
788
- text: '删除',
789
- rules: (rows) => {
790
- return rows.canDelete;
791
- }
792
- }
793
- ]
794
- }
795
- ],
796
- circular: [
797
- {
798
- label: '发起人',
799
- field: 'circularReadInitiatorName',
800
- align: 'center',
801
- key: 'fqr',
802
- showOverflowTooltip: true,
803
- width: this.theadWidth.circularReadInitiatorName || 150
804
- },
805
- {
806
- label: '传阅部门',
807
- field: 'circularReadOrgName',
808
- align: 'center',
809
- key: 'cybm',
810
- showOverflowTooltip: true,
811
- width: this.theadWidth.circularReadOrgName || 110
812
- },
813
- {
814
- label: '传阅人',
815
- field: 'userName',
816
- align: 'center',
817
- key: 'cyr',
818
- showOverflowTooltip: true,
819
- width: this.theadWidth.userName || 110
820
- },
821
- {
822
- label: '步骤',
823
- field: 'itemname',
824
- align: 'center',
825
- showOverflowTooltip: true,
826
- key: 'bz',
827
- width: this.theadWidth.itemname || 110
828
- },
829
- {
830
- label: '状态',
831
- field: 'pendstate',
832
- key: 'zt',
833
- align: 'center',
834
- showOverflowTooltip: true,
835
- width: this.theadWidth.pendstate || 140,
836
- render: (h, params) => {
837
- return h('span', {
838
- style: {
839
- color:
840
- params.row.pendstate == 0 || params.row.pendstate == 3
841
- ? 'red'
842
- : params.row.pendstate == 1
843
- ? 'green'
844
- : 'deepskyblue',
845
- cursor: this.hasCircularReadWithdrawAuthority
846
- ? 'pointer'
847
- : 'unset'
848
- },
849
- domProps: {
850
- innerHTML:
851
- params.row.querykeywords +
852
- (this.hasCircularReadWithdrawAuthority
853
- ? `<span style="color:#7AB0D5">(撤回)</span>`
854
- : '')
855
- }
856
- });
857
- }
858
- },
859
- {
860
- label: '送达时间',
861
- field: 'createtime',
862
- align: 'center',
863
- key: 'sdsj',
864
- showOverflowTooltip: true,
865
- width: this.theadWidth.createtime || 170
866
- },
867
- {
868
- label: '办理时间',
869
- field: 'doetime',
870
- align: 'center',
871
- key: 'blsj',
872
- showOverflowTooltip: true,
873
- width: this.theadWidth.doetime || 150
874
- },
875
-
876
- {
877
- label: '附件',
878
- key: 'fj',
879
- field: 'hasAdjunct',
880
- align: 'center',
881
- showOverflowTooltip: true,
882
- width: this.theadWidth.hasAdjunct || 70,
883
- render: (h, params) => {
884
- if (params.row.hasAdjunct) {
885
- return h('span', {
886
- style: _that.attachmentPaperClipCssStyle
887
- ? _that.attachmentPaperClipCssStyle
888
- : { color: 'red', fontSize: '20px' },
889
- class: 'iconfont es-icon-fujian'
890
- });
891
- } else {
892
- return h('span', {}, '');
893
- }
894
- }
895
- },
896
- {
897
- label: '提醒',
898
- field: 'pressTimes',
899
- align: 'center',
900
- key: 'tx',
901
- showOverflowTooltip: true,
902
- width: this.theadWidth.pressTimes || 150,
903
- render: (h, params) => {
904
- return h(
905
- 'span',
906
- { style: 'color:deepskyblue;cursor: pointer;' },
907
- params.row.pressTimes
908
- );
909
- }
910
- },
911
- {
912
- label: '阅结意见 & 说明',
913
- field: 'doresult',
914
- align: 'center',
915
- width: this.theadWidth.doresult,
916
- showOverflowTooltip: true,
917
- key: 'blyj',
918
- render: (h, params) => {
919
- if (
920
- params.row.doresult &&
921
- (params.row.doresult.startsWith('http') ||
922
- params.row.doresult.startsWith('https'))
923
- ) {
924
- return h('img', {
925
- attrs: { src: params.row.doresult },
926
- style: { width: '100px', height: '100px' }
927
- });
928
- } else {
929
- return h('span', {}, [
930
- params.row.doresult
931
- ? params.row.doresult + (params.row.handleInfo ? '&' : '')
932
- : '',
933
- h(
934
- 'span',
935
- { style: { color: '#A5A5A5', marginLeft: '2px' } },
936
- params.row.handleInfo || ''
937
- )
938
- ]);
939
- }
940
- }
941
- }
942
- ],
943
- untreatedRead: [
944
- {
945
- label: '步骤',
946
- field: 'itemid',
947
- align: 'center',
948
- key: 'bz',
949
- showOverflowTooltip: true,
950
- width: this.theadWidth.itemid || 110
951
- },
952
- {
953
- label: '办理人',
954
- field: 'userName',
955
- align: 'center',
956
- key: 'blr',
957
- showOverflowTooltip: true,
958
- width: this.theadWidth.userName
959
- },
960
- {
961
- label: '办理状态',
962
- field: 'pendstate',
963
- key: 'blzt',
964
- align: 'center',
965
- showOverflowTooltip: true,
966
- width: this.theadWidth.pendstate || 110,
967
- render: (h, params) => {
968
- return h('span', {
969
- style: {
970
- color:
971
- params.row.pendstate == 0 || params.row.pendstate == 3
972
- ? 'red'
973
- : params.row.pendstate == 1
974
- ? 'green'
975
- : 'deepskyblue'
976
- },
977
- domProps: { innerHTML: params.row.querykeywords }
978
- });
979
- }
980
- },
981
- {
982
- label: '创建时间',
983
- field: 'createtime',
984
- align: 'center',
985
- key: 'cjsj',
986
- showOverflowTooltip: true,
987
- width: this.theadWidth.createtime || 150,
988
- render: (h, params) => {
989
- return h(
990
- 'span',
991
- {},
992
- params.row.doetime
993
- ? util.formatDate(params.row.createtime, 'yyyy-MM-dd HH:mm')
994
- : ''
995
- );
996
- }
997
- }
998
- ],
999
- processedRead: [
1000
- {
1001
- label: '步骤',
1002
- field: 'itemid',
1003
- align: 'center',
1004
- key: 'bz',
1005
- showOverflowTooltip: true,
1006
- width: this.theadWidth.itemid || 110
1007
- },
1008
- {
1009
- label: '办理人',
1010
- field: 'userName',
1011
- align: 'center',
1012
- key: 'blr',
1013
- showOverflowTooltip: true,
1014
- width: this.theadWidth.userName
1015
- },
1016
- {
1017
- label: '办理状态',
1018
- field: 'pendstate',
1019
- key: 'blzt',
1020
- align: 'center',
1021
- showOverflowTooltip: true,
1022
- width: this.theadWidth.pendstate || 110,
1023
- render: (h, params) => {
1024
- return h('span', {
1025
- style: {
1026
- color:
1027
- params.row.pendstate == 0 || params.row.pendstate == 3
1028
- ? 'red'
1029
- : params.row.pendstate == 1
1030
- ? 'green'
1031
- : 'deepskyblue'
1032
- },
1033
- domProps: { innerHTML: params.row.querykeywords }
1034
- });
1035
- }
1036
- },
1037
- {
1038
- label: '办理时间',
1039
- field: 'doetime',
1040
- align: 'center',
1041
- key: 'blsj',
1042
- showOverflowTooltip: true,
1043
- width: this.theadWidth.doetime || 150,
1044
- render: (h, params) => {
1045
- return h(
1046
- 'span',
1047
- {},
1048
- params.row.doetime
1049
- ? util.formatDate(params.row.doetime, 'yyyy-MM-dd HH:mm')
1050
- : ''
1051
- );
1052
- }
1053
- },
1054
- {
1055
- label: '代办人',
1056
- field: 'douserid',
1057
- align: 'center',
1058
- key: 'dbr',
1059
- showOverflowTooltip: true,
1060
- width: this.theadWidth.douserid
1061
- },
1062
- {
1063
- label: '意见',
1064
- field: 'doresult',
1065
- align: 'center',
1066
- key: 'yj',
1067
- showOverflowTooltip: true,
1068
- width: this.theadWidth.doresult
1069
- }
1070
- ]
1071
- };
1072
- if (this.numbers) {
1073
- for (let key in newThead) {
1074
- newThead[key].unshift({
1075
- label: '序号',
1076
- field: 'sort',
1077
- align: 'center',
1078
- key: 'xh',
1079
- showOverflowTooltip: true,
1080
- width: 50
1081
- });
1082
- }
1083
- }
1084
- return newThead;
1085
- },
1086
- content() {
1087
- const _that = this;
1088
- let newContents = JSON.parse(JSON.stringify(this.contents));
1089
- if (this.contents.indexOf('circular') != -1) {
1090
- newContents = newContents.filter((item) => item != 'splitReading');
1091
- }
1092
- if (newContents.indexOf('readingSituation') != -1) {
1093
- newContents = ['untreatedRead', 'processedRead'];
1094
- }
1095
- let contents = newContents.map((item) => {
1096
- if (typeof item === 'string') {
1097
- let data = [];
1098
- if (_that.headFields.length > 0) {
1099
- _that.headFields.map((headFiled) => {
1100
- if (headFiled.showDefault) {
1101
- _that.theads[item].map((theadItem) => {
1102
- if (theadItem.field === headFiled.field) {
1103
- data.push({ ...theadItem, ...headFiled });
1104
- }
1105
- });
1106
- } else {
1107
- data.push(headFiled);
1108
- }
1109
- });
1110
- _that.theads[item].map((x) => {
1111
- if (x.type == 'handle') {
1112
- data.push(x);
1113
- }
1114
- });
1115
- }
1116
- return {
1117
- type: item,
1118
- checkbox: newContents.indexOf('untreatedRead') != -1,
1119
- toolbar: this.toolbars[item],
1120
- thead: data.length > 0 ? data : this.theads[item],
1121
- showFormBtn: false
1122
- };
1123
- } else {
1124
- if (!Object.prototype.hasOwnProperty.call(item, 'toolbar')) {
1125
- let toolbars = this.toolbars[item.type];
1126
- return { ...item, toolbars };
1127
- }
1128
- if (!Object.prototype.hasOwnProperty.call(item, 'thead')) {
1129
- let thead = this.theads[item.type];
1130
- return { ...item, thead };
1131
- }
1132
- return item;
1133
- }
1134
- });
1135
- return contents;
1136
- },
1137
- newToolbar() {
1138
- if (this.toolbar && this.toolbar.length > 0) {
1139
- return this.toolbar;
1140
- } else {
1141
- return [];
1142
- }
1143
- },
1144
- thead() {
1145
- let table = [
1146
- {
1147
- title: '步骤',
1148
- align: 'center',
1149
- width: this.theadWidth.nodeName || '100',
1150
- field: 'nodeName'
1151
- },
1152
- {
1153
- title: '预设办理人',
1154
- width: this.theadWidth.presetUserName || '120',
1155
- align: 'center',
1156
- field: 'presetUserName'
1157
- },
1158
- {
1159
- title: '是否可编辑',
1160
- key: 'sfkbj',
1161
- align: 'center',
1162
- width: this.theadWidth.isEdit || '100',
1163
- render: (h, params) => {
1164
- return h('span', this.getCodeValue(params.row.isEdit, 'is_edit'));
1165
- },
1166
- field: 'isEdit'
1167
- },
1168
- {
1169
- key: 'zt',
1170
- title: '状态',
1171
- width: this.theadWidth.statusName || '80',
1172
- align: 'center',
1173
- field: 'statusName'
1174
- },
1175
- {
1176
- title: '预设类型',
1177
- key: 'yslx',
1178
- width: this.theadWidth.presetType || '120',
1179
- align: 'center',
1180
- render: (h, params) => {
1181
- return h(
1182
- 'span',
1183
- this.getCodeValue(params.row.presetType, 'preset_type')
1184
- );
1185
- },
1186
- field: 'presetType'
1187
- },
1188
- {
1189
- title: '流程名称',
1190
- key: 'lcmc',
1191
- width: this.theadWidth.processDefName,
1192
- align: 'center',
1193
- field: 'processDefName'
1194
- },
1195
- {
1196
- title: '上一步骤',
1197
- key: 'sybz',
1198
- align: 'center',
1199
- width: this.theadWidth.lastNodeName,
1200
- field: 'lastNodeName'
1201
- },
1202
- {
1203
- title: '创建步骤',
1204
- key: 'cjbz',
1205
- align: 'center',
1206
- width: this.theadWidth.operationNodeName,
1207
- field: 'operationNodeName'
1208
- },
1209
- {
1210
- title: '创建人',
1211
- key: 'cjr',
1212
- width: this.theadWidth.creatorName || '120',
1213
- align: 'center',
1214
- field: 'creatorName'
1215
- },
1216
- {
1217
- title: '创建时间',
1218
- width: this.theadWidth.createTime || '150',
1219
- key: 'cjsj',
1220
- align: 'center',
1221
- render: (h, params) => {
1222
- return h(
1223
- 'span',
1224
- util.formatDate(params.row.createTime, 'yyyy-MM-dd HH:mm')
1225
- );
1226
- },
1227
- field: 'createTime'
1228
- },
1229
- {
1230
- title: '操作区域',
1231
- type: 'handle',
1232
- align: 'center',
1233
- width: '120',
1234
- events: [
1235
- {
1236
- text: '置为失效'
1237
- }
1238
- ]
1239
- }
1240
- ];
1241
- if (
1242
- this.presetInfoListHiddenColumns != undefined &&
1243
- this.presetInfoListHiddenColumns != ''
1244
- ) {
1245
- table = table.filter(
1246
- (items) => this.presetInfoListHiddenColumns.indexOf(items.key) == -1
1247
- );
1248
- }
1249
- if (!this.canDelete) table.splice(table.length - 1, 1);
1250
- return table;
1251
- }
1252
- },
1253
- async mounted() {
1254
- this.loading = util.loading(this.$loading, '加载中...');
1255
- if (this.contents.indexOf('readingSituation') != -1) {
1256
- await this.getFyListJson(1);
1257
- await this.getFyListJson(2);
1258
- this.getListCount(this.flowListCount);
1259
- this.show = true;
1260
- } else {
1261
- this.getFlowList();
1262
- }
1263
- this.getSysInfo('preset_type');
1264
- this.getSysInfo('is_edit');
1265
- this.getListInfo();
1266
- },
1267
-
1268
- methods: {
1269
- recallReadFun() {
1270
- const _that = this;
1271
- let pendingIds = _that.selectList.map((x) => x.id).join(',');
1272
- let params = {
1273
- url: taskReadWithDraw,
1274
- params: {
1275
- pendingIds
1276
- }
1277
- };
1278
- _that.loading = util.loading(_that.$loading, '撤销中...');
1279
- util.ajax(params).then(async (res) => {
1280
- _that.loading.close();
1281
- if (res.rCode == 0 || res.status == 'success') {
1282
- _that.$message.success('撤销成功!');
1283
- await _that.getFyListJson(1);
1284
- _that.getListCount(_that.flowListCount);
1285
- } else {
1286
- _that.$message.error(res.message);
1287
- }
1288
- });
1289
- },
1290
- recallRead() {
1291
- if (this.selectList.length == 0)
1292
- return this.$message.warning('请选择需要撤销的分阅');
1293
- this.$confirm('是否确认撤销选中的分阅?', '提示', {
1294
- confirmButtonText: '确定',
1295
- cancelButtonText: '取消',
1296
- type: 'warning'
1297
- }).then(() => {
1298
- this.recallReadFun();
1299
- });
1300
- },
1301
- handleSelectionChange(val) {
1302
- this.selectList = val;
1303
- },
1304
- handledraw(pendedHistoryId) {
1305
- let params = {
1306
- url: circularReadWithdraw,
1307
- params: { pendedHistoryId }
1308
- };
1309
- this.$confirm('是否确定撤回当前传阅', {
1310
- confirmButtonText: '确定',
1311
- cancelButtonText: '取消',
1312
- type: 'warning'
1313
- })
1314
- .then(() => {
1315
- this.loading = util.loading(this.$loading, '撤回中...');
1316
- util.ajax(params).then((res) => {
1317
- this.loading.close();
1318
- if (res.rCode == 0) {
1319
- this.$message({
1320
- message: '撤回成功',
1321
- type: 'success'
1322
- });
1323
- this.getCircularReadList();
1324
- }
1325
- });
1326
- // _that.subMit(res.results,type)
1327
- })
1328
- .catch(() => {});
1329
- },
1330
- getCircularReadList() {
1331
- const _that = this;
1332
- let params = {
1333
- url: pendedhistoryListWithCircularReadJson,
1334
- params: { apprecordid: _that.businessId }
1335
- };
1336
- util.ajax(params).then((res) => {
1337
- if (res.status == 'success' || res.rCode == 0) {
1338
- _that.circularData = res.data.fyHistoryList;
1339
- _that.circularData.map((x, i) => {
1340
- x.sort = i + 1;
1341
- });
1342
- _that.hasCircularReadWithdrawAuthority =
1343
- res.data.hasCircularReadWithdrawAuthority;
1344
- _that.$nextTick(() => {
1345
- _that.getListCount(_that.flowListCount);
1346
- });
1347
- }
1348
- });
1349
- },
1350
- returnData(type) {
1351
- switch (type) {
1352
- case 'preset':
1353
- this.flowListCount.preset = this.presetData.length;
1354
- this.flowListCount.presetData = this.presetData;
1355
- return this.presetData;
1356
- case 'sign':
1357
- this.flowListCount.sign = this.signData.length;
1358
- this.flowListCount.signData = this.signData;
1359
- return this.signData;
1360
- case 'splitReading':
1361
- this.flowListCount.splitReading = this.splitReadingData.length;
1362
- this.flowListCount.splitReadingData = this.splitReadingData;
1363
- return this.splitReadingData;
1364
- case 'circular':
1365
- this.flowListCount.circular = this.circularData.length;
1366
- this.flowListCount.circularData = this.circularData;
1367
- return this.circularData;
1368
- case 'untreatedRead':
1369
- this.flowListCount.untreatedRead = this.untreatedReadData.length;
1370
- this.flowListCount.untreatedReadData = this.untreatedReadData;
1371
- return this.untreatedReadData;
1372
- case 'processedRead':
1373
- this.flowListCount.processedRead = this.processedReadData.length;
1374
- this.flowListCount.processedReadData = this.processedReadData;
1375
- return this.processedReadData;
1376
- default:
1377
- this.flowListCount.flow = this.flowData.length;
1378
- this.flowListCount.flowData = this.flowData;
1379
- return this.flowData;
1380
- }
1381
- },
1382
- handleCellClick(row, column) {
1383
- if (column.property == 'hasAdjunct' && row.hasAdjunct) {
1384
- this.showFile(row.wfpendingid);
1385
- } else if (column.property == 'pressTimes') {
1386
- this.goPress(row.id);
1387
- } else if (
1388
- column.property == 'pendstate' &&
1389
- this.hasCircularReadWithdrawAuthority
1390
- ) {
1391
- this.handledraw(row.id);
1392
- }
1393
- },
1394
- handleBtnClick(data) {
1395
- // recallRead
1396
- const { handle, row } = data;
1397
- if (handle.text == '删除') {
1398
- this.del(row.id);
1399
- } else if (handle.fun == 'recallRead') {
1400
- this[handle.fun]();
1401
- }
1402
- },
1403
- /**
1404
- * handleFormSubmit
1405
- * @desc:删除节点点击事件
1406
- * @param {Object} formData 点击删除的form数据
1407
- * @author liufan
1408
- * @date 2022年11月29日
1409
- **/
1410
- handleFormSubmit(formData) {
1411
- this.delLoading = true;
1412
- let params = {
1413
- url: deleteFlow,
1414
- method: 'POST',
1415
- data: { id: this.historyId, reason: formData.reason }
1416
- };
1417
- util
1418
- .ajax(params)
1419
- .then((res) => {
1420
- const { status, message } = res;
1421
- this.delLoading = false;
1422
- if (status === 'success') {
1423
- this.$message.success('删除成功');
1424
- this.showDel = false;
1425
- this.handleChange();
1426
- } else {
1427
- this.$message.error(message || '系统错误,请联系管理员!');
1428
- }
1429
- })
1430
- .catch((err) => {
1431
- this.delLoading = false;
1432
- if (err.message && err.message !== 'canceled') {
1433
- this.$message.error(err.message);
1434
- }
1435
- });
1436
- },
1437
- /**
1438
- * del
1439
- * @desc:展示删除弹窗
1440
- * @param {String} id 当前点击数据id
1441
- * @author liufan
1442
- * @date 2022年11月29日
1443
- **/
1444
- del(id) {
1445
- this.historyId = id;
1446
- this.showDel = true;
1447
- },
1448
- /**
1449
- * handleCurrentChange
1450
- * @desc:监听页码变化
1451
- * @param {String} val 当前页
1452
- * @author liufan
1453
- * @date 2022年11月29日
1454
- **/
1455
- handleCurrentChange(val) {
1456
- this.currentPage = val;
1457
- this.getPressList();
1458
- },
1459
- /**
1460
- * handleSizeChange
1461
- * @desc:监听每页数据显示数量变化
1462
- * @param {String} val 每页展示数量
1463
- * @author liufan
1464
- * @date 2022年11月29日
1465
- **/
1466
- handleSizeChange(val) {
1467
- this.pageSize = val;
1468
- this.getPressList();
1469
- },
1470
- /**
1471
- * sortChange
1472
- * @desc:监听排序变化
1473
- * @param {Object} info 需要排序的字段及排序方式
1474
- * @author liufan
1475
- * @date 2022年11月29日
1476
- **/
1477
- sortChange(info) {
1478
- let { prop, order } = info;
1479
- this.sidx = prop;
1480
- this.sord = order.replace('ending', '');
1481
- this.getPressList();
1482
- },
1483
- /**
1484
- * getPressList
1485
- * @desc:催办列表数据
1486
- * @author liufan
1487
- * @date 2022年11月29日
1488
- **/
1489
- getPressList() {
1490
- const { historyId, pageSize, sidx, sord, currentPage } = this;
1491
- this.pressLoading = true;
1492
- let params = {
1493
- url: pressListJson,
1494
- params: { historyId },
1495
- method: 'POST',
1496
- data: { page: currentPage, rows: pageSize, sidx, sord, historyId }
1497
- };
1498
- util
1499
- .ajax(params)
1500
- .then((res) => {
1501
- this.pressTableList = res.data;
1502
- this.total = res.totalrecords;
1503
- this.pressLoading = false;
1504
- })
1505
- .catch((err) => {
1506
- this.pressLoading = false;
1507
- if (err.message && err.message !== 'canceled') {
1508
- this.$message.error(err.message);
1509
- }
1510
- });
1511
- },
1512
- /**
1513
- * goPress
1514
- * @desc:催办列表查看
1515
- * @param {String} id 催办列表id
1516
- * @author liufan
1517
- * @date 2022年11月29日
1518
- **/
1519
- goPress(id) {
1520
- this.historyId = id;
1521
- this.showPress = true;
1522
- this.getPressList();
1523
- },
1524
- /**
1525
- * showFile
1526
- * @desc:附件查看
1527
- * @param {String} ownId 附件id
1528
- * @author liufan
1529
- * @date 2022年11月29日
1530
- **/
1531
- showFile(ownId) {
1532
- this.wfpendingid = ownId;
1533
- this.showFileList = true;
1534
- },
1535
- /**
1536
- * handleChange
1537
- * @desc:切换排序方式
1538
- * @author liufan
1539
- * @date 2022年11月22日
1540
- **/
1541
- handleChange(key, value) {
1542
- if (value) {
1543
- this[key] = value;
1544
- }
1545
- // this.show = false;
1546
- this.loading = util.loading(this.$loading, '加载中...');
1547
- this.getFlowList();
1548
- },
1549
- async getFyListJson(type) {
1550
- let params = {
1551
- url: fyListJson,
1552
- params: {
1553
- appRecordId: this.businessId,
1554
- status: type
1555
- }
1556
- };
1557
- await util.ajax(params).then((res) => {
1558
- if (type == 1) {
1559
- this.untreatedReadData = res.data;
1560
- this.untreatedReadData.map((x, i) => {
1561
- x.sort = i + 1;
1562
- });
1563
- } else {
1564
- this.processedReadData = res.data;
1565
- this.processedReadData.map((x, i) => {
1566
- x.sort = i + 1;
1567
- });
1568
- }
1569
- });
1570
- },
1571
- /**
1572
- * getFlowList
1573
- * @desc:获取流程列表
1574
- * @author liufan
1575
- * @date 2022年11月22日
1576
- **/
1577
- getFlowList(type) {
1578
- let params = {
1579
- url: pendedhistoryListJson,
1580
- params: {
1581
- apprecordid: this.businessId,
1582
- pendingAttr: 0,
1583
- viewType:type || this.viewType,
1584
- showSuggest: this.showSuggest,
1585
- ...this.params
1586
- }
1587
- };
1588
- util
1589
- .ajax(params)
1590
- .then((res) => {
1591
- let {
1592
- status,
1593
- message,
1594
- data: {
1595
- adjunctCode,
1596
- wfHistoryList,
1597
- fyHistoryList,
1598
- hasAgent,
1599
- isShort,
1600
- modify,
1601
- taskReadName
1602
- }
1603
- } = res;
1604
- this.loading.close();
1605
- if (status == 'success') {
1606
- this.flowTableInfo.adjunctCode = adjunctCode;
1607
- this.flowTableInfo.hasAgent = hasAgent;
1608
- this.attachmentPaperClipCssStyle =
1609
- res.data.attachmentPaperClipCssStyle;
1610
- this.isShort = isShort;
1611
- this.taskReadName = taskReadName;
1612
- this.flowData = wfHistoryList;
1613
- this.flowData.map((x, i) => {
1614
- x.sort = i + 1;
1615
- if (!x.deptid) {
1616
- x.deptid = x.deptName;
1617
- }
1618
- });
1619
- this.splitReadingData = fyHistoryList;
1620
- this.splitReadingData.map((x, i) => {
1621
- x.sort = i + 1;
1622
- });
1623
- this.modify = modify;
1624
- this.show = true;
1625
- if (this.height == 'auto') {
1626
- this.$nextTick(() => {
1627
- this.content.map((x) => {
1628
- this[`${x.type}Height`] = this.$refs[x.type][0].offsetHeight;
1629
- });
1630
- });
1631
- }
1632
- if (this.contents.indexOf('circular') != -1) {
1633
- this.getCircularReadList();
1634
- } else {
1635
- this.$nextTick(() => {
1636
- this.getListCount(this.flowListCount);
1637
- });
1638
- }
1639
- } else {
1640
- this.$message.error(message || '系统错误,请联系管理员!');
1641
- }
1642
- })
1643
- .catch((err) => {
1644
- this.loading.close();
1645
- if (err.message && err.message !== 'canceled') {
1646
- this.$message.error(err.message);
1647
- }
1648
- this.show = true;
1649
- });
1650
- },
1651
- /**
1652
- * handleClick
1653
- * @desc:表单点击事件
1654
- * @param {Object} val 当前点击行数据及按钮
1655
- * @author liufan
1656
- * @date 2022年11月10日
1657
- **/
1658
- handleClick(val) {
1659
- const {
1660
- handle: { text },
1661
- row: { id, status }
1662
- } = val;
1663
- if (text === '置为失效') {
1664
- if (status == 0) {
1665
- this.$confirm('您确定要置为失效吗?')
1666
- .then(() => {
1667
- this.loading = util.loading(this.$loading, '提交中...');
1668
- let param = {
1669
- url: deletePresetInfo,
1670
- headers: { Accept: 'application/json,text/plain' },
1671
- method: 'post',
1672
- params: { id }
1673
- };
1674
- util
1675
- .ajax(param)
1676
- .then((res) => {
1677
- const { status, message } = res;
1678
- this.loading.close();
1679
- if (status === 'success') {
1680
- this.$message.success('操作成功');
1681
- this.getListInfo();
1682
- } else {
1683
- this.$message.error(message || '系统错误,请联系管理员!');
1684
- }
1685
- })
1686
- .catch((err) => {
1687
- this.loading.close();
1688
- if (err.message && err.message !== 'canceled') {
1689
- this.$message.error(err.message);
1690
- }
1691
- });
1692
- })
1693
- .catch((e) => {
1694
- // on cancel
1695
- });
1696
- } else {
1697
- this.$message.warning('当前数据已为失效状态');
1698
- }
1699
- }
1700
- },
1701
- /**
1702
- * getCodeValue
1703
- * @desc:获取代码表过滤后的值
1704
- * @param {String} value 展示数据的代码值
1705
- * @param {String} type 代码表类型
1706
- * @author liufan
1707
- * @date 2022年11月10日
1708
- **/
1709
- getCodeValue(value, type) {
1710
- let val = this[type].filter((item) => item.cciValue == value);
1711
- return val[0].shortName;
1712
- },
1713
- /**
1714
- * getSysInfo
1715
- * @desc:获取代码表
1716
- * @param {String} code 编码code值
1717
- * @author liufan
1718
- * @date 2022年11月10日
1719
- **/
1720
- getSysInfo(code) {
1721
- let params = {
1722
- url: findCodeValues,
1723
- params: { ccCode: code }
1724
- };
1725
- util
1726
- .ajax(params)
1727
- .then((res) => {
1728
- const { status, message, data } = res;
1729
- if (status == 'success') {
1730
- this[code] = data;
1731
- } else {
1732
- this.$message.error(message || '系统错误,请联系管理员!');
1733
- }
1734
- })
1735
- .catch((e) => {});
1736
- },
1737
- /**
1738
- * getListInfo
1739
- * @desc:获取预设列表数据
1740
- * @author liufan
1741
- * @date 2022年11月10日
1742
- **/
1743
- getListInfo() {
1744
- let param = {
1745
- url: toPresetInfoListIndex,
1746
- params: { apprecordid: this.businessId }
1747
- };
1748
- util
1749
- .ajax(param)
1750
- .then((res) => {
1751
- let {
1752
- status,
1753
- message,
1754
- data: {
1755
- presetInfoList,
1756
- presetInfoListHiddenColumns,
1757
- canDelete,
1758
- currentUserHasPresetInfoAuth
1759
- }
1760
- } = res;
1761
- this.loading.close();
1762
- if (status == 'success') {
1763
- if (presetInfoList) {
1764
- this.presetData = presetInfoList;
1765
- this.presetData.map((x, i) => {
1766
- x.sort = i + 1;
1767
- });
1768
- }
1769
- this.presetInfoListHiddenColumns = presetInfoListHiddenColumns;
1770
- this.currentUserHasPresetInfoAuth = currentUserHasPresetInfoAuth;
1771
- this.canDelete = canDelete;
1772
- } else {
1773
- this.$message.error(message || '系统错误,请联系管理员!');
1774
- }
1775
- })
1776
- .catch((err) => {
1777
- this.loading.close();
1778
- if (err.message && err.message !== 'canceled') {
1779
- this.$message.error(err.message);
1780
- }
1781
- });
1782
- }
1783
- }
1784
- };
1785
- </script>
1786
-
1787
- <style></style>
1
+ <template>
2
+ <div class="es-flow-list">
3
+ <div
4
+ class="es-flow-list-item"
5
+ v-for="(item, index) in content"
6
+ :key="index"
7
+ v-show="
8
+ (item.type == 'splitReading' &&
9
+ splitReadingData &&
10
+ splitReadingData.length > 0) ||
11
+ (item.type == 'preset' &&
12
+ presetData &&
13
+ presetData.length > 0 &&
14
+ currentUserHasPresetInfoAuth) ||
15
+ (item.type != 'splitReading' && item.type != 'preset')
16
+ "
17
+ >
18
+ <div
19
+ class="es-flow-list-box"
20
+ :ref="item.type"
21
+ :style="`position:${height == 'auto' ? 'unset' : 'absolute'}`"
22
+ >
23
+ <es-data-table
24
+ v-if="show"
25
+ :class="{ 'es-flow-group-data-table': item.type !== 'sign' }"
26
+ :display="display"
27
+ @cell-click="handleCellClick"
28
+ :full="height !== 'auto'"
29
+ v-bind="item"
30
+ :data="
31
+ showDoresult
32
+ ? returnData(item.type).filter(
33
+ (x) => x.doresult || x.handleInfo || x.pendstate != 2
34
+ )
35
+ : returnData(item.type)
36
+ "
37
+ @btn-click="handleBtnClick"
38
+ @selection-change="handleSelectionChange"
39
+ ></es-data-table>
40
+ </div>
41
+ </div>
42
+ <es-dialog
43
+ append-to-body
44
+ :close-on-click-modal="false"
45
+ title="查看附件"
46
+ :visible.sync="showFileList"
47
+ v-if="showFileList"
48
+ >
49
+ <FileList
50
+ :ownId="wfpendingid"
51
+ :code="flowTableInfo.adjunctCode"
52
+ :deleted="false"
53
+ :disabled="true"
54
+ @cancel="showFileList = false"
55
+ />
56
+ </es-dialog>
57
+ <es-dialog
58
+ append-to-body
59
+ :close-on-click-modal="false"
60
+ title="查看催办记录"
61
+ :visible.sync="showPress"
62
+ height="500px"
63
+ v-if="showPress"
64
+ >
65
+ <div style="height: 400px" v-loading="pressLoading">
66
+ <es-data-table
67
+ v-if="show"
68
+ :data="pressTableList"
69
+ :thead="pressThead"
70
+ @page-size-change="handleSizeChange"
71
+ @page-current-change="handleCurrentChange"
72
+ stripe
73
+ full
74
+ style="width: 100%"
75
+ @sort-change="sortChange"
76
+ :page="pageInfo"
77
+ />
78
+ </div>
79
+ </es-dialog>
80
+ <es-dialog
81
+ append-to-body
82
+ :close-on-click-modal="false"
83
+ title="删除"
84
+ :visible.sync="showDel"
85
+ height="auto"
86
+ class="del-flow"
87
+ v-if="showDel"
88
+ >
89
+ <es-form
90
+ v-loading="delLoading"
91
+ :model="formData"
92
+ :contents="formItemList"
93
+ @submit="handleFormSubmit"
94
+ >
95
+ </es-form>
96
+ </es-dialog>
97
+ </div>
98
+ </template>
99
+
100
+ <script>
101
+ import {
102
+ findCodeValues,
103
+ deletePresetInfo,
104
+ pendedhistoryListJson,
105
+ toPresetInfoListIndex,
106
+ pressListJson,
107
+ pendedhistoryListWithCircularReadJson,
108
+ deleteFlow,
109
+ taskReadWithDraw,
110
+ fyListJson,
111
+ circularReadWithdraw
112
+ } from 'eoss-ui/src/config/api';
113
+ import FileList from '../../flow/src/component/FileList.vue';
114
+ import util from 'eoss-ui/src/utils/util';
115
+ export default {
116
+ name: 'EsFlowList',
117
+ components: {
118
+ [FileList.name]: FileList
119
+ },
120
+ props: {
121
+ businessId: {
122
+ type: String,
123
+ default: ''
124
+ },
125
+ getListCount: {
126
+ type: Function,
127
+ default: () => {}
128
+ },
129
+ flowViewType:{
130
+ type: [Number,String],
131
+ default: 0
132
+ },
133
+ hide: {
134
+ type: String,
135
+ default: ''
136
+ },
137
+ hideBtn: {
138
+ type: Boolean,
139
+ default: false
140
+ },
141
+ params: {
142
+ type: Object,
143
+ default: () => {
144
+ return {};
145
+ }
146
+ },
147
+ toolbar: {
148
+ type: Array,
149
+ default: () => []
150
+ },
151
+ headFields: {
152
+ type: Array,
153
+ default: () => []
154
+ },
155
+ contents: {
156
+ type: Array,
157
+ default() {
158
+ return ['flow', 'splitReading', 'preset'];
159
+ }
160
+ },
161
+ numbers: {
162
+ type: Boolean,
163
+ default: false
164
+ },
165
+ height: {
166
+ type: String,
167
+ default: ''
168
+ },
169
+ showDoresult: {
170
+ type: Boolean,
171
+ default: false
172
+ },
173
+ theadWidth: {
174
+ type: Object,
175
+ default: () => {
176
+ return {};
177
+ }
178
+ },
179
+ type: {
180
+ type: String,
181
+ default: ''
182
+ },
183
+ display: Boolean
184
+ },
185
+ inheritAttrs: false,
186
+ data() {
187
+ return {
188
+ pressLoading: false,
189
+ pressTableList: [],
190
+ circularData: [],
191
+ selectList: [],
192
+ flowHeight: '',
193
+ presetHeight: '',
194
+ signHeight: '',
195
+ splitReadingHeight: '',
196
+ circularHeight: '',
197
+ untreatedReadHeight: '',
198
+ processedReadHeight: '',
199
+ untreatedReadData: [],
200
+ processedReadData: [],
201
+ hasCircularReadWithdrawAuthority: false,
202
+ currentPage: 1,
203
+ pageSize: 20,
204
+ flowListCount: {},
205
+ currentUserHasPresetInfoAuth: false,
206
+ pressThead: [
207
+ {
208
+ title: '催办节点',
209
+ align: 'center',
210
+ sortable: true,
211
+ field: 'urge_item'
212
+ },
213
+ {
214
+ title: '催办人名称',
215
+ sortable: true,
216
+ align: 'center',
217
+ field: 'urge_man_name'
218
+ },
219
+ {
220
+ title: '催办时间',
221
+ sortable: true,
222
+ align: 'center',
223
+ field: 'urge_time'
224
+ },
225
+ {
226
+ title: '被催办人名称',
227
+ align: 'center',
228
+ sortable: true,
229
+ field: 'urged_man_name'
230
+ }
231
+ ],
232
+ wfpendingid: '',
233
+ showFileList: false,
234
+ flowData: [],
235
+ splitReadingData: [],
236
+ presetData: [],
237
+ signData: [],
238
+ loading: '', //加载中
239
+ preset_type: [], //预设类型
240
+ showPress: false, //查看催办记录弹窗
241
+ modify: false,
242
+ formData: { reason: '' },
243
+ formItemList: [
244
+ {
245
+ name: 'reason',
246
+ label: '删除原因',
247
+ type: 'textarea',
248
+ placeholder: '请输入删除原因',
249
+ rules: {
250
+ required: true,
251
+ message: '请输入删除原因',
252
+ trigger: 'blur'
253
+ },
254
+ value: '',
255
+ rows: 5
256
+ },
257
+ {
258
+ type: 'submit',
259
+ skin: 'lay-form-btns',
260
+ contents: [
261
+ {
262
+ type: 'primary',
263
+ plain: true,
264
+ text: '保存',
265
+ event: 'confirm'
266
+ }
267
+ ]
268
+ }
269
+ ],
270
+ delLoading: false,
271
+ showDel: false,
272
+ attachmentPaperClipCssStyle: '',
273
+ is_edit: [], //是否可编辑
274
+ flowTableInfo: {
275
+ adjunctCode: '',
276
+ hasAgent: '1' //是否展示代办人 1:展示 0:不展示
277
+ },
278
+ show: false,
279
+ taskReadName: '', //非流程列表名称
280
+ options: [
281
+ { label: '时间排序', value: '1' },
282
+ { label: '部门排序', value: '2' },
283
+ { label: '树形排序', value: '3' }
284
+ ],
285
+ isShort: 0, //是否隐藏筛选
286
+ viewType: '1', //排序方式
287
+ flowTableList: [], //流程列表
288
+ fyTableList: [], //分阅列表
289
+ showSuggest: 'all', //筛选显示数据
290
+ presetInfoListHiddenColumns: '', //隐藏表格展示数据
291
+ canDelete: false, //是否展示操作按钮
292
+ historyId: '',
293
+ sidx: '',
294
+ sord: '',
295
+ total: 0
296
+ };
297
+ },
298
+ watch: {
299
+ flowViewType:{
300
+ handler(val) {
301
+ if(val){
302
+ this.loading = util.loading(this.$loading, '加载中...');
303
+ this.getFlowList(val);
304
+ }
305
+ },
306
+ deep:true,
307
+ immediate:true
308
+ }
309
+ },
310
+
311
+ computed: {
312
+ toolbars() {
313
+ return {
314
+ flow: [
315
+ {
316
+ type: 'text',
317
+ contents: '流程列表'
318
+ },
319
+ {
320
+ type: 'search',
321
+ contents: [
322
+ {
323
+ name: 'showSuggest',
324
+ type: 'radio',
325
+ changeSearch: true,
326
+ data: [
327
+ {
328
+ value: 'all',
329
+ name: '显示全部',
330
+ checked: true
331
+ },
332
+ { value: 'have', name: '显示已填意见' }
333
+ ],
334
+ events: {
335
+ change: (key, value) => {
336
+ this.handleChange(key, value);
337
+ }
338
+ }
339
+ },
340
+ {
341
+ type: 'select',
342
+ placeholder: '请选择',
343
+ name: 'viewType',
344
+ width: '140px',
345
+ changeSearch: true,
346
+ events: {
347
+ change: (key, value) => {
348
+ this.handleChange(key, value);
349
+ }
350
+ },
351
+ data: [
352
+ {
353
+ value: 1,
354
+ selected: true,
355
+ name: '时间排序'
356
+ },
357
+ {
358
+ value: 2,
359
+ name: '部门排序'
360
+ },
361
+ {
362
+ value: 3,
363
+ name: '树形排序'
364
+ }
365
+ ]
366
+ }
367
+ ]
368
+ }
369
+ ],
370
+ preset: [
371
+ {
372
+ type: 'text',
373
+ contents: '预设列表'
374
+ }
375
+ ],
376
+ sign: [
377
+ {
378
+ type: 'button',
379
+ contents: [
380
+ {
381
+ text: '生成处理签',
382
+ type: 'primary'
383
+ }
384
+ ]
385
+ }
386
+ ],
387
+ splitReading: [
388
+ {
389
+ type: 'text',
390
+ contents:
391
+ (this.taskReadName ? this.taskReadName : '非流程') + '列表'
392
+ }
393
+ ],
394
+ circular: [
395
+ {
396
+ type: 'text',
397
+ contents: '传阅列表'
398
+ }
399
+ ],
400
+ untreatedRead: [
401
+ {
402
+ type: 'text',
403
+ contents: '未处理分阅列表'
404
+ },
405
+ {
406
+ type: 'button',
407
+ contents: [
408
+ {
409
+ text: '撤销分阅',
410
+ fun: 'recallRead'
411
+ }
412
+ ]
413
+ }
414
+ ],
415
+ processedRead: [
416
+ {
417
+ type: 'text',
418
+ contents: '已处理分阅列表'
419
+ }
420
+ ]
421
+ // Reading situation
422
+ };
423
+ },
424
+ pageInfo() {
425
+ return {
426
+ pageNum: this.currentPage,
427
+ pageSize: this.pageSize,
428
+ totalCount: this.total
429
+ };
430
+ },
431
+ theads() {
432
+ const _that = this;
433
+ let newThead = {
434
+ flow: [
435
+ {
436
+ label: '经办部门',
437
+ field: 'deptid',
438
+ align: 'center',
439
+ key: 'jbbm',
440
+ showOverflowTooltip: true,
441
+ width: this.theadWidth.deptid || 150,
442
+ render: (h, params) => {
443
+ return h(
444
+ 'span',
445
+ {},
446
+ params.row.doDeptName
447
+ ? params.row.doDeptName
448
+ : params.row.deptName
449
+ );
450
+ }
451
+ },
452
+ {
453
+ label: '步骤',
454
+ field: 'itemname',
455
+ align: 'center',
456
+ key: 'bz',
457
+ showOverflowTooltip: true,
458
+ width: this.theadWidth.itemname || 110
459
+ },
460
+ {
461
+ label: '办理人',
462
+ field: 'userName',
463
+ align: 'center',
464
+ key: 'blr',
465
+ showOverflowTooltip: true,
466
+ width: this.theadWidth.userName || 110
467
+ },
468
+ {
469
+ label: '办理人部门',
470
+ field: 'deptName',
471
+ align: 'center',
472
+ showOverflowTooltip: true,
473
+ key: 'blrbm',
474
+ width: this.theadWidth.deptName || 110
475
+ },
476
+ {
477
+ label: '状态',
478
+ field: 'pendstate',
479
+ key: 'zt',
480
+ align: 'center',
481
+ showOverflowTooltip: true,
482
+ width: this.theadWidth.pendstate || 80,
483
+ render: (h, params) => {
484
+ return h('span', {
485
+ style: {
486
+ color:
487
+ params.row.pendstate == 0 || params.row.pendstate == 3
488
+ ? 'red'
489
+ : params.row.pendstate == 1
490
+ ? 'green'
491
+ : 'deepskyblue'
492
+ },
493
+ domProps: { innerHTML: params.row.querykeywords }
494
+ });
495
+ }
496
+ },
497
+ {
498
+ label: '办理意见',
499
+ field: 'doresult',
500
+ align: 'center',
501
+ width: this.theadWidth.doresult,
502
+ showOverflowTooltip: true,
503
+ key: 'blyj',
504
+ render: (h, params) => {
505
+ if (
506
+ params.row.doresult &&
507
+ (params.row.doresult.startsWith('http') ||
508
+ params.row.doresult.startsWith('https'))
509
+ ) {
510
+ return h('img', {
511
+ attrs: { src: params.row.doresult },
512
+ style: { width: '100px', height: '100px' }
513
+ });
514
+ } else {
515
+ return h('span', {}, [
516
+ params.row.doresult
517
+ ? params.row.doresult + (params.row.handleInfo ? '&' : '')
518
+ : '',
519
+ h(
520
+ 'span',
521
+ { style: { color: '#A5A5A5', marginLeft: '2px' } },
522
+ params.row.handleInfo || ''
523
+ )
524
+ ]);
525
+ }
526
+ }
527
+ },
528
+ {
529
+ label: '验签',
530
+ field: 'authTypeStr',
531
+ align: 'center',
532
+ key: 'yq',
533
+ showOverflowTooltip: true,
534
+ width: this.theadWidth.authTypeStr || 70,
535
+ render: (h, params) => {
536
+ return h(
537
+ 'span',
538
+ { style: { color: 'deepskyblue' } },
539
+ params.row.authTypeStr
540
+ );
541
+ }
542
+ },
543
+ {
544
+ label: '附件',
545
+ key: 'fj',
546
+ field: 'hasAdjunct',
547
+ align: 'center',
548
+ showOverflowTooltip: true,
549
+ width: this.theadWidth.hasAdjunct || 70,
550
+ render: (h, params) => {
551
+ if (params.row.hasAdjunct) {
552
+ return h('span', {
553
+ style: _that.attachmentPaperClipCssStyle
554
+ ? _that.attachmentPaperClipCssStyle
555
+ : { color: 'red', fontSize: '20px' },
556
+ class: 'iconfont es-icon-fujian'
557
+ });
558
+ } else {
559
+ return h('span', {}, '');
560
+ }
561
+ }
562
+ },
563
+ {
564
+ label: '时间',
565
+ field: 'doetime',
566
+ align: 'center',
567
+ key: 'sj',
568
+ showOverflowTooltip: true,
569
+ width: this.theadWidth.doetime || 150,
570
+ render: (h, params) => {
571
+ return h(
572
+ 'span',
573
+ {},
574
+ params.row.doetime
575
+ ? util.formatDate(params.row.doetime, 'yyyy-MM-dd HH:mm')
576
+ : ''
577
+ );
578
+ }
579
+ },
580
+ {
581
+ label: '代办人',
582
+ field: 'douserid',
583
+ align: 'center',
584
+ key: 'dbr',
585
+ showOverflowTooltip: true,
586
+ width: this.theadWidth.douserid || 80,
587
+ hide: _that.flowTableInfo.hasAgent != '1'
588
+ },
589
+ {
590
+ label: '催办',
591
+ field: 'pressTimes',
592
+ align: 'center',
593
+ key: 'cb',
594
+ showOverflowTooltip: true,
595
+ width: this.theadWidth.pressTimes || 150,
596
+ render: (h, params) => {
597
+ return h(
598
+ 'span',
599
+ { style: 'color:deepskyblue;cursor: pointer;' },
600
+ params.row.pressTimes
601
+ );
602
+ }
603
+ },
604
+ {
605
+ title: '操作',
606
+ type: 'handle',
607
+ width: this.modify ? '130' : '100',
608
+ template: '',
609
+ hide: this.hideBtn,
610
+ events: [
611
+ {
612
+ text: '删除',
613
+ rules: (rows) => {
614
+ return rows.canDelete;
615
+ }
616
+ }
617
+ // {
618
+ // text: '修改',
619
+ // rules: (rows) => {
620
+ // return this.modify && rows.pendstate == 2;
621
+ // }
622
+ // }
623
+ ]
624
+ }
625
+ ],
626
+ preset: this.thead,
627
+ splitReading: [
628
+ {
629
+ label: '经办部门',
630
+ field: 'deptid',
631
+ key: 'jbbm',
632
+ align: 'center',
633
+ showOverflowTooltip: true,
634
+ width: this.theadWidth.deptid || 150
635
+ },
636
+ {
637
+ label: '步骤',
638
+ field: 'itemname',
639
+ align: 'center',
640
+ key: 'bz',
641
+ showOverflowTooltip: true,
642
+ width: this.theadWidth.itemname || 110
643
+ },
644
+ {
645
+ label: '办理人',
646
+ field: 'userName',
647
+ align: 'center',
648
+ key: 'blr',
649
+ showOverflowTooltip: true,
650
+ width: this.theadWidth.userName || 110
651
+ },
652
+ {
653
+ label: '状态',
654
+ field: 'pendstate',
655
+ align: 'center',
656
+ key: 'zt',
657
+ showOverflowTooltip: true,
658
+ width: this.theadWidth.pendstate || 80,
659
+ render: (h, params) => {
660
+ return h('span', {
661
+ style: {
662
+ color:
663
+ params.row.pendstate == 0 || params.row.pendstate == 3
664
+ ? 'red'
665
+ : params.row.pendstate == 1
666
+ ? 'green'
667
+ : 'deepskyblue'
668
+ },
669
+ domProps: { innerHTML: params.row.querykeywords }
670
+ });
671
+ }
672
+ },
673
+ {
674
+ label: '办理意见',
675
+ field: 'doresult',
676
+ align: 'center',
677
+ key: 'blyj',
678
+ width: this.theadWidth.doresult,
679
+ showOverflowTooltip: true,
680
+ render: (h, params) => {
681
+ if (
682
+ params.row.doresult &&
683
+ (params.row.doresult.startsWith('http') ||
684
+ params.row.doresult.startsWith('https'))
685
+ ) {
686
+ return h('img', {
687
+ attrs: { src: params.row.doresult },
688
+ style: { width: '100px', height: '100px' }
689
+ });
690
+ } else {
691
+ return h('span', {}, [
692
+ params.row.doresult
693
+ ? params.row.doresult + (params.row.handleInfo ? '&' : '')
694
+ : '',
695
+ h(
696
+ 'span',
697
+ { style: { color: '#A5A5A5', marginLeft: '2px' } },
698
+ params.row.handleInfo || ''
699
+ )
700
+ ]);
701
+ }
702
+ }
703
+ },
704
+ {
705
+ label: '验签',
706
+ field: 'authTypeStr',
707
+ align: 'center',
708
+ key: 'yq',
709
+ showOverflowTooltip: true,
710
+ width: this.theadWidth.authTypeStr || 70,
711
+ render: (h, params) => {
712
+ return h(
713
+ 'span',
714
+ { style: { color: 'deepskyblue' } },
715
+ params.row.authTypeStr
716
+ );
717
+ }
718
+ },
719
+ {
720
+ label: '附件',
721
+ field: 'hasAdjunct',
722
+ align: 'center',
723
+ key: 'fj',
724
+ showOverflowTooltip: true,
725
+ width: this.theadWidth.hasAdjunct || 70,
726
+ render: (h, params) => {
727
+ if (params.row.hasAdjunct) {
728
+ return h('span', {
729
+ style: _that.attachmentPaperClipCssStyle
730
+ ? _that.attachmentPaperClipCssStyle
731
+ : { color: 'red', fontSize: '20px' },
732
+ class: 'iconfont es-icon-fujian'
733
+ });
734
+ } else {
735
+ return h('span', {}, '');
736
+ }
737
+ }
738
+ },
739
+ {
740
+ label: '时间',
741
+ field: 'doetime',
742
+ align: 'center',
743
+ key: 'sj',
744
+ showOverflowTooltip: true,
745
+ width: this.theadWidth.doetime || 150,
746
+ render: (h, params) => {
747
+ return h(
748
+ 'span',
749
+ {},
750
+ params.row.doetime
751
+ ? util.formatDate(params.row.doetime, 'yyyy-MM-dd HH:mm')
752
+ : ''
753
+ );
754
+ }
755
+ },
756
+ {
757
+ label: '代办人',
758
+ field: 'douserid',
759
+ align: 'center',
760
+ key: 'dbr',
761
+ showOverflowTooltip: true,
762
+ width: this.theadWidth.douserid || 80,
763
+ hide: _that.flowTableInfo.hasAgent != '1'
764
+ },
765
+ {
766
+ label: '催办',
767
+ field: 'pressTimes',
768
+ align: 'center',
769
+ key: 'cb',
770
+ showOverflowTooltip: true,
771
+ width: this.theadWidth.pressTimes || 150,
772
+ render: (h, params) => {
773
+ return h(
774
+ 'span',
775
+ { style: 'color:deepskyblue;cursor: pointer;' },
776
+ params.row.pressTimes
777
+ );
778
+ }
779
+ },
780
+ {
781
+ title: '操作',
782
+ type: 'handle',
783
+ width: '100',
784
+ template: '',
785
+ hide: this.hideBtn,
786
+ events: [
787
+ {
788
+ text: '删除',
789
+ rules: (rows) => {
790
+ return rows.canDelete;
791
+ }
792
+ }
793
+ ]
794
+ }
795
+ ],
796
+ circular: [
797
+ {
798
+ label: '发起人',
799
+ field: 'circularReadInitiatorName',
800
+ align: 'center',
801
+ key: 'fqr',
802
+ showOverflowTooltip: true,
803
+ width: this.theadWidth.circularReadInitiatorName || 150
804
+ },
805
+ {
806
+ label: '传阅部门',
807
+ field: 'circularReadOrgName',
808
+ align: 'center',
809
+ key: 'cybm',
810
+ showOverflowTooltip: true,
811
+ width: this.theadWidth.circularReadOrgName || 110
812
+ },
813
+ {
814
+ label: '传阅人',
815
+ field: 'userName',
816
+ align: 'center',
817
+ key: 'cyr',
818
+ showOverflowTooltip: true,
819
+ width: this.theadWidth.userName || 110
820
+ },
821
+ {
822
+ label: '步骤',
823
+ field: 'itemname',
824
+ align: 'center',
825
+ showOverflowTooltip: true,
826
+ key: 'bz',
827
+ width: this.theadWidth.itemname || 110
828
+ },
829
+ {
830
+ label: '状态',
831
+ field: 'pendstate',
832
+ key: 'zt',
833
+ align: 'center',
834
+ showOverflowTooltip: true,
835
+ width: this.theadWidth.pendstate || 140,
836
+ render: (h, params) => {
837
+ return h('span', {
838
+ style: {
839
+ color:
840
+ params.row.pendstate == 0 || params.row.pendstate == 3
841
+ ? 'red'
842
+ : params.row.pendstate == 1
843
+ ? 'green'
844
+ : 'deepskyblue',
845
+ cursor: this.hasCircularReadWithdrawAuthority
846
+ ? 'pointer'
847
+ : 'unset'
848
+ },
849
+ domProps: {
850
+ innerHTML:
851
+ params.row.querykeywords +
852
+ (this.hasCircularReadWithdrawAuthority
853
+ ? `<span style="color:#7AB0D5">(撤回)</span>`
854
+ : '')
855
+ }
856
+ });
857
+ }
858
+ },
859
+ {
860
+ label: '送达时间',
861
+ field: 'createtime',
862
+ align: 'center',
863
+ key: 'sdsj',
864
+ showOverflowTooltip: true,
865
+ width: this.theadWidth.createtime || 170
866
+ },
867
+ {
868
+ label: '办理时间',
869
+ field: 'doetime',
870
+ align: 'center',
871
+ key: 'blsj',
872
+ showOverflowTooltip: true,
873
+ width: this.theadWidth.doetime || 150
874
+ },
875
+
876
+ {
877
+ label: '附件',
878
+ key: 'fj',
879
+ field: 'hasAdjunct',
880
+ align: 'center',
881
+ showOverflowTooltip: true,
882
+ width: this.theadWidth.hasAdjunct || 70,
883
+ render: (h, params) => {
884
+ if (params.row.hasAdjunct) {
885
+ return h('span', {
886
+ style: _that.attachmentPaperClipCssStyle
887
+ ? _that.attachmentPaperClipCssStyle
888
+ : { color: 'red', fontSize: '20px' },
889
+ class: 'iconfont es-icon-fujian'
890
+ });
891
+ } else {
892
+ return h('span', {}, '');
893
+ }
894
+ }
895
+ },
896
+ {
897
+ label: '提醒',
898
+ field: 'pressTimes',
899
+ align: 'center',
900
+ key: 'tx',
901
+ showOverflowTooltip: true,
902
+ width: this.theadWidth.pressTimes || 150,
903
+ render: (h, params) => {
904
+ return h(
905
+ 'span',
906
+ { style: 'color:deepskyblue;cursor: pointer;' },
907
+ params.row.pressTimes
908
+ );
909
+ }
910
+ },
911
+ {
912
+ label: '阅结意见 & 说明',
913
+ field: 'doresult',
914
+ align: 'center',
915
+ width: this.theadWidth.doresult,
916
+ showOverflowTooltip: true,
917
+ key: 'blyj',
918
+ render: (h, params) => {
919
+ if (
920
+ params.row.doresult &&
921
+ (params.row.doresult.startsWith('http') ||
922
+ params.row.doresult.startsWith('https'))
923
+ ) {
924
+ return h('img', {
925
+ attrs: { src: params.row.doresult },
926
+ style: { width: '100px', height: '100px' }
927
+ });
928
+ } else {
929
+ return h('span', {}, [
930
+ params.row.doresult
931
+ ? params.row.doresult + (params.row.handleInfo ? '&' : '')
932
+ : '',
933
+ h(
934
+ 'span',
935
+ { style: { color: '#A5A5A5', marginLeft: '2px' } },
936
+ params.row.handleInfo || ''
937
+ )
938
+ ]);
939
+ }
940
+ }
941
+ }
942
+ ],
943
+ untreatedRead: [
944
+ {
945
+ label: '步骤',
946
+ field: 'itemid',
947
+ align: 'center',
948
+ key: 'bz',
949
+ showOverflowTooltip: true,
950
+ width: this.theadWidth.itemid || 110
951
+ },
952
+ {
953
+ label: '办理人',
954
+ field: 'userName',
955
+ align: 'center',
956
+ key: 'blr',
957
+ showOverflowTooltip: true,
958
+ width: this.theadWidth.userName
959
+ },
960
+ {
961
+ label: '办理状态',
962
+ field: 'pendstate',
963
+ key: 'blzt',
964
+ align: 'center',
965
+ showOverflowTooltip: true,
966
+ width: this.theadWidth.pendstate || 110,
967
+ render: (h, params) => {
968
+ return h('span', {
969
+ style: {
970
+ color:
971
+ params.row.pendstate == 0 || params.row.pendstate == 3
972
+ ? 'red'
973
+ : params.row.pendstate == 1
974
+ ? 'green'
975
+ : 'deepskyblue'
976
+ },
977
+ domProps: { innerHTML: params.row.querykeywords }
978
+ });
979
+ }
980
+ },
981
+ {
982
+ label: '创建时间',
983
+ field: 'createtime',
984
+ align: 'center',
985
+ key: 'cjsj',
986
+ showOverflowTooltip: true,
987
+ width: this.theadWidth.createtime || 150,
988
+ render: (h, params) => {
989
+ return h(
990
+ 'span',
991
+ {},
992
+ params.row.doetime
993
+ ? util.formatDate(params.row.createtime, 'yyyy-MM-dd HH:mm')
994
+ : ''
995
+ );
996
+ }
997
+ }
998
+ ],
999
+ processedRead: [
1000
+ {
1001
+ label: '步骤',
1002
+ field: 'itemid',
1003
+ align: 'center',
1004
+ key: 'bz',
1005
+ showOverflowTooltip: true,
1006
+ width: this.theadWidth.itemid || 110
1007
+ },
1008
+ {
1009
+ label: '办理人',
1010
+ field: 'userName',
1011
+ align: 'center',
1012
+ key: 'blr',
1013
+ showOverflowTooltip: true,
1014
+ width: this.theadWidth.userName
1015
+ },
1016
+ {
1017
+ label: '办理状态',
1018
+ field: 'pendstate',
1019
+ key: 'blzt',
1020
+ align: 'center',
1021
+ showOverflowTooltip: true,
1022
+ width: this.theadWidth.pendstate || 110,
1023
+ render: (h, params) => {
1024
+ return h('span', {
1025
+ style: {
1026
+ color:
1027
+ params.row.pendstate == 0 || params.row.pendstate == 3
1028
+ ? 'red'
1029
+ : params.row.pendstate == 1
1030
+ ? 'green'
1031
+ : 'deepskyblue'
1032
+ },
1033
+ domProps: { innerHTML: params.row.querykeywords }
1034
+ });
1035
+ }
1036
+ },
1037
+ {
1038
+ label: '办理时间',
1039
+ field: 'doetime',
1040
+ align: 'center',
1041
+ key: 'blsj',
1042
+ showOverflowTooltip: true,
1043
+ width: this.theadWidth.doetime || 150,
1044
+ render: (h, params) => {
1045
+ return h(
1046
+ 'span',
1047
+ {},
1048
+ params.row.doetime
1049
+ ? util.formatDate(params.row.doetime, 'yyyy-MM-dd HH:mm')
1050
+ : ''
1051
+ );
1052
+ }
1053
+ },
1054
+ {
1055
+ label: '代办人',
1056
+ field: 'douserid',
1057
+ align: 'center',
1058
+ key: 'dbr',
1059
+ showOverflowTooltip: true,
1060
+ width: this.theadWidth.douserid
1061
+ },
1062
+ {
1063
+ label: '意见',
1064
+ field: 'doresult',
1065
+ align: 'center',
1066
+ key: 'yj',
1067
+ showOverflowTooltip: true,
1068
+ width: this.theadWidth.doresult
1069
+ }
1070
+ ]
1071
+ };
1072
+ if (this.numbers) {
1073
+ for (let key in newThead) {
1074
+ newThead[key].unshift({
1075
+ label: '序号',
1076
+ field: 'sort',
1077
+ align: 'center',
1078
+ key: 'xh',
1079
+ showOverflowTooltip: true,
1080
+ width: 50
1081
+ });
1082
+ }
1083
+ }
1084
+ return newThead;
1085
+ },
1086
+ content() {
1087
+ const _that = this;
1088
+ let newContents = JSON.parse(JSON.stringify(this.contents));
1089
+ if (this.contents.indexOf('circular') != -1) {
1090
+ newContents = newContents.filter((item) => item != 'splitReading');
1091
+ }
1092
+ if (newContents.indexOf('readingSituation') != -1) {
1093
+ newContents = ['untreatedRead', 'processedRead'];
1094
+ }
1095
+ let contents = newContents.map((item) => {
1096
+ if (typeof item === 'string') {
1097
+ let data = [];
1098
+ if (_that.headFields.length > 0) {
1099
+ _that.headFields.map((headFiled) => {
1100
+ if (headFiled.showDefault) {
1101
+ _that.theads[item].map((theadItem) => {
1102
+ if (theadItem.field === headFiled.field) {
1103
+ data.push({ ...theadItem, ...headFiled });
1104
+ }
1105
+ });
1106
+ } else {
1107
+ data.push(headFiled);
1108
+ }
1109
+ });
1110
+ _that.theads[item].map((x) => {
1111
+ if (x.type == 'handle') {
1112
+ data.push(x);
1113
+ }
1114
+ });
1115
+ }
1116
+ return {
1117
+ type: item,
1118
+ checkbox: newContents.indexOf('untreatedRead') != -1,
1119
+ toolbar: this.toolbars[item],
1120
+ thead: data.length > 0 ? data : this.theads[item],
1121
+ showFormBtn: false
1122
+ };
1123
+ } else {
1124
+ if (!Object.prototype.hasOwnProperty.call(item, 'toolbar')) {
1125
+ let toolbars = this.toolbars[item.type];
1126
+ return { ...item, toolbars };
1127
+ }
1128
+ if (!Object.prototype.hasOwnProperty.call(item, 'thead')) {
1129
+ let thead = this.theads[item.type];
1130
+ return { ...item, thead };
1131
+ }
1132
+ return item;
1133
+ }
1134
+ });
1135
+ return contents;
1136
+ },
1137
+ newToolbar() {
1138
+ if (this.toolbar && this.toolbar.length > 0) {
1139
+ return this.toolbar;
1140
+ } else {
1141
+ return [];
1142
+ }
1143
+ },
1144
+ thead() {
1145
+ let table = [
1146
+ {
1147
+ title: '步骤',
1148
+ align: 'center',
1149
+ width: this.theadWidth.nodeName || '100',
1150
+ field: 'nodeName'
1151
+ },
1152
+ {
1153
+ title: '预设办理人',
1154
+ width: this.theadWidth.presetUserName || '120',
1155
+ align: 'center',
1156
+ field: 'presetUserName'
1157
+ },
1158
+ {
1159
+ title: '是否可编辑',
1160
+ key: 'sfkbj',
1161
+ align: 'center',
1162
+ width: this.theadWidth.isEdit || '100',
1163
+ render: (h, params) => {
1164
+ return h('span', this.getCodeValue(params.row.isEdit, 'is_edit'));
1165
+ },
1166
+ field: 'isEdit'
1167
+ },
1168
+ {
1169
+ key: 'zt',
1170
+ title: '状态',
1171
+ width: this.theadWidth.statusName || '80',
1172
+ align: 'center',
1173
+ field: 'statusName'
1174
+ },
1175
+ {
1176
+ title: '预设类型',
1177
+ key: 'yslx',
1178
+ width: this.theadWidth.presetType || '120',
1179
+ align: 'center',
1180
+ render: (h, params) => {
1181
+ return h(
1182
+ 'span',
1183
+ this.getCodeValue(params.row.presetType, 'preset_type')
1184
+ );
1185
+ },
1186
+ field: 'presetType'
1187
+ },
1188
+ {
1189
+ title: '流程名称',
1190
+ key: 'lcmc',
1191
+ width: this.theadWidth.processDefName,
1192
+ align: 'center',
1193
+ field: 'processDefName'
1194
+ },
1195
+ {
1196
+ title: '上一步骤',
1197
+ key: 'sybz',
1198
+ align: 'center',
1199
+ width: this.theadWidth.lastNodeName,
1200
+ field: 'lastNodeName'
1201
+ },
1202
+ {
1203
+ title: '创建步骤',
1204
+ key: 'cjbz',
1205
+ align: 'center',
1206
+ width: this.theadWidth.operationNodeName,
1207
+ field: 'operationNodeName'
1208
+ },
1209
+ {
1210
+ title: '创建人',
1211
+ key: 'cjr',
1212
+ width: this.theadWidth.creatorName || '120',
1213
+ align: 'center',
1214
+ field: 'creatorName'
1215
+ },
1216
+ {
1217
+ title: '创建时间',
1218
+ width: this.theadWidth.createTime || '150',
1219
+ key: 'cjsj',
1220
+ align: 'center',
1221
+ render: (h, params) => {
1222
+ return h(
1223
+ 'span',
1224
+ util.formatDate(params.row.createTime, 'yyyy-MM-dd HH:mm')
1225
+ );
1226
+ },
1227
+ field: 'createTime'
1228
+ },
1229
+ {
1230
+ title: '操作区域',
1231
+ type: 'handle',
1232
+ align: 'center',
1233
+ width: '120',
1234
+ events: [
1235
+ {
1236
+ text: '置为失效'
1237
+ }
1238
+ ]
1239
+ }
1240
+ ];
1241
+ if (
1242
+ this.presetInfoListHiddenColumns != undefined &&
1243
+ this.presetInfoListHiddenColumns != ''
1244
+ ) {
1245
+ table = table.filter(
1246
+ (items) => this.presetInfoListHiddenColumns.indexOf(items.key) == -1
1247
+ );
1248
+ }
1249
+ if (!this.canDelete) table.splice(table.length - 1, 1);
1250
+ return table;
1251
+ }
1252
+ },
1253
+ async mounted() {
1254
+ this.loading = util.loading(this.$loading, '加载中...');
1255
+ if (this.contents.indexOf('readingSituation') != -1) {
1256
+ await this.getFyListJson(1);
1257
+ await this.getFyListJson(2);
1258
+ this.getListCount(this.flowListCount);
1259
+ this.show = true;
1260
+ } else {
1261
+ this.getFlowList();
1262
+ }
1263
+ this.getSysInfo('preset_type');
1264
+ this.getSysInfo('is_edit');
1265
+ this.getListInfo();
1266
+ },
1267
+
1268
+ methods: {
1269
+ recallReadFun() {
1270
+ const _that = this;
1271
+ let pendingIds = _that.selectList.map((x) => x.id).join(',');
1272
+ let params = {
1273
+ url: taskReadWithDraw,
1274
+ params: {
1275
+ pendingIds
1276
+ }
1277
+ };
1278
+ _that.loading = util.loading(_that.$loading, '撤销中...');
1279
+ util.ajax(params).then(async (res) => {
1280
+ _that.loading.close();
1281
+ if (res.rCode == 0 || res.status == 'success') {
1282
+ _that.$message.success('撤销成功!');
1283
+ await _that.getFyListJson(1);
1284
+ _that.getListCount(_that.flowListCount);
1285
+ } else {
1286
+ _that.$message.error(res.message);
1287
+ }
1288
+ });
1289
+ },
1290
+ recallRead() {
1291
+ if (this.selectList.length == 0)
1292
+ return this.$message.warning('请选择需要撤销的分阅');
1293
+ this.$confirm('是否确认撤销选中的分阅?', '提示', {
1294
+ confirmButtonText: '确定',
1295
+ cancelButtonText: '取消',
1296
+ type: 'warning'
1297
+ }).then(() => {
1298
+ this.recallReadFun();
1299
+ });
1300
+ },
1301
+ handleSelectionChange(val) {
1302
+ this.selectList = val;
1303
+ },
1304
+ handledraw(pendedHistoryId) {
1305
+ let params = {
1306
+ url: circularReadWithdraw,
1307
+ params: { pendedHistoryId }
1308
+ };
1309
+ this.$confirm('是否确定撤回当前传阅', {
1310
+ confirmButtonText: '确定',
1311
+ cancelButtonText: '取消',
1312
+ type: 'warning'
1313
+ })
1314
+ .then(() => {
1315
+ this.loading = util.loading(this.$loading, '撤回中...');
1316
+ util.ajax(params).then((res) => {
1317
+ this.loading.close();
1318
+ if (res.rCode == 0) {
1319
+ this.$message({
1320
+ message: '撤回成功',
1321
+ type: 'success'
1322
+ });
1323
+ this.getCircularReadList();
1324
+ }
1325
+ });
1326
+ // _that.subMit(res.results,type)
1327
+ })
1328
+ .catch(() => {});
1329
+ },
1330
+ getCircularReadList() {
1331
+ const _that = this;
1332
+ let params = {
1333
+ url: pendedhistoryListWithCircularReadJson,
1334
+ params: { apprecordid: _that.businessId }
1335
+ };
1336
+ util.ajax(params).then((res) => {
1337
+ if (res.status == 'success' || res.rCode == 0) {
1338
+ _that.circularData = res.data.fyHistoryList;
1339
+ _that.circularData.map((x, i) => {
1340
+ x.sort = i + 1;
1341
+ });
1342
+ _that.hasCircularReadWithdrawAuthority =
1343
+ res.data.hasCircularReadWithdrawAuthority;
1344
+ _that.$nextTick(() => {
1345
+ _that.getListCount(_that.flowListCount);
1346
+ });
1347
+ }
1348
+ });
1349
+ },
1350
+ returnData(type) {
1351
+ switch (type) {
1352
+ case 'preset':
1353
+ this.flowListCount.preset = this.presetData.length;
1354
+ this.flowListCount.presetData = this.presetData;
1355
+ return this.presetData;
1356
+ case 'sign':
1357
+ this.flowListCount.sign = this.signData.length;
1358
+ this.flowListCount.signData = this.signData;
1359
+ return this.signData;
1360
+ case 'splitReading':
1361
+ this.flowListCount.splitReading = this.splitReadingData.length;
1362
+ this.flowListCount.splitReadingData = this.splitReadingData;
1363
+ return this.splitReadingData;
1364
+ case 'circular':
1365
+ this.flowListCount.circular = this.circularData.length;
1366
+ this.flowListCount.circularData = this.circularData;
1367
+ return this.circularData;
1368
+ case 'untreatedRead':
1369
+ this.flowListCount.untreatedRead = this.untreatedReadData.length;
1370
+ this.flowListCount.untreatedReadData = this.untreatedReadData;
1371
+ return this.untreatedReadData;
1372
+ case 'processedRead':
1373
+ this.flowListCount.processedRead = this.processedReadData.length;
1374
+ this.flowListCount.processedReadData = this.processedReadData;
1375
+ return this.processedReadData;
1376
+ default:
1377
+ this.flowListCount.flow = this.flowData.length;
1378
+ this.flowListCount.flowData = this.flowData;
1379
+ return this.flowData;
1380
+ }
1381
+ },
1382
+ handleCellClick(row, column) {
1383
+ if (column.property == 'hasAdjunct' && row.hasAdjunct) {
1384
+ this.showFile(row.wfpendingid);
1385
+ } else if (column.property == 'pressTimes') {
1386
+ this.goPress(row.id);
1387
+ } else if (
1388
+ column.property == 'pendstate' &&
1389
+ this.hasCircularReadWithdrawAuthority
1390
+ ) {
1391
+ this.handledraw(row.id);
1392
+ }
1393
+ },
1394
+ handleBtnClick(data) {
1395
+ // recallRead
1396
+ const { handle, row } = data;
1397
+ if (handle.text == '删除') {
1398
+ this.del(row.id);
1399
+ } else if (handle.fun == 'recallRead') {
1400
+ this[handle.fun]();
1401
+ }
1402
+ },
1403
+ /**
1404
+ * handleFormSubmit
1405
+ * @desc:删除节点点击事件
1406
+ * @param {Object} formData 点击删除的form数据
1407
+ * @author liufan
1408
+ * @date 2022年11月29日
1409
+ **/
1410
+ handleFormSubmit(formData) {
1411
+ this.delLoading = true;
1412
+ let params = {
1413
+ url: deleteFlow,
1414
+ method: 'POST',
1415
+ data: { id: this.historyId, reason: formData.reason }
1416
+ };
1417
+ util
1418
+ .ajax(params)
1419
+ .then((res) => {
1420
+ const { status, message } = res;
1421
+ this.delLoading = false;
1422
+ if (status === 'success') {
1423
+ this.$message.success('删除成功');
1424
+ this.showDel = false;
1425
+ this.handleChange();
1426
+ } else {
1427
+ this.$message.error(message || '系统错误,请联系管理员!');
1428
+ }
1429
+ })
1430
+ .catch((err) => {
1431
+ this.delLoading = false;
1432
+ if (err.message && err.message !== 'canceled') {
1433
+ this.$message.error(err.message);
1434
+ }
1435
+ });
1436
+ },
1437
+ /**
1438
+ * del
1439
+ * @desc:展示删除弹窗
1440
+ * @param {String} id 当前点击数据id
1441
+ * @author liufan
1442
+ * @date 2022年11月29日
1443
+ **/
1444
+ del(id) {
1445
+ this.historyId = id;
1446
+ this.showDel = true;
1447
+ },
1448
+ /**
1449
+ * handleCurrentChange
1450
+ * @desc:监听页码变化
1451
+ * @param {String} val 当前页
1452
+ * @author liufan
1453
+ * @date 2022年11月29日
1454
+ **/
1455
+ handleCurrentChange(val) {
1456
+ this.currentPage = val;
1457
+ this.getPressList();
1458
+ },
1459
+ /**
1460
+ * handleSizeChange
1461
+ * @desc:监听每页数据显示数量变化
1462
+ * @param {String} val 每页展示数量
1463
+ * @author liufan
1464
+ * @date 2022年11月29日
1465
+ **/
1466
+ handleSizeChange(val) {
1467
+ this.pageSize = val;
1468
+ this.getPressList();
1469
+ },
1470
+ /**
1471
+ * sortChange
1472
+ * @desc:监听排序变化
1473
+ * @param {Object} info 需要排序的字段及排序方式
1474
+ * @author liufan
1475
+ * @date 2022年11月29日
1476
+ **/
1477
+ sortChange(info) {
1478
+ let { prop, order } = info;
1479
+ this.sidx = prop;
1480
+ this.sord = order.replace('ending', '');
1481
+ this.getPressList();
1482
+ },
1483
+ /**
1484
+ * getPressList
1485
+ * @desc:催办列表数据
1486
+ * @author liufan
1487
+ * @date 2022年11月29日
1488
+ **/
1489
+ getPressList() {
1490
+ const { historyId, pageSize, sidx, sord, currentPage } = this;
1491
+ this.pressLoading = true;
1492
+ let params = {
1493
+ url: pressListJson,
1494
+ params: { historyId },
1495
+ method: 'POST',
1496
+ data: { page: currentPage, rows: pageSize, sidx, sord, historyId }
1497
+ };
1498
+ util
1499
+ .ajax(params)
1500
+ .then((res) => {
1501
+ this.pressTableList = res.data;
1502
+ this.total = res.totalrecords;
1503
+ this.pressLoading = false;
1504
+ })
1505
+ .catch((err) => {
1506
+ this.pressLoading = false;
1507
+ if (err.message && err.message !== 'canceled') {
1508
+ this.$message.error(err.message);
1509
+ }
1510
+ });
1511
+ },
1512
+ /**
1513
+ * goPress
1514
+ * @desc:催办列表查看
1515
+ * @param {String} id 催办列表id
1516
+ * @author liufan
1517
+ * @date 2022年11月29日
1518
+ **/
1519
+ goPress(id) {
1520
+ this.historyId = id;
1521
+ this.showPress = true;
1522
+ this.getPressList();
1523
+ },
1524
+ /**
1525
+ * showFile
1526
+ * @desc:附件查看
1527
+ * @param {String} ownId 附件id
1528
+ * @author liufan
1529
+ * @date 2022年11月29日
1530
+ **/
1531
+ showFile(ownId) {
1532
+ this.wfpendingid = ownId;
1533
+ this.showFileList = true;
1534
+ },
1535
+ /**
1536
+ * handleChange
1537
+ * @desc:切换排序方式
1538
+ * @author liufan
1539
+ * @date 2022年11月22日
1540
+ **/
1541
+ handleChange(key, value) {
1542
+ if (value) {
1543
+ this[key] = value;
1544
+ }
1545
+ // this.show = false;
1546
+ this.loading = util.loading(this.$loading, '加载中...');
1547
+ this.getFlowList();
1548
+ },
1549
+ async getFyListJson(type) {
1550
+ let params = {
1551
+ url: fyListJson,
1552
+ params: {
1553
+ appRecordId: this.businessId,
1554
+ status: type
1555
+ }
1556
+ };
1557
+ await util.ajax(params).then((res) => {
1558
+ if (type == 1) {
1559
+ this.untreatedReadData = res.data;
1560
+ this.untreatedReadData.map((x, i) => {
1561
+ x.sort = i + 1;
1562
+ });
1563
+ } else {
1564
+ this.processedReadData = res.data;
1565
+ this.processedReadData.map((x, i) => {
1566
+ x.sort = i + 1;
1567
+ });
1568
+ }
1569
+ });
1570
+ },
1571
+ /**
1572
+ * getFlowList
1573
+ * @desc:获取流程列表
1574
+ * @author liufan
1575
+ * @date 2022年11月22日
1576
+ **/
1577
+ getFlowList(type) {
1578
+ let params = {
1579
+ url: pendedhistoryListJson,
1580
+ params: {
1581
+ apprecordid: this.businessId,
1582
+ pendingAttr: 0,
1583
+ viewType:type || this.viewType,
1584
+ showSuggest: this.showSuggest,
1585
+ ...this.params
1586
+ }
1587
+ };
1588
+ util
1589
+ .ajax(params)
1590
+ .then((res) => {
1591
+ let {
1592
+ status,
1593
+ message,
1594
+ data: {
1595
+ adjunctCode,
1596
+ wfHistoryList,
1597
+ fyHistoryList,
1598
+ hasAgent,
1599
+ isShort,
1600
+ modify,
1601
+ taskReadName
1602
+ }
1603
+ } = res;
1604
+ this.loading.close();
1605
+ if (status == 'success') {
1606
+ this.flowTableInfo.adjunctCode = adjunctCode;
1607
+ this.flowTableInfo.hasAgent = hasAgent;
1608
+ this.attachmentPaperClipCssStyle =
1609
+ res.data.attachmentPaperClipCssStyle;
1610
+ this.isShort = isShort;
1611
+ this.taskReadName = taskReadName;
1612
+ this.flowData = wfHistoryList;
1613
+ this.flowData.map((x, i) => {
1614
+ x.sort = i + 1;
1615
+ if (!x.deptid) {
1616
+ x.deptid = x.deptName;
1617
+ }
1618
+ });
1619
+ this.splitReadingData = fyHistoryList;
1620
+ this.splitReadingData.map((x, i) => {
1621
+ x.sort = i + 1;
1622
+ });
1623
+ this.modify = modify;
1624
+ this.show = true;
1625
+ if (this.height == 'auto') {
1626
+ this.$nextTick(() => {
1627
+ this.content.map((x) => {
1628
+ this[`${x.type}Height`] = this.$refs[x.type][0].offsetHeight;
1629
+ });
1630
+ });
1631
+ }
1632
+ if (this.contents.indexOf('circular') != -1) {
1633
+ this.getCircularReadList();
1634
+ } else {
1635
+ this.$nextTick(() => {
1636
+ this.getListCount(this.flowListCount);
1637
+ });
1638
+ }
1639
+ } else {
1640
+ this.$message.error(message || '系统错误,请联系管理员!');
1641
+ }
1642
+ })
1643
+ .catch((err) => {
1644
+ this.loading.close();
1645
+ if (err.message && err.message !== 'canceled') {
1646
+ this.$message.error(err.message);
1647
+ }
1648
+ this.show = true;
1649
+ });
1650
+ },
1651
+ /**
1652
+ * handleClick
1653
+ * @desc:表单点击事件
1654
+ * @param {Object} val 当前点击行数据及按钮
1655
+ * @author liufan
1656
+ * @date 2022年11月10日
1657
+ **/
1658
+ handleClick(val) {
1659
+ const {
1660
+ handle: { text },
1661
+ row: { id, status }
1662
+ } = val;
1663
+ if (text === '置为失效') {
1664
+ if (status == 0) {
1665
+ this.$confirm('您确定要置为失效吗?')
1666
+ .then(() => {
1667
+ this.loading = util.loading(this.$loading, '提交中...');
1668
+ let param = {
1669
+ url: deletePresetInfo,
1670
+ headers: { Accept: 'application/json,text/plain' },
1671
+ method: 'post',
1672
+ params: { id }
1673
+ };
1674
+ util
1675
+ .ajax(param)
1676
+ .then((res) => {
1677
+ const { status, message } = res;
1678
+ this.loading.close();
1679
+ if (status === 'success') {
1680
+ this.$message.success('操作成功');
1681
+ this.getListInfo();
1682
+ } else {
1683
+ this.$message.error(message || '系统错误,请联系管理员!');
1684
+ }
1685
+ })
1686
+ .catch((err) => {
1687
+ this.loading.close();
1688
+ if (err.message && err.message !== 'canceled') {
1689
+ this.$message.error(err.message);
1690
+ }
1691
+ });
1692
+ })
1693
+ .catch((e) => {
1694
+ // on cancel
1695
+ });
1696
+ } else {
1697
+ this.$message.warning('当前数据已为失效状态');
1698
+ }
1699
+ }
1700
+ },
1701
+ /**
1702
+ * getCodeValue
1703
+ * @desc:获取代码表过滤后的值
1704
+ * @param {String} value 展示数据的代码值
1705
+ * @param {String} type 代码表类型
1706
+ * @author liufan
1707
+ * @date 2022年11月10日
1708
+ **/
1709
+ getCodeValue(value, type) {
1710
+ let val = this[type].filter((item) => item.cciValue == value);
1711
+ return val[0].shortName;
1712
+ },
1713
+ /**
1714
+ * getSysInfo
1715
+ * @desc:获取代码表
1716
+ * @param {String} code 编码code值
1717
+ * @author liufan
1718
+ * @date 2022年11月10日
1719
+ **/
1720
+ getSysInfo(code) {
1721
+ let params = {
1722
+ url: findCodeValues,
1723
+ params: { ccCode: code }
1724
+ };
1725
+ util
1726
+ .ajax(params)
1727
+ .then((res) => {
1728
+ const { status, message, data } = res;
1729
+ if (status == 'success') {
1730
+ this[code] = data;
1731
+ } else {
1732
+ this.$message.error(message || '系统错误,请联系管理员!');
1733
+ }
1734
+ })
1735
+ .catch((e) => {});
1736
+ },
1737
+ /**
1738
+ * getListInfo
1739
+ * @desc:获取预设列表数据
1740
+ * @author liufan
1741
+ * @date 2022年11月10日
1742
+ **/
1743
+ getListInfo() {
1744
+ let param = {
1745
+ url: toPresetInfoListIndex,
1746
+ params: { apprecordid: this.businessId }
1747
+ };
1748
+ util
1749
+ .ajax(param)
1750
+ .then((res) => {
1751
+ let {
1752
+ status,
1753
+ message,
1754
+ data: {
1755
+ presetInfoList,
1756
+ presetInfoListHiddenColumns,
1757
+ canDelete,
1758
+ currentUserHasPresetInfoAuth
1759
+ }
1760
+ } = res;
1761
+ this.loading.close();
1762
+ if (status == 'success') {
1763
+ if (presetInfoList) {
1764
+ this.presetData = presetInfoList;
1765
+ this.presetData.map((x, i) => {
1766
+ x.sort = i + 1;
1767
+ });
1768
+ }
1769
+ this.presetInfoListHiddenColumns = presetInfoListHiddenColumns;
1770
+ this.currentUserHasPresetInfoAuth = currentUserHasPresetInfoAuth;
1771
+ this.canDelete = canDelete;
1772
+ } else {
1773
+ this.$message.error(message || '系统错误,请联系管理员!');
1774
+ }
1775
+ })
1776
+ .catch((err) => {
1777
+ this.loading.close();
1778
+ if (err.message && err.message !== 'canceled') {
1779
+ this.$message.error(err.message);
1780
+ }
1781
+ });
1782
+ }
1783
+ }
1784
+ };
1785
+ </script>
1786
+
1787
+ <style></style>