eoss-ui 0.6.54 → 0.6.55

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