eoss-ui 0.6.39 → 0.6.40

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