eoss-ui 0.6.77 → 0.6.78

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