eoss-ui 0.6.88 → 0.6.90

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 (249) hide show
  1. package/lib/calogin.js +233 -233
  2. package/lib/eoss-ui.common.js +933 -859
  3. package/lib/flow-list.js +81 -81
  4. package/lib/flow.js +364 -305
  5. package/lib/index.js +1 -1
  6. package/lib/main.js +132 -132
  7. package/lib/qr-code.js +13 -13
  8. package/lib/selector.js +99 -84
  9. package/lib/theme-chalk/index.css +1 -1
  10. package/lib/theme-chalk/selector.css +1 -1
  11. package/package.json +160 -160
  12. package/packages/button/index.js +5 -5
  13. package/packages/button/src/main.vue +418 -418
  14. package/packages/button-group/index.js +5 -5
  15. package/packages/button-group/src/main.vue +298 -298
  16. package/packages/calendar/index.js +5 -5
  17. package/packages/calogin/index.js +5 -5
  18. package/packages/calogin/src/main.vue +412 -412
  19. package/packages/calogin/src/plugin.js +915 -915
  20. package/packages/card/index.js +5 -5
  21. package/packages/card/src/main.vue +156 -156
  22. package/packages/cascader/index.js +5 -5
  23. package/packages/cascader/src/main.vue +168 -168
  24. package/packages/checkbox-group/index.js +5 -5
  25. package/packages/checkbox-group/src/main.vue +333 -333
  26. package/packages/clients/index.js +5 -5
  27. package/packages/clients/src/main.vue +151 -151
  28. package/packages/data-table/index.js +5 -5
  29. package/packages/data-table/src/children.vue +39 -39
  30. package/packages/data-table/src/column.vue +990 -990
  31. package/packages/data-table/src/main.vue +1822 -1822
  32. package/packages/data-table/src/sizer.vue +195 -195
  33. package/packages/data-table-form/index.js +5 -5
  34. package/packages/data-table-form/src/checkbox.vue +101 -101
  35. package/packages/data-table-form/src/colgroup.vue +17 -17
  36. package/packages/data-table-form/src/main.vue +181 -181
  37. package/packages/data-table-form/src/radio.vue +65 -65
  38. package/packages/data-table-form/src/table.vue +233 -233
  39. package/packages/data-table-form/src/tbody.vue +336 -336
  40. package/packages/data-table-form/src/thead.vue +68 -68
  41. package/packages/date-picker/index.js +5 -5
  42. package/packages/date-picker/src/main.vue +236 -236
  43. package/packages/dialog/index.js +5 -5
  44. package/packages/enable-drag/index.js +5 -5
  45. package/packages/enterprise/index.js +5 -5
  46. package/packages/enterprise/src/main.vue +66 -66
  47. package/packages/error-page/index.js +5 -5
  48. package/packages/error-page/src/main.vue +44 -44
  49. package/packages/flow/index.js +5 -5
  50. package/packages/flow/src/component/Circulate.vue +400 -400
  51. package/packages/flow/src/component/CommonOpinions.vue +364 -364
  52. package/packages/flow/src/component/CustomPreset.vue +322 -322
  53. package/packages/flow/src/component/FileList.vue +99 -99
  54. package/packages/flow/src/component/Preset.vue +255 -255
  55. package/packages/flow/src/component/SendMsg.vue +241 -241
  56. package/packages/flow/src/component/TimeLimit.vue +190 -190
  57. package/packages/flow/src/component/taskUnionExamine.vue +640 -640
  58. package/packages/flow/src/form.vue +121 -121
  59. package/packages/flow/src/freeStartFlow.vue +2844 -2844
  60. package/packages/flow/src/main.vue +3659 -3657
  61. package/packages/flow/src/processForm.vue +1245 -1245
  62. package/packages/flow/src/processReject.vue +296 -296
  63. package/packages/flow/src/reset.vue +941 -918
  64. package/packages/flow/src/selectUser.vue +1 -1
  65. package/packages/flow/src/startTaskRead.vue +684 -684
  66. package/packages/flow/src/supervise.vue +152 -152
  67. package/packages/flow/src/table.vue +58 -58
  68. package/packages/flow-group/index.js +5 -5
  69. package/packages/flow-group/src/main.vue +692 -692
  70. package/packages/flow-list/index.js +5 -5
  71. package/packages/flow-list/src/main.vue +1770 -1770
  72. package/packages/form/index.js +5 -5
  73. package/packages/form/src/main.vue +3814 -3814
  74. package/packages/form/src/table.vue +1508 -1508
  75. package/packages/handle-user/index.js +5 -5
  76. package/packages/handle-user/src/main.vue +138 -138
  77. package/packages/handler/index.js +5 -5
  78. package/packages/handler/src/main.vue +493 -493
  79. package/packages/icon/index.js +5 -5
  80. package/packages/icon/src/main.vue +101 -101
  81. package/packages/icons/index.js +5 -5
  82. package/packages/icons/src/main.vue +81 -81
  83. package/packages/input/index.js +5 -5
  84. package/packages/input/src/main.vue +356 -356
  85. package/packages/input-number/index.js +5 -5
  86. package/packages/input-number/src/main.vue +106 -106
  87. package/packages/label/index.js +5 -5
  88. package/packages/label/src/main.vue +457 -457
  89. package/packages/layout/index.js +5 -5
  90. package/packages/layout/src/item.vue +152 -152
  91. package/packages/layout/src/main.vue +31 -31
  92. package/packages/login/index.js +5 -5
  93. package/packages/login/src/main.vue +1998 -1998
  94. package/packages/login/src/resetPassword.vue +562 -562
  95. package/packages/main/index.js +5 -5
  96. package/packages/main/src/default/message.vue +249 -249
  97. package/packages/main/src/default/notice.vue +157 -157
  98. package/packages/main/src/default/userinfo.vue +503 -503
  99. package/packages/main/src/public/online.vue +89 -89
  100. package/packages/main/src/public/search.vue +458 -458
  101. package/packages/main/src/public/settings.vue +221 -221
  102. package/packages/main/src/simplicity/apps.vue +388 -388
  103. package/packages/main/src/simplicity/avatar.vue +82 -82
  104. package/packages/main/src/simplicity/handler.vue +259 -259
  105. package/packages/main/src/simplicity/index.vue +2102 -2102
  106. package/packages/main/src/simplicity/lists.vue +84 -84
  107. package/packages/main/src/simplicity/menu-list.vue +135 -135
  108. package/packages/main/src/simplicity/message.vue +259 -259
  109. package/packages/main/src/simplicity/notice.vue +190 -190
  110. package/packages/main/src/simplicity/router-page.vue +45 -45
  111. package/packages/main/src/simplicity/sub-menu.vue +264 -264
  112. package/packages/main/src/simplicity/user.vue +260 -260
  113. package/packages/main/src/simplicity/userinfo.vue +308 -308
  114. package/packages/menu/index.js +5 -5
  115. package/packages/menu/src/main.vue +584 -584
  116. package/packages/nav/index.js +5 -5
  117. package/packages/nav/src/main.vue +351 -351
  118. package/packages/notify/index.js +5 -5
  119. package/packages/notify/src/main.vue +538 -538
  120. package/packages/page/index.js +5 -5
  121. package/packages/page/src/main.vue +167 -167
  122. package/packages/pagination/index.js +5 -5
  123. package/packages/pagination/src/main.vue +96 -96
  124. package/packages/player/index.js +5 -5
  125. package/packages/player/src/main.vue +194 -194
  126. package/packages/qr-code/index.js +5 -5
  127. package/packages/qr-code/src/main.vue +170 -170
  128. package/packages/radio-group/index.js +6 -6
  129. package/packages/radio-group/src/main.vue +319 -319
  130. package/packages/retrial-auth/index.js +5 -5
  131. package/packages/retrial-auth/src/main.vue +280 -280
  132. package/packages/select/index.js +5 -5
  133. package/packages/select/src/main.vue +778 -778
  134. package/packages/select-ganged/index.js +5 -5
  135. package/packages/select-ganged/src/main.vue +724 -724
  136. package/packages/selector/index.js +5 -5
  137. package/packages/selector/src/main.vue +747 -745
  138. package/packages/selector-panel/index.js +5 -5
  139. package/packages/selector-panel/src/main.vue +1027 -1027
  140. package/packages/selector-panel/src/selection.vue +170 -170
  141. package/packages/selector-panel/src/tree.vue +129 -129
  142. package/packages/sizer/index.js +5 -5
  143. package/packages/sizer/src/main.vue +254 -254
  144. package/packages/steps/index.js +5 -5
  145. package/packages/steps/src/main.vue +181 -181
  146. package/packages/switch/index.js +5 -5
  147. package/packages/switch/src/main.vue +154 -154
  148. package/packages/table-form/index.js +5 -5
  149. package/packages/tabs/index.js +5 -5
  150. package/packages/tabs/src/main.vue +788 -788
  151. package/packages/tabs-panel/index.js +5 -5
  152. package/packages/tabs-panel/src/main.vue +29 -29
  153. package/packages/theme-chalk/lib/index.css +1 -1
  154. package/packages/theme-chalk/lib/selector.css +1 -1
  155. package/packages/theme-chalk/src/base.scss +261 -261
  156. package/packages/theme-chalk/src/button-group.scss +176 -176
  157. package/packages/theme-chalk/src/button.scss +24 -24
  158. package/packages/theme-chalk/src/calendar.scss +113 -113
  159. package/packages/theme-chalk/src/card.scss +99 -99
  160. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  161. package/packages/theme-chalk/src/clients.scss +87 -87
  162. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  163. package/packages/theme-chalk/src/data-table.scss +293 -293
  164. package/packages/theme-chalk/src/date-picker.scss +7 -7
  165. package/packages/theme-chalk/src/dialog.scss +77 -77
  166. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  167. package/packages/theme-chalk/src/enterprise.scss +5 -5
  168. package/packages/theme-chalk/src/error-page.scss +18 -18
  169. package/packages/theme-chalk/src/flow-group.scss +110 -110
  170. package/packages/theme-chalk/src/flow-list.scss +39 -39
  171. package/packages/theme-chalk/src/flow.scss +348 -348
  172. package/packages/theme-chalk/src/form.scss +499 -499
  173. package/packages/theme-chalk/src/handle-user.scss +40 -40
  174. package/packages/theme-chalk/src/handler.scss +143 -143
  175. package/packages/theme-chalk/src/icon.scss +1817 -1817
  176. package/packages/theme-chalk/src/icons.scss +99 -99
  177. package/packages/theme-chalk/src/input.scss +9 -9
  178. package/packages/theme-chalk/src/label.scss +24 -24
  179. package/packages/theme-chalk/src/layout.scss +46 -46
  180. package/packages/theme-chalk/src/login.scss +984 -984
  181. package/packages/theme-chalk/src/main.scss +663 -663
  182. package/packages/theme-chalk/src/menu.scss +222 -222
  183. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  184. package/packages/theme-chalk/src/nav.scss +111 -111
  185. package/packages/theme-chalk/src/page.scss +3 -3
  186. package/packages/theme-chalk/src/pagination.scss +29 -29
  187. package/packages/theme-chalk/src/player.scss +9 -9
  188. package/packages/theme-chalk/src/qr-code.scss +17 -17
  189. package/packages/theme-chalk/src/radio-group.scss +9 -9
  190. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  191. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  192. package/packages/theme-chalk/src/select.scss +8 -8
  193. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  194. package/packages/theme-chalk/src/selector.scss +92 -91
  195. package/packages/theme-chalk/src/simplicity.scss +1355 -1355
  196. package/packages/theme-chalk/src/sizer.scss +36 -36
  197. package/packages/theme-chalk/src/steps.scss +88 -88
  198. package/packages/theme-chalk/src/switch.scss +3 -3
  199. package/packages/theme-chalk/src/table-form.scss +1 -1
  200. package/packages/theme-chalk/src/tabs.scss +87 -87
  201. package/packages/theme-chalk/src/tips.scss +7 -7
  202. package/packages/theme-chalk/src/toolbar.scss +179 -179
  203. package/packages/theme-chalk/src/tree-group.scss +72 -72
  204. package/packages/theme-chalk/src/tree.scss +165 -165
  205. package/packages/theme-chalk/src/upload.scss +172 -172
  206. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  207. package/packages/tips/index.js +5 -5
  208. package/packages/tips/src/main.vue +141 -141
  209. package/packages/toolbar/index.js +5 -5
  210. package/packages/toolbar/src/main.vue +430 -430
  211. package/packages/tree/index.js +5 -5
  212. package/packages/tree-group/index.js +5 -5
  213. package/packages/upload/index.js +5 -5
  214. package/packages/upload/src/main.vue +1348 -1348
  215. package/packages/upload/src/picture.js +15 -15
  216. package/packages/wujie/index.js +5 -5
  217. package/packages/wujie/src/main.vue +145 -145
  218. package/packages/wxlogin/index.js +5 -5
  219. package/packages/wxlogin/src/main.vue +128 -128
  220. package/src/config/api.js +294 -294
  221. package/src/config/image.js +2 -2
  222. package/src/index.js +163 -163
  223. package/src/utils/bus.js +3 -3
  224. package/src/utils/date-util.js +312 -312
  225. package/src/utils/http.js +50 -50
  226. package/src/utils/rules.js +18 -18
  227. package/src/utils/store.js +21 -21
  228. package/src/utils/webSocket.js +107 -107
  229. package/packages/.DS_Store +0 -0
  230. package/packages/autocomplete/.DS_Store +0 -0
  231. package/packages/calogin/.DS_Store +0 -0
  232. package/packages/date-picker/.DS_Store +0 -0
  233. package/packages/date-picker/src/.DS_Store +0 -0
  234. package/packages/flow/.DS_Store +0 -0
  235. package/packages/flow/src/.DS_Store +0 -0
  236. package/packages/flow-list/.DS_Store +0 -0
  237. package/packages/form/.DS_Store +0 -0
  238. package/packages/login/.DS_Store +0 -0
  239. package/packages/main/.DS_Store +0 -0
  240. package/packages/main/src/.DS_Store +0 -0
  241. package/packages/menu/.DS_Store +0 -0
  242. package/packages/scrollbar/.DS_Store +0 -0
  243. package/packages/select/.DS_Store +0 -0
  244. package/packages/selector/.DS_Store +0 -0
  245. package/packages/selector-panel/.DS_Store +0 -0
  246. package/packages/theme-chalk/src/.DS_Store +0 -0
  247. package/packages/upload/.DS_Store +0 -0
  248. package/src/.DS_Store +0 -0
  249. package/src/utils/.DS_Store +0 -0
@@ -1,640 +1,640 @@
1
- <template>
2
- <div class="es-flow-index task-union-examine" v-loading="loading">
3
- <el-form
4
- ref="infoList"
5
- :model="infoList"
6
- class="demo-dynamic"
7
- label-width="120px"
8
- >
9
- <el-form-item v-if="isSinglePage" prop="opinion" label="意见">
10
- <CommonOpinions @change="(val) => (opinion = val)" />
11
- </el-form-item>
12
- <el-form-item
13
- v-if="isHideCurrentOrg == 0"
14
- :prop="type != 'takeAdvice' ? 'nextOtherOrgObj' : 'nextCurrentOrgObj'"
15
- :label="
16
- type == 'takeAdvice'
17
- ? currentOrgName
18
- ? currentOrgName
19
- : '本单位'
20
- : type == 'startDraf'
21
- ? '呈送单位/对象'
22
- : type === 'taskReview'
23
- ? '复核人'
24
- : type === 'twoOfficesDispatch'
25
- ? '报送单位'
26
- : '联合单位'
27
- "
28
- >
29
- <SelectUser
30
- :nextUser="
31
- type != 'takeAdvice'
32
- ? infoList.nextOtherOrgObj
33
- : infoList.nextCurrentOrgObj
34
- "
35
- :multiple="newMultiple"
36
- :mix="currentMix"
37
- :isUnionSeal="type == 'unionSeal'"
38
- :selectUserList="unionSealData || []"
39
- @change="
40
- changeSelectUser(
41
- $event,
42
- type != 'takeAdvice' ? 'nextOtherOrgObj' : 'nextCurrentOrgObj'
43
- )
44
- "
45
- :types="
46
- type == 'takeAdvice'
47
- ? currentOrgTabs.length > 0
48
- ? currentOrgTabs
49
- : ['department', 'employee']
50
- : type == 'startDraf'
51
- ? ['enterprise', 'employee']
52
- : ['enterprise']
53
- "
54
- :params="type == 'startDraf' || type == 'unionExamine'?otherParams:params"
55
- :tabs="currentOrgTabsParam"
56
- :disabled="disabled"
57
- :onlyName="onlyName"
58
- />
59
- </el-form-item>
60
- <el-form-item
61
- prop="nextOtherOrgObj"
62
- v-if="isHideOtherOrg == 0 && type == 'takeAdvice'"
63
- :label="otherOrgName ? otherOrgName : '外单位'"
64
- >
65
- <SelectUser
66
- :nextUser="infoList.nextOtherOrgObj"
67
- :multiple="newMultiple"
68
- @change="changeSelectUser($event, 'nextOtherOrgObj')"
69
- :mix="otherMix"
70
- :disableds="otherOrgDisabledObjId"
71
- :types="
72
- foreignOrgTabs.length > 0
73
- ? foreignOrgTabs
74
- : isChoiceOtherOrgDept == 'true'
75
- ? ['enterprise', 'department']
76
- : ['enterprise']
77
- "
78
- :params="otherParams"
79
- :tabs="foreignOrgTabsParam"
80
- />
81
- </el-form-item>
82
- <el-form-item
83
- prop="noticeType"
84
- label="通知方式"
85
- :rules="[
86
- { required: false, message: `请选择通知方式`, trigger: 'blur' }
87
- ]"
88
- >
89
- <el-checkbox-group
90
- v-model="infoList.noticeType"
91
- style="display: contents"
92
- >
93
- <el-checkbox
94
- v-for="item of infoList.noticeList"
95
- :key="item.cciValue"
96
- :label="item.cciValue"
97
- :disabled="
98
- readOnlyNotificationType
99
- ? readOnlyNotificationType.indexOf(item.cciValue) != -1
100
- : false
101
- "
102
- >
103
- {{ item.shortName }}
104
- </el-checkbox>
105
- </el-checkbox-group>
106
- </el-form-item>
107
- <el-form-item
108
- v-show="infoList.noticeType.length != 0"
109
- prop="noticeInfo"
110
- label="通知消息"
111
- >
112
- <es-input
113
- style="
114
- border-color: #ccc;
115
- padding: 5px;
116
- border-radius: 5px;
117
- font-size: 13px;
118
- "
119
- type="textarea"
120
- v-model="infoList.noticeInfo"
121
- :readonly="notificationMessageReadOnly"
122
- />
123
- <!-- <span>{{ infoList.noticeInfo }}</span> -->
124
- </el-form-item>
125
- </el-form>
126
- <div style="text-align: right">
127
- <el-button type="primary" size="small" @click="subMit"> 确定 </el-button>
128
- <el-button @click="quit" size="small"> 取消 </el-button>
129
- </div>
130
- </div>
131
- </template>
132
-
133
- <script>
134
- import CommonOpinions from './CommonOpinions.vue';
135
- import SelectUser from '../selectUser.vue';
136
- import {
137
- findSysCodes,
138
- getNotificationMsg,
139
- toTaskTakeAdvice,
140
- findCodeValues,
141
- toTaskStartDraft,
142
- toTaskReview,
143
- taskStartDraft,
144
- toTaskUnionSeal,
145
- taskReview,
146
- toTwoOfficesDispatch,
147
- taskUnionSeal,
148
- twoOfficesDispatch,
149
- taskUnionExamine,
150
- taskTakeAdvice,
151
- toTaskUnionExamine
152
- } from 'eoss-ui/src/config/api';
153
- import util from 'eoss-ui/src/utils/util.js';
154
- export default {
155
- name: 'TaskUnionExamine',
156
- components: {
157
- [CommonOpinions.name]: CommonOpinions,
158
- [SelectUser.name]: SelectUser
159
- },
160
- props: {
161
- pendingId: { type: String, default: '' },
162
- type: { type: String, default: '' },
163
- defaultOpinion: { type: String, default: '' },
164
- oldOption: { type: String, default: '' },
165
- disabled: { type: Boolean, default: false },
166
- simpleTips: { type: Boolean, default: true },
167
- multiple: { type: Boolean, default: true }
168
- },
169
- inheritAttrs: false,
170
- data() {
171
- return {
172
- opinion: '', //办理意见
173
- readOnlyNotificationType: '',
174
- notificationMessageReadOnly: false,
175
- otherMix: false,
176
- currentMix: false,
177
- infoList: {
178
- nextOtherOrgObj: [],
179
- nextCurrentOrgObj: [],
180
- noticeType: [],
181
- noticeInfo: '',
182
- opinion: ''
183
- },
184
- onlyName: '',
185
- unionSealData:[],
186
- currentOrgTabs: [],
187
- foreignOrgTabs: [],
188
- foreignOrgTabsParam: {},
189
- currentOrgTabsParam: {},
190
- currentOrgProcessKey: '',
191
- otherOrgDisabledObjId:[],
192
- isSubFlow: true,
193
- choiceDeptId: '',
194
- choiceOrgId: '',
195
- isSinglePage: false,
196
- isChoiceOtherOrgDept: '',
197
- currentOrgName: '',
198
- otherOrgName: '',
199
- newMultiple: true,
200
- params: { filid: 'all' },
201
- isHideOtherOrg: '',
202
- isHideCurrentOrg: 0,
203
- isOpinionRequired: 0,
204
- otherParams: { filid: 'other' },
205
- loading: false
206
- };
207
- },
208
- mounted() {
209
- this.loading = true;
210
- this.newMultiple = this.multiple;
211
- this.opinion = this.oldOption
212
- this.getNodeType();
213
- if (this.type === 'taskReview') return this.getTaskReview();
214
- this.getInfo();
215
- },
216
- methods: {
217
- isMultiple(val) {
218
- if (val == 7 || val == 9 || val == 11) {
219
- this.newMultiple = false;
220
- }
221
- },
222
- subTaskReview() {
223
- let {
224
- infoList: { nextOtherOrgObj, noticeType, noticeInfo },
225
- businessId,
226
- opinion,
227
- isSubFlow,
228
- currentOrgProcessKey,
229
- pendingId
230
- } = this;
231
- let params = {
232
- url: taskReview,
233
- data: {
234
- nextUserId: nextOtherOrgObj.join(','),
235
- notificationType: noticeType.join(','),
236
- notificationMsg: noticeInfo,
237
- opinion,
238
- isSubFlow,
239
- businessId,
240
- currentOrgProcessKey,
241
- pendingId
242
- },
243
- method: 'POST'
244
- };
245
- this.loading = true;
246
- util
247
- .ajax(params)
248
- .then((res) => {
249
- const { message, status } = res;
250
- this.loading = false;
251
- if (status === 'success') {
252
- this.simpleTips && this.$message.success('提交成功');
253
- this.quit(true);
254
- } else {
255
- this.$message.error(message || '系统错误,请联系管理员!');
256
- }
257
- })
258
- .catch((err) => {
259
- this.loading = false;
260
- if (err.message && err.message !== 'canceled') {
261
- this.$message.error(err.message);
262
- }
263
- });
264
- },
265
- getTaskReview() {
266
- let params = {
267
- url: toTaskReview,
268
- params: { pendingId: this.pendingId }
269
- };
270
- util
271
- .ajax(params)
272
- .then((res) => {
273
- const { status, message } = res;
274
- this.loading = false;
275
- if (status === 'success') {
276
- const {
277
- data: { initiatorUser, taskExamine }
278
- } = res;
279
- if(taskExamine.opinion){
280
- this.opinion = taskExamine.opinion;
281
- }
282
- this.infoList.nextOtherOrgObj.push(initiatorUser.userId);
283
- this.onlyName = initiatorUser.username;
284
- this.isSubFlow = taskExamine.isSubFlow;
285
- this.currentOrgProcessKey = taskExamine.currentOrgProcessKey;
286
- this.getFind();
287
- this.getMessage();
288
- } else {
289
- this.$message.error(message || '系统错误,请联系管理员!');
290
- }
291
- })
292
- .catch((err) => {
293
- this.loading = false;
294
- if (err.message && err.message !== 'canceled') {
295
- this.$message.error(err.message);
296
- }
297
- });
298
- },
299
- getInfo() {
300
- let params = {
301
- url:
302
- this.type == 'takeAdvice'
303
- ? toTaskTakeAdvice
304
- : this.type === 'startDraf'
305
- ? toTaskStartDraft
306
- : this.type == 'unionSeal'
307
- ? toTaskUnionSeal
308
- : this.type == 'twoOfficesDispatch'
309
- ? toTwoOfficesDispatch
310
- : toTaskUnionExamine,
311
- params: { pendingId: this.pendingId },
312
- headers: { Accept: 'application/json,text/plain' }
313
- };
314
- util
315
- .ajax(params)
316
- .then((res) => {
317
- const { message, status } = res;
318
- this.loading = false;
319
- if (status == 'success') {
320
- const {
321
- data: {
322
- choiceDeptId,
323
- choiceOrgId,
324
- taskExamine,
325
- unionDispatchOrgName,
326
- readOnlyNotificationType,
327
- notificationMessageReadOnly,
328
- unionDispatchOrgId,
329
- otherOrgDisabledObjId,
330
- orgNames,
331
- nodeInfoMap: {
332
- nodeExtAttr: {
333
- userSelectionType,
334
- isHideOtherOrg,
335
- isHideCurrentOrg,
336
- isOpinionRequired
337
- }
338
- }
339
- }
340
- } = res;
341
- if(otherOrgDisabledObjId){
342
- this.otherOrgDisabledObjId = otherOrgDisabledObjId.split(',')
343
- }
344
- if (res.data.customizedConfig) {
345
- if (res.data.customizedConfig.currentOrgSelectorCustomized) {
346
- this.currentMix =
347
- res.data.customizedConfig.currentOrgSelectorSelectMix ==
348
- 'true';
349
- this.currentOrgTabs =
350
- res.data.customizedConfig.currentOrgSelectorItemList.split(
351
- ','
352
- );
353
- let param =
354
- res.data.customizedConfig.currentOrgSelectorRangeList.split(
355
- ','
356
- );
357
- this.currentOrgTabs.map((x, i) => {
358
- this.params[x] = {
359
- filid:
360
- param[i] == 'my'
361
- ? (this.params.filid = JSON.parse(
362
- util.getStorage('mainConfig')
363
- ).userModel.orgId)
364
- : param[i]
365
- };
366
- });
367
- } else {
368
- if (this.type == 'takeAdvice') {
369
- this.params.filid = JSON.parse(
370
- util.getStorage('mainConfig')
371
- ).userModel.orgId;
372
- }
373
- }
374
-
375
- if (res.data.customizedConfig.foreignOrgSelectorCustomized) {
376
- this.otherMix =
377
- res.data.customizedConfig.foreignOrgSelectorSelectMix ==
378
- 'true';
379
- this.foreignOrgTabs =
380
- res.data.customizedConfig.foreignOrgSelectorItemList.split(
381
- ','
382
- );
383
- let param =
384
- res.data.customizedConfig.foreignOrgSelectorRangeList.split(
385
- ','
386
- );
387
- this.foreignOrgTabs.map((x, i) => {
388
- this.otherParams[x] = { filid: param[i] };
389
- });
390
- }
391
- }
392
- this.readOnlyNotificationType = readOnlyNotificationType;
393
- this.notificationMessageReadOnly =
394
- notificationMessageReadOnly == 'true';
395
- this.isSinglePage = taskExamine.isSinglePage;
396
- this.isSubFlow = taskExamine.isSubFlow;
397
- if(taskExamine.opinion){
398
- this.opinion = taskExamine.opinion;
399
- }
400
- this.choiceDeptId = choiceDeptId;
401
- this.choiceOrgId = choiceOrgId;
402
- if (this.type == 'takeAdvice' || this.type == 'startDraf') {
403
- this.currentOrgName = res.data.currentOrgName;
404
- this.otherOrgName = res.data.otherOrgName;
405
- this.isChoiceOtherOrgDept = res.data.isChoiceOtherOrgDept;
406
- this.isHideOtherOrg = isHideOtherOrg;
407
- this.isHideCurrentOrg = isHideCurrentOrg;
408
- }
409
- this.isOpinionRequired = isOpinionRequired;
410
- if (this.type == 'unionSeal') {
411
- let names = unionDispatchOrgName.split(',')
412
- let ids = unionDispatchOrgId.split(',')
413
- names.map((x,i) => {
414
- if(x){
415
- this.unionSealData.push({
416
- showname: x,
417
- showid: ids[i]
418
- })
419
-
420
- }
421
- })
422
- // this.onlyName = unionDispatchOrgName;
423
- // this.infoList.nextOtherOrgObj.push(unionDispatchOrgId);
424
- }
425
- if (this.type == 'twoOfficesDispatch') {
426
- this.onlyName = orgNames;
427
- this.infoList.nextOtherOrgObj.push(taskExamine.nextOtherOrgObj);
428
- }
429
- this.isMultiple(userSelectionType);
430
- this.getFind();
431
- this.getMessage();
432
- } else {
433
- this.$message.error(message || '系统错误,请联系管理员!');
434
- }
435
- })
436
- .catch((err) => {
437
- this.loading = false;
438
- if (err.message && err.message !== 'canceled') {
439
- this.$message.error(err.message);
440
- }
441
- });
442
- },
443
- subMit() {
444
- // if (
445
- // this.infoList.nextOtherOrgObjName == '' ||
446
- // this.infoList.nextOtherOrgObjName.length == 0
447
- // )
448
- // return this.$message.warning('请选择联合单位');
449
- if (this.type === 'taskReview') return this.subTaskReview();
450
- let {
451
- infoList: {
452
- nextCurrentOrgObj,
453
- nextOtherOrgObj,
454
- noticeType,
455
- noticeInfo
456
- },
457
- isOpinionRequired,
458
- opinion,
459
- type,
460
- isHideOtherOrg,
461
- choiceDeptId,
462
- choiceOrgId,
463
- isHideCurrentOrg,
464
- isSubFlow,
465
- pendingId
466
- } = this;
467
- if (
468
- type == 'takeAdvice' &&
469
- !nextCurrentOrgObj &&
470
- isHideCurrentOrg == 0 &&
471
- isHideOtherOrg == 0 &&
472
- !nextOtherOrgObj
473
- ) {
474
- return this.$message.warning('请选择处理对象!');
475
- } else if (
476
- isHideCurrentOrg == 0 &&
477
- !nextOtherOrgObj &&
478
- !nextCurrentOrgObj
479
- ) {
480
- return this.$message.warning('请选择处理对象!');
481
- }
482
-
483
- if (isOpinionRequired == 1 && (opinion == '' || opinion == null)) {
484
- return this.$message.warning('当前步骤必须输入意见!');
485
- }
486
- // if (this.type != 'startDraf' && this.type != 'unionSeal' && this.type != 'twoOfficesDispatch')
487
- // return this.$message.warning('暂未开放,敬请期待!');
488
- const param = {
489
- url:
490
- this.type === 'startDraf'
491
- ? taskStartDraft
492
- : this.type == 'unionSeal'
493
- ? taskUnionSeal
494
- : this.type === 'twoOfficesDispatch'
495
- ? twoOfficesDispatch
496
- : this.type == 'takeAdvice'
497
- ? taskTakeAdvice
498
- : taskUnionExamine,
499
- data: {
500
- opinion,
501
- pendingId,
502
- nextOtherOrgObj:this.type == 'unionSeal'?this.unionSealData.map(x => x.showid).join(',') : Array.isArray(nextOtherOrgObj)
503
- ? nextOtherOrgObj.join(',')
504
- : nextOtherOrgObj,
505
- nextCurrentOrgObj: Array.isArray(nextCurrentOrgObj)
506
- ? nextCurrentOrgObj.join(',')
507
- : nextCurrentOrgObj,
508
- notificationMsg: noticeInfo,
509
- notificationType: noticeType.join(','),
510
- choiceDeptId,
511
- isSubFlow,
512
- choiceOrgId
513
- },
514
- headers: { Accept: 'application/json,text/plain' },
515
- method: 'POST'
516
- };
517
- this.loading = true;
518
- util
519
- .ajax(param)
520
- .then((res) => {
521
- const { message, status } = res;
522
- this.loading = false;
523
- if (status == 'success') {
524
- this.simpleTips && this.$message.success('提交成功');
525
- this.quit(true);
526
- } else {
527
- this.$message.error(message || '系统错误,请联系管理员!');
528
- }
529
- })
530
- .catch((err) => {
531
- this.loading = false;
532
- if (err.message && err.message !== 'canceled') {
533
- this.$message.error(err.message);
534
- }
535
- });
536
- },
537
- quit(val) {
538
- if (val === true) return this.$emit('cancel', val);
539
- this.$emit('cancel');
540
- },
541
- changeSelectUser(val, type) {
542
- const { nextUser, options } = val;
543
- let newNextUser = [];
544
- let obj = {};
545
- options.map((item) => {
546
- if (obj[item.stype]) {
547
- obj[item.stype].push(item.id);
548
- } else {
549
- obj[item.stype] = [item.id];
550
- }
551
- // if (newNextUser) {
552
- // newNextUser += `,${item.stype}-${item.id}`;
553
- // } else {
554
- // newNextUser = `${item.stype}-${item.id}`;
555
- // }
556
- });
557
- for (let key in obj) {
558
- newNextUser.push(`${key}-${obj[key].join(',')}`);
559
- }
560
-
561
- this.infoList[type] = newNextUser.join('|');
562
- },
563
- getNodeType() {
564
- util
565
- .ajax({
566
- url: findCodeValues,
567
- params: {
568
- ccCode: 'notification_type',
569
- userId: util.getStorage('userId'),
570
- pendingId:this.pendingId
571
- }
572
- })
573
- .then((res) => {
574
- const { status, data } = res;
575
- this.loading = false;
576
- if (status === 'success') {
577
- this.infoList.noticeList = data;
578
- }
579
- })
580
- .catch((err) => {
581
- this.loading = false;
582
- if (err.message && err.message !== 'canceled') {
583
- this.$message.error(err.message);
584
- }
585
- });
586
- },
587
- //获取通知信息
588
- getMessage() {
589
- let params = {
590
- pendingId: this.pendingId
591
- };
592
- util
593
- .ajax({ url: getNotificationMsg, params, methods: 'post' })
594
- .then((res) => {
595
- if (res.status === 'success') {
596
- this.infoList.noticeInfo = res.message;
597
- }
598
- this.loading = false;
599
- })
600
- .catch((err) => {
601
- this.loading = false;
602
- if (err.message && err.message !== 'canceled') {
603
- this.$message.error(err.message);
604
- }
605
- });
606
- },
607
- getFind() {
608
- util
609
- .ajax({
610
- url: findSysCodes
611
- })
612
- .then((res) => {
613
- const { status, message } = res;
614
- if (status === 'success') {
615
- this.infoList.noticeType = message.split(',');
616
- let arr = [];
617
- this.infoList.noticeList.map((item) => {
618
- this.infoList.noticeType.map((x) => {
619
- if (x == item.cciValue) {
620
- arr.push(x);
621
- }
622
- });
623
- });
624
- this.infoList.noticeType = arr;
625
- } else {
626
- this.$message.error(message || '系统错误,请联系管理员!');
627
- }
628
- })
629
- .catch((err) => {
630
- this.loading = false;
631
- if (err.message && err.message !== 'canceled') {
632
- this.$message.error(err.message);
633
- }
634
- });
635
- }
636
- }
637
- };
638
- </script>
639
-
640
- <style></style>
1
+ <template>
2
+ <div class="es-flow-index task-union-examine" v-loading="loading">
3
+ <el-form
4
+ ref="infoList"
5
+ :model="infoList"
6
+ class="demo-dynamic"
7
+ label-width="120px"
8
+ >
9
+ <el-form-item v-if="isSinglePage" prop="opinion" label="意见">
10
+ <CommonOpinions @change="(val) => (opinion = val)" />
11
+ </el-form-item>
12
+ <el-form-item
13
+ v-if="isHideCurrentOrg == 0"
14
+ :prop="type != 'takeAdvice' ? 'nextOtherOrgObj' : 'nextCurrentOrgObj'"
15
+ :label="
16
+ type == 'takeAdvice'
17
+ ? currentOrgName
18
+ ? currentOrgName
19
+ : '本单位'
20
+ : type == 'startDraf'
21
+ ? '呈送单位/对象'
22
+ : type === 'taskReview'
23
+ ? '复核人'
24
+ : type === 'twoOfficesDispatch'
25
+ ? '报送单位'
26
+ : '联合单位'
27
+ "
28
+ >
29
+ <SelectUser
30
+ :nextUser="
31
+ type != 'takeAdvice'
32
+ ? infoList.nextOtherOrgObj
33
+ : infoList.nextCurrentOrgObj
34
+ "
35
+ :multiple="newMultiple"
36
+ :mix="currentMix"
37
+ :isUnionSeal="type == 'unionSeal'"
38
+ :selectUserList="unionSealData || []"
39
+ @change="
40
+ changeSelectUser(
41
+ $event,
42
+ type != 'takeAdvice' ? 'nextOtherOrgObj' : 'nextCurrentOrgObj'
43
+ )
44
+ "
45
+ :types="
46
+ type == 'takeAdvice'
47
+ ? currentOrgTabs.length > 0
48
+ ? currentOrgTabs
49
+ : ['department', 'employee']
50
+ : type == 'startDraf'
51
+ ? ['enterprise', 'employee']
52
+ : ['enterprise']
53
+ "
54
+ :params="type == 'startDraf' || type == 'unionExamine'?otherParams:params"
55
+ :tabs="currentOrgTabsParam"
56
+ :disabled="disabled"
57
+ :onlyName="onlyName"
58
+ />
59
+ </el-form-item>
60
+ <el-form-item
61
+ prop="nextOtherOrgObj"
62
+ v-if="isHideOtherOrg == 0 && type == 'takeAdvice'"
63
+ :label="otherOrgName ? otherOrgName : '外单位'"
64
+ >
65
+ <SelectUser
66
+ :nextUser="infoList.nextOtherOrgObj"
67
+ :multiple="newMultiple"
68
+ @change="changeSelectUser($event, 'nextOtherOrgObj')"
69
+ :mix="otherMix"
70
+ :disableds="otherOrgDisabledObjId"
71
+ :types="
72
+ foreignOrgTabs.length > 0
73
+ ? foreignOrgTabs
74
+ : isChoiceOtherOrgDept == 'true'
75
+ ? ['enterprise', 'department']
76
+ : ['enterprise']
77
+ "
78
+ :params="otherParams"
79
+ :tabs="foreignOrgTabsParam"
80
+ />
81
+ </el-form-item>
82
+ <el-form-item
83
+ prop="noticeType"
84
+ label="通知方式"
85
+ :rules="[
86
+ { required: false, message: `请选择通知方式`, trigger: 'blur' }
87
+ ]"
88
+ >
89
+ <el-checkbox-group
90
+ v-model="infoList.noticeType"
91
+ style="display: contents"
92
+ >
93
+ <el-checkbox
94
+ v-for="item of infoList.noticeList"
95
+ :key="item.cciValue"
96
+ :label="item.cciValue"
97
+ :disabled="
98
+ readOnlyNotificationType
99
+ ? readOnlyNotificationType.indexOf(item.cciValue) != -1
100
+ : false
101
+ "
102
+ >
103
+ {{ item.shortName }}
104
+ </el-checkbox>
105
+ </el-checkbox-group>
106
+ </el-form-item>
107
+ <el-form-item
108
+ v-show="infoList.noticeType.length != 0"
109
+ prop="noticeInfo"
110
+ label="通知消息"
111
+ >
112
+ <es-input
113
+ style="
114
+ border-color: #ccc;
115
+ padding: 5px;
116
+ border-radius: 5px;
117
+ font-size: 13px;
118
+ "
119
+ type="textarea"
120
+ v-model="infoList.noticeInfo"
121
+ :readonly="notificationMessageReadOnly"
122
+ />
123
+ <!-- <span>{{ infoList.noticeInfo }}</span> -->
124
+ </el-form-item>
125
+ </el-form>
126
+ <div style="text-align: right">
127
+ <el-button type="primary" size="small" @click="subMit"> 确定 </el-button>
128
+ <el-button @click="quit" size="small"> 取消 </el-button>
129
+ </div>
130
+ </div>
131
+ </template>
132
+
133
+ <script>
134
+ import CommonOpinions from './CommonOpinions.vue';
135
+ import SelectUser from '../selectUser.vue';
136
+ import {
137
+ findSysCodes,
138
+ getNotificationMsg,
139
+ toTaskTakeAdvice,
140
+ findCodeValues,
141
+ toTaskStartDraft,
142
+ toTaskReview,
143
+ taskStartDraft,
144
+ toTaskUnionSeal,
145
+ taskReview,
146
+ toTwoOfficesDispatch,
147
+ taskUnionSeal,
148
+ twoOfficesDispatch,
149
+ taskUnionExamine,
150
+ taskTakeAdvice,
151
+ toTaskUnionExamine
152
+ } from 'eoss-ui/src/config/api';
153
+ import util from 'eoss-ui/src/utils/util.js';
154
+ export default {
155
+ name: 'TaskUnionExamine',
156
+ components: {
157
+ [CommonOpinions.name]: CommonOpinions,
158
+ [SelectUser.name]: SelectUser
159
+ },
160
+ props: {
161
+ pendingId: { type: String, default: '' },
162
+ type: { type: String, default: '' },
163
+ defaultOpinion: { type: String, default: '' },
164
+ oldOption: { type: String, default: '' },
165
+ disabled: { type: Boolean, default: false },
166
+ simpleTips: { type: Boolean, default: true },
167
+ multiple: { type: Boolean, default: true }
168
+ },
169
+ inheritAttrs: false,
170
+ data() {
171
+ return {
172
+ opinion: '', //办理意见
173
+ readOnlyNotificationType: '',
174
+ notificationMessageReadOnly: false,
175
+ otherMix: false,
176
+ currentMix: false,
177
+ infoList: {
178
+ nextOtherOrgObj: [],
179
+ nextCurrentOrgObj: [],
180
+ noticeType: [],
181
+ noticeInfo: '',
182
+ opinion: ''
183
+ },
184
+ onlyName: '',
185
+ unionSealData:[],
186
+ currentOrgTabs: [],
187
+ foreignOrgTabs: [],
188
+ foreignOrgTabsParam: {},
189
+ currentOrgTabsParam: {},
190
+ currentOrgProcessKey: '',
191
+ otherOrgDisabledObjId:[],
192
+ isSubFlow: true,
193
+ choiceDeptId: '',
194
+ choiceOrgId: '',
195
+ isSinglePage: false,
196
+ isChoiceOtherOrgDept: '',
197
+ currentOrgName: '',
198
+ otherOrgName: '',
199
+ newMultiple: true,
200
+ params: { filid: 'all' },
201
+ isHideOtherOrg: '',
202
+ isHideCurrentOrg: 0,
203
+ isOpinionRequired: 0,
204
+ otherParams: { filid: 'other' },
205
+ loading: false
206
+ };
207
+ },
208
+ mounted() {
209
+ this.loading = true;
210
+ this.newMultiple = this.multiple;
211
+ this.opinion = this.oldOption
212
+ this.getNodeType();
213
+ if (this.type === 'taskReview') return this.getTaskReview();
214
+ this.getInfo();
215
+ },
216
+ methods: {
217
+ isMultiple(val) {
218
+ if (val == 7 || val == 9 || val == 11) {
219
+ this.newMultiple = false;
220
+ }
221
+ },
222
+ subTaskReview() {
223
+ let {
224
+ infoList: { nextOtherOrgObj, noticeType, noticeInfo },
225
+ businessId,
226
+ opinion,
227
+ isSubFlow,
228
+ currentOrgProcessKey,
229
+ pendingId
230
+ } = this;
231
+ let params = {
232
+ url: taskReview,
233
+ data: {
234
+ nextUserId: nextOtherOrgObj.join(','),
235
+ notificationType: noticeType.join(','),
236
+ notificationMsg: noticeInfo,
237
+ opinion,
238
+ isSubFlow,
239
+ businessId,
240
+ currentOrgProcessKey,
241
+ pendingId
242
+ },
243
+ method: 'POST'
244
+ };
245
+ this.loading = true;
246
+ util
247
+ .ajax(params)
248
+ .then((res) => {
249
+ const { message, status } = res;
250
+ this.loading = false;
251
+ if (status === 'success') {
252
+ this.simpleTips && this.$message.success('提交成功');
253
+ this.quit(true);
254
+ } else {
255
+ this.$message.error(message || '系统错误,请联系管理员!');
256
+ }
257
+ })
258
+ .catch((err) => {
259
+ this.loading = false;
260
+ if (err.message && err.message !== 'canceled') {
261
+ this.$message.error(err.message);
262
+ }
263
+ });
264
+ },
265
+ getTaskReview() {
266
+ let params = {
267
+ url: toTaskReview,
268
+ params: { pendingId: this.pendingId }
269
+ };
270
+ util
271
+ .ajax(params)
272
+ .then((res) => {
273
+ const { status, message } = res;
274
+ this.loading = false;
275
+ if (status === 'success') {
276
+ const {
277
+ data: { initiatorUser, taskExamine }
278
+ } = res;
279
+ if(taskExamine.opinion){
280
+ this.opinion = taskExamine.opinion;
281
+ }
282
+ this.infoList.nextOtherOrgObj.push(initiatorUser.userId);
283
+ this.onlyName = initiatorUser.username;
284
+ this.isSubFlow = taskExamine.isSubFlow;
285
+ this.currentOrgProcessKey = taskExamine.currentOrgProcessKey;
286
+ this.getFind();
287
+ this.getMessage();
288
+ } else {
289
+ this.$message.error(message || '系统错误,请联系管理员!');
290
+ }
291
+ })
292
+ .catch((err) => {
293
+ this.loading = false;
294
+ if (err.message && err.message !== 'canceled') {
295
+ this.$message.error(err.message);
296
+ }
297
+ });
298
+ },
299
+ getInfo() {
300
+ let params = {
301
+ url:
302
+ this.type == 'takeAdvice'
303
+ ? toTaskTakeAdvice
304
+ : this.type === 'startDraf'
305
+ ? toTaskStartDraft
306
+ : this.type == 'unionSeal'
307
+ ? toTaskUnionSeal
308
+ : this.type == 'twoOfficesDispatch'
309
+ ? toTwoOfficesDispatch
310
+ : toTaskUnionExamine,
311
+ params: { pendingId: this.pendingId },
312
+ headers: { Accept: 'application/json,text/plain' }
313
+ };
314
+ util
315
+ .ajax(params)
316
+ .then((res) => {
317
+ const { message, status } = res;
318
+ this.loading = false;
319
+ if (status == 'success') {
320
+ const {
321
+ data: {
322
+ choiceDeptId,
323
+ choiceOrgId,
324
+ taskExamine,
325
+ unionDispatchOrgName,
326
+ readOnlyNotificationType,
327
+ notificationMessageReadOnly,
328
+ unionDispatchOrgId,
329
+ otherOrgDisabledObjId,
330
+ orgNames,
331
+ nodeInfoMap: {
332
+ nodeExtAttr: {
333
+ userSelectionType,
334
+ isHideOtherOrg,
335
+ isHideCurrentOrg,
336
+ isOpinionRequired
337
+ }
338
+ }
339
+ }
340
+ } = res;
341
+ if(otherOrgDisabledObjId){
342
+ this.otherOrgDisabledObjId = otherOrgDisabledObjId.split(',')
343
+ }
344
+ if (res.data.customizedConfig) {
345
+ if (res.data.customizedConfig.currentOrgSelectorCustomized) {
346
+ this.currentMix =
347
+ res.data.customizedConfig.currentOrgSelectorSelectMix ==
348
+ 'true';
349
+ this.currentOrgTabs =
350
+ res.data.customizedConfig.currentOrgSelectorItemList.split(
351
+ ','
352
+ );
353
+ let param =
354
+ res.data.customizedConfig.currentOrgSelectorRangeList.split(
355
+ ','
356
+ );
357
+ this.currentOrgTabs.map((x, i) => {
358
+ this.params[x] = {
359
+ filid:
360
+ param[i] == 'my'
361
+ ? (this.params.filid = JSON.parse(
362
+ util.getStorage('mainConfig')
363
+ ).userModel.orgId)
364
+ : param[i]
365
+ };
366
+ });
367
+ } else {
368
+ if (this.type == 'takeAdvice') {
369
+ this.params.filid = JSON.parse(
370
+ util.getStorage('mainConfig')
371
+ ).userModel.orgId;
372
+ }
373
+ }
374
+
375
+ if (res.data.customizedConfig.foreignOrgSelectorCustomized) {
376
+ this.otherMix =
377
+ res.data.customizedConfig.foreignOrgSelectorSelectMix ==
378
+ 'true';
379
+ this.foreignOrgTabs =
380
+ res.data.customizedConfig.foreignOrgSelectorItemList.split(
381
+ ','
382
+ );
383
+ let param =
384
+ res.data.customizedConfig.foreignOrgSelectorRangeList.split(
385
+ ','
386
+ );
387
+ this.foreignOrgTabs.map((x, i) => {
388
+ this.otherParams[x] = { filid: param[i] };
389
+ });
390
+ }
391
+ }
392
+ this.readOnlyNotificationType = readOnlyNotificationType;
393
+ this.notificationMessageReadOnly =
394
+ notificationMessageReadOnly == 'true';
395
+ this.isSinglePage = taskExamine.isSinglePage;
396
+ this.isSubFlow = taskExamine.isSubFlow;
397
+ if(taskExamine.opinion){
398
+ this.opinion = taskExamine.opinion;
399
+ }
400
+ this.choiceDeptId = choiceDeptId;
401
+ this.choiceOrgId = choiceOrgId;
402
+ if (this.type == 'takeAdvice' || this.type == 'startDraf') {
403
+ this.currentOrgName = res.data.currentOrgName;
404
+ this.otherOrgName = res.data.otherOrgName;
405
+ this.isChoiceOtherOrgDept = res.data.isChoiceOtherOrgDept;
406
+ this.isHideOtherOrg = isHideOtherOrg;
407
+ this.isHideCurrentOrg = isHideCurrentOrg;
408
+ }
409
+ this.isOpinionRequired = isOpinionRequired;
410
+ if (this.type == 'unionSeal') {
411
+ let names = unionDispatchOrgName.split(',')
412
+ let ids = unionDispatchOrgId.split(',')
413
+ names.map((x,i) => {
414
+ if(x){
415
+ this.unionSealData.push({
416
+ showname: x,
417
+ showid: ids[i]
418
+ })
419
+
420
+ }
421
+ })
422
+ // this.onlyName = unionDispatchOrgName;
423
+ // this.infoList.nextOtherOrgObj.push(unionDispatchOrgId);
424
+ }
425
+ if (this.type == 'twoOfficesDispatch') {
426
+ this.onlyName = orgNames;
427
+ this.infoList.nextOtherOrgObj.push(taskExamine.nextOtherOrgObj);
428
+ }
429
+ this.isMultiple(userSelectionType);
430
+ this.getFind();
431
+ this.getMessage();
432
+ } else {
433
+ this.$message.error(message || '系统错误,请联系管理员!');
434
+ }
435
+ })
436
+ .catch((err) => {
437
+ this.loading = false;
438
+ if (err.message && err.message !== 'canceled') {
439
+ this.$message.error(err.message);
440
+ }
441
+ });
442
+ },
443
+ subMit() {
444
+ // if (
445
+ // this.infoList.nextOtherOrgObjName == '' ||
446
+ // this.infoList.nextOtherOrgObjName.length == 0
447
+ // )
448
+ // return this.$message.warning('请选择联合单位');
449
+ if (this.type === 'taskReview') return this.subTaskReview();
450
+ let {
451
+ infoList: {
452
+ nextCurrentOrgObj,
453
+ nextOtherOrgObj,
454
+ noticeType,
455
+ noticeInfo
456
+ },
457
+ isOpinionRequired,
458
+ opinion,
459
+ type,
460
+ isHideOtherOrg,
461
+ choiceDeptId,
462
+ choiceOrgId,
463
+ isHideCurrentOrg,
464
+ isSubFlow,
465
+ pendingId
466
+ } = this;
467
+ if (
468
+ type == 'takeAdvice' &&
469
+ !nextCurrentOrgObj &&
470
+ isHideCurrentOrg == 0 &&
471
+ isHideOtherOrg == 0 &&
472
+ !nextOtherOrgObj
473
+ ) {
474
+ return this.$message.warning('请选择处理对象!');
475
+ } else if (
476
+ isHideCurrentOrg == 0 &&
477
+ !nextOtherOrgObj &&
478
+ !nextCurrentOrgObj
479
+ ) {
480
+ return this.$message.warning('请选择处理对象!');
481
+ }
482
+
483
+ if (isOpinionRequired == 1 && (opinion == '' || opinion == null)) {
484
+ return this.$message.warning('当前步骤必须输入意见!');
485
+ }
486
+ // if (this.type != 'startDraf' && this.type != 'unionSeal' && this.type != 'twoOfficesDispatch')
487
+ // return this.$message.warning('暂未开放,敬请期待!');
488
+ const param = {
489
+ url:
490
+ this.type === 'startDraf'
491
+ ? taskStartDraft
492
+ : this.type == 'unionSeal'
493
+ ? taskUnionSeal
494
+ : this.type === 'twoOfficesDispatch'
495
+ ? twoOfficesDispatch
496
+ : this.type == 'takeAdvice'
497
+ ? taskTakeAdvice
498
+ : taskUnionExamine,
499
+ data: {
500
+ opinion,
501
+ pendingId,
502
+ nextOtherOrgObj:this.type == 'unionSeal'?this.unionSealData.map(x => x.showid).join(',') : Array.isArray(nextOtherOrgObj)
503
+ ? nextOtherOrgObj.join(',')
504
+ : nextOtherOrgObj,
505
+ nextCurrentOrgObj: Array.isArray(nextCurrentOrgObj)
506
+ ? nextCurrentOrgObj.join(',')
507
+ : nextCurrentOrgObj,
508
+ notificationMsg: noticeInfo,
509
+ notificationType: noticeType.join(','),
510
+ choiceDeptId,
511
+ isSubFlow,
512
+ choiceOrgId
513
+ },
514
+ headers: { Accept: 'application/json,text/plain' },
515
+ method: 'POST'
516
+ };
517
+ this.loading = true;
518
+ util
519
+ .ajax(param)
520
+ .then((res) => {
521
+ const { message, status } = res;
522
+ this.loading = false;
523
+ if (status == 'success') {
524
+ this.simpleTips && this.$message.success('提交成功');
525
+ this.quit(true);
526
+ } else {
527
+ this.$message.error(message || '系统错误,请联系管理员!');
528
+ }
529
+ })
530
+ .catch((err) => {
531
+ this.loading = false;
532
+ if (err.message && err.message !== 'canceled') {
533
+ this.$message.error(err.message);
534
+ }
535
+ });
536
+ },
537
+ quit(val) {
538
+ if (val === true) return this.$emit('cancel', val);
539
+ this.$emit('cancel');
540
+ },
541
+ changeSelectUser(val, type) {
542
+ const { nextUser, options } = val;
543
+ let newNextUser = [];
544
+ let obj = {};
545
+ options.map((item) => {
546
+ if (obj[item.stype]) {
547
+ obj[item.stype].push(item.id);
548
+ } else {
549
+ obj[item.stype] = [item.id];
550
+ }
551
+ // if (newNextUser) {
552
+ // newNextUser += `,${item.stype}-${item.id}`;
553
+ // } else {
554
+ // newNextUser = `${item.stype}-${item.id}`;
555
+ // }
556
+ });
557
+ for (let key in obj) {
558
+ newNextUser.push(`${key}-${obj[key].join(',')}`);
559
+ }
560
+
561
+ this.infoList[type] = newNextUser.join('|');
562
+ },
563
+ getNodeType() {
564
+ util
565
+ .ajax({
566
+ url: findCodeValues,
567
+ params: {
568
+ ccCode: 'notification_type',
569
+ userId: util.getStorage('userId'),
570
+ pendingId:this.pendingId
571
+ }
572
+ })
573
+ .then((res) => {
574
+ const { status, data } = res;
575
+ this.loading = false;
576
+ if (status === 'success') {
577
+ this.infoList.noticeList = data;
578
+ }
579
+ })
580
+ .catch((err) => {
581
+ this.loading = false;
582
+ if (err.message && err.message !== 'canceled') {
583
+ this.$message.error(err.message);
584
+ }
585
+ });
586
+ },
587
+ //获取通知信息
588
+ getMessage() {
589
+ let params = {
590
+ pendingId: this.pendingId
591
+ };
592
+ util
593
+ .ajax({ url: getNotificationMsg, params, methods: 'post' })
594
+ .then((res) => {
595
+ if (res.status === 'success') {
596
+ this.infoList.noticeInfo = res.message;
597
+ }
598
+ this.loading = false;
599
+ })
600
+ .catch((err) => {
601
+ this.loading = false;
602
+ if (err.message && err.message !== 'canceled') {
603
+ this.$message.error(err.message);
604
+ }
605
+ });
606
+ },
607
+ getFind() {
608
+ util
609
+ .ajax({
610
+ url: findSysCodes
611
+ })
612
+ .then((res) => {
613
+ const { status, message } = res;
614
+ if (status === 'success') {
615
+ this.infoList.noticeType = message.split(',');
616
+ let arr = [];
617
+ this.infoList.noticeList.map((item) => {
618
+ this.infoList.noticeType.map((x) => {
619
+ if (x == item.cciValue) {
620
+ arr.push(x);
621
+ }
622
+ });
623
+ });
624
+ this.infoList.noticeType = arr;
625
+ } else {
626
+ this.$message.error(message || '系统错误,请联系管理员!');
627
+ }
628
+ })
629
+ .catch((err) => {
630
+ this.loading = false;
631
+ if (err.message && err.message !== 'canceled') {
632
+ this.$message.error(err.message);
633
+ }
634
+ });
635
+ }
636
+ }
637
+ };
638
+ </script>
639
+
640
+ <style></style>