eoss-ui 0.7.56 → 0.7.57

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 (244) hide show
  1. package/lib/calogin.js +233 -233
  2. package/lib/eoss-ui.common.js +757 -756
  3. package/lib/flow-list.js +81 -81
  4. package/lib/flow.js +289 -288
  5. package/lib/index.js +1 -1
  6. package/lib/main.js +140 -140
  7. package/lib/qr-code.js +13 -13
  8. package/package.json +160 -160
  9. package/packages/button/index.js +5 -5
  10. package/packages/button/src/main.vue +418 -418
  11. package/packages/button-group/index.js +5 -5
  12. package/packages/button-group/src/main.vue +346 -346
  13. package/packages/calendar/index.js +5 -5
  14. package/packages/calogin/index.js +5 -5
  15. package/packages/calogin/src/main.vue +412 -412
  16. package/packages/calogin/src/plugin.js +915 -915
  17. package/packages/card/index.js +5 -5
  18. package/packages/card/src/main.vue +156 -156
  19. package/packages/cascader/index.js +5 -5
  20. package/packages/cascader/src/main.vue +168 -168
  21. package/packages/checkbox-group/index.js +5 -5
  22. package/packages/checkbox-group/src/main.vue +333 -333
  23. package/packages/clients/index.js +5 -5
  24. package/packages/clients/src/main.vue +151 -151
  25. package/packages/data-table/index.js +5 -5
  26. package/packages/data-table/src/children.vue +39 -39
  27. package/packages/data-table/src/column.vue +992 -992
  28. package/packages/data-table/src/main.vue +1840 -1840
  29. package/packages/data-table/src/sizer.vue +195 -195
  30. package/packages/data-table-form/index.js +5 -5
  31. package/packages/data-table-form/src/checkbox.vue +101 -101
  32. package/packages/data-table-form/src/colgroup.vue +17 -17
  33. package/packages/data-table-form/src/main.vue +181 -181
  34. package/packages/data-table-form/src/radio.vue +65 -65
  35. package/packages/data-table-form/src/table.vue +233 -233
  36. package/packages/data-table-form/src/tbody.vue +336 -336
  37. package/packages/data-table-form/src/thead.vue +68 -68
  38. package/packages/date-picker/index.js +5 -5
  39. package/packages/date-picker/src/main.vue +236 -236
  40. package/packages/dialog/index.js +5 -5
  41. package/packages/enable-drag/index.js +5 -5
  42. package/packages/enterprise/index.js +5 -5
  43. package/packages/enterprise/src/main.vue +66 -66
  44. package/packages/error-page/index.js +5 -5
  45. package/packages/error-page/src/main.vue +44 -44
  46. package/packages/flow/index.js +5 -5
  47. package/packages/flow/src/component/Circulate.vue +413 -413
  48. package/packages/flow/src/component/CommonOpinions.vue +373 -373
  49. package/packages/flow/src/component/CustomPreset.vue +322 -322
  50. package/packages/flow/src/component/FileList.vue +97 -97
  51. package/packages/flow/src/component/FreeCirculation.vue +241 -241
  52. package/packages/flow/src/component/Preset.vue +255 -255
  53. package/packages/flow/src/component/SendMsg.vue +242 -242
  54. package/packages/flow/src/component/TimeLimit.vue +190 -190
  55. package/packages/flow/src/component/taskUnionExamine.vue +756 -756
  56. package/packages/flow/src/form.vue +121 -121
  57. package/packages/flow/src/freeStartFlow.vue +2846 -2846
  58. package/packages/flow/src/main.vue +3878 -3878
  59. package/packages/flow/src/processForm.vue +1365 -1365
  60. package/packages/flow/src/processReject.vue +309 -309
  61. package/packages/flow/src/reset.vue +942 -942
  62. package/packages/flow/src/startTaskRead.vue +693 -692
  63. package/packages/flow/src/supervise.vue +159 -159
  64. package/packages/flow/src/table.vue +58 -58
  65. package/packages/flow-group/index.js +5 -5
  66. package/packages/flow-group/src/main.vue +717 -717
  67. package/packages/flow-list/index.js +5 -5
  68. package/packages/flow-list/src/main.vue +1801 -1801
  69. package/packages/form/index.js +5 -5
  70. package/packages/form/src/main.vue +3901 -3901
  71. package/packages/form/src/table.vue +1512 -1512
  72. package/packages/handle-user/index.js +5 -5
  73. package/packages/handle-user/src/main.vue +137 -137
  74. package/packages/handler/index.js +5 -5
  75. package/packages/handler/src/main.vue +496 -496
  76. package/packages/icon/index.js +5 -5
  77. package/packages/icon/src/main.vue +104 -104
  78. package/packages/icons/index.js +5 -5
  79. package/packages/icons/src/main.vue +81 -81
  80. package/packages/input/index.js +5 -5
  81. package/packages/input/src/main.vue +356 -356
  82. package/packages/input-number/index.js +5 -5
  83. package/packages/input-number/src/main.vue +106 -106
  84. package/packages/label/index.js +5 -5
  85. package/packages/label/src/main.vue +457 -457
  86. package/packages/layout/index.js +5 -5
  87. package/packages/layout/src/item.vue +152 -152
  88. package/packages/layout/src/main.vue +31 -31
  89. package/packages/login/index.js +5 -5
  90. package/packages/login/src/main.vue +2082 -2082
  91. package/packages/login/src/resetPassword.vue +557 -557
  92. package/packages/main/index.js +5 -5
  93. package/packages/main/src/default/message.vue +249 -249
  94. package/packages/main/src/default/notice.vue +157 -157
  95. package/packages/main/src/default/userinfo.vue +503 -503
  96. package/packages/main/src/public/online.vue +89 -89
  97. package/packages/main/src/public/search.vue +464 -464
  98. package/packages/main/src/public/settings.vue +227 -227
  99. package/packages/main/src/simplicity/apps.vue +388 -388
  100. package/packages/main/src/simplicity/avatar.vue +82 -82
  101. package/packages/main/src/simplicity/handler.vue +160 -160
  102. package/packages/main/src/simplicity/index.vue +2307 -2307
  103. package/packages/main/src/simplicity/lists.vue +84 -84
  104. package/packages/main/src/simplicity/menu-list.vue +135 -135
  105. package/packages/main/src/simplicity/message.vue +293 -293
  106. package/packages/main/src/simplicity/notice.vue +222 -222
  107. package/packages/main/src/simplicity/router-page.vue +45 -45
  108. package/packages/main/src/simplicity/sub-menu.vue +274 -274
  109. package/packages/main/src/simplicity/user.vue +259 -259
  110. package/packages/main/src/simplicity/userinfo.vue +401 -401
  111. package/packages/menu/index.js +5 -5
  112. package/packages/menu/src/main.vue +595 -595
  113. package/packages/nav/index.js +5 -5
  114. package/packages/nav/src/main.vue +351 -351
  115. package/packages/notify/index.js +5 -5
  116. package/packages/notify/src/main.vue +538 -538
  117. package/packages/page/index.js +5 -5
  118. package/packages/page/src/main.vue +167 -167
  119. package/packages/pagination/index.js +5 -5
  120. package/packages/pagination/src/main.vue +96 -96
  121. package/packages/player/index.js +5 -5
  122. package/packages/player/src/main.vue +194 -194
  123. package/packages/qr-code/index.js +5 -5
  124. package/packages/qr-code/src/main.vue +170 -170
  125. package/packages/radio-group/index.js +6 -6
  126. package/packages/radio-group/src/main.vue +319 -319
  127. package/packages/retrial-auth/index.js +5 -5
  128. package/packages/retrial-auth/src/main.vue +280 -280
  129. package/packages/select/index.js +5 -5
  130. package/packages/select/src/main.vue +782 -782
  131. package/packages/select-ganged/index.js +5 -5
  132. package/packages/select-ganged/src/main.vue +724 -724
  133. package/packages/selector/index.js +5 -5
  134. package/packages/selector/src/main.vue +761 -761
  135. package/packages/selector-panel/index.js +5 -5
  136. package/packages/selector-panel/src/main.vue +1027 -1027
  137. package/packages/selector-panel/src/selection.vue +170 -170
  138. package/packages/selector-panel/src/tree.vue +129 -129
  139. package/packages/sizer/index.js +5 -5
  140. package/packages/sizer/src/main.vue +254 -254
  141. package/packages/steps/index.js +5 -5
  142. package/packages/steps/src/main.vue +181 -181
  143. package/packages/switch/index.js +5 -5
  144. package/packages/switch/src/main.vue +170 -170
  145. package/packages/table-form/index.js +5 -5
  146. package/packages/tabs/index.js +5 -5
  147. package/packages/tabs/src/main.vue +788 -788
  148. package/packages/tabs-panel/index.js +5 -5
  149. package/packages/tabs-panel/src/main.vue +29 -29
  150. package/packages/theme-chalk/src/base.scss +261 -261
  151. package/packages/theme-chalk/src/button-group.scss +176 -176
  152. package/packages/theme-chalk/src/button.scss +24 -24
  153. package/packages/theme-chalk/src/calendar.scss +113 -113
  154. package/packages/theme-chalk/src/card.scss +99 -99
  155. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  156. package/packages/theme-chalk/src/clients.scss +87 -87
  157. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  158. package/packages/theme-chalk/src/data-table.scss +297 -297
  159. package/packages/theme-chalk/src/date-picker.scss +7 -7
  160. package/packages/theme-chalk/src/dialog.scss +77 -77
  161. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  162. package/packages/theme-chalk/src/enterprise.scss +5 -5
  163. package/packages/theme-chalk/src/error-page.scss +18 -18
  164. package/packages/theme-chalk/src/flow-group.scss +110 -110
  165. package/packages/theme-chalk/src/flow-list.scss +39 -39
  166. package/packages/theme-chalk/src/flow.scss +351 -351
  167. package/packages/theme-chalk/src/form.scss +501 -501
  168. package/packages/theme-chalk/src/handle-user.scss +40 -40
  169. package/packages/theme-chalk/src/handler.scss +148 -148
  170. package/packages/theme-chalk/src/icon.scss +1608 -1608
  171. package/packages/theme-chalk/src/icons.scss +99 -99
  172. package/packages/theme-chalk/src/input.scss +9 -9
  173. package/packages/theme-chalk/src/label.scss +24 -24
  174. package/packages/theme-chalk/src/layout.scss +46 -46
  175. package/packages/theme-chalk/src/login.scss +1006 -1006
  176. package/packages/theme-chalk/src/main.scss +663 -663
  177. package/packages/theme-chalk/src/menu.scss +224 -224
  178. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  179. package/packages/theme-chalk/src/nav.scss +111 -111
  180. package/packages/theme-chalk/src/page.scss +3 -3
  181. package/packages/theme-chalk/src/pagination.scss +29 -29
  182. package/packages/theme-chalk/src/player.scss +9 -9
  183. package/packages/theme-chalk/src/qr-code.scss +17 -17
  184. package/packages/theme-chalk/src/radio-group.scss +9 -9
  185. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  186. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  187. package/packages/theme-chalk/src/select.scss +8 -8
  188. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  189. package/packages/theme-chalk/src/selector.scss +114 -114
  190. package/packages/theme-chalk/src/simplicity.scss +1403 -1403
  191. package/packages/theme-chalk/src/sizer.scss +36 -36
  192. package/packages/theme-chalk/src/steps.scss +88 -88
  193. package/packages/theme-chalk/src/switch.scss +3 -3
  194. package/packages/theme-chalk/src/table-form.scss +1 -1
  195. package/packages/theme-chalk/src/tabs.scss +87 -87
  196. package/packages/theme-chalk/src/tips.scss +7 -7
  197. package/packages/theme-chalk/src/toolbar.scss +179 -179
  198. package/packages/theme-chalk/src/tree-group.scss +72 -72
  199. package/packages/theme-chalk/src/tree.scss +165 -165
  200. package/packages/theme-chalk/src/upload.scss +172 -172
  201. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  202. package/packages/tips/index.js +5 -5
  203. package/packages/tips/src/main.vue +141 -141
  204. package/packages/toolbar/index.js +5 -5
  205. package/packages/toolbar/src/main.vue +430 -430
  206. package/packages/tree/index.js +5 -5
  207. package/packages/tree-group/index.js +5 -5
  208. package/packages/upload/index.js +5 -5
  209. package/packages/upload/src/main.vue +1344 -1344
  210. package/packages/upload/src/picture.js +15 -15
  211. package/packages/wujie/index.js +5 -5
  212. package/packages/wujie/src/main.vue +145 -145
  213. package/packages/wxlogin/index.js +5 -5
  214. package/packages/wxlogin/src/main.vue +128 -128
  215. package/src/config/api.js +317 -317
  216. package/src/config/image.js +2 -2
  217. package/src/index.js +163 -163
  218. package/src/utils/bus.js +3 -3
  219. package/src/utils/date-util.js +312 -312
  220. package/src/utils/http.js +50 -50
  221. package/src/utils/rules.js +18 -18
  222. package/src/utils/store.js +21 -21
  223. package/src/utils/webSocket.js +107 -107
  224. package/packages/.DS_Store +0 -0
  225. package/packages/calogin/.DS_Store +0 -0
  226. package/packages/date-picker/.DS_Store +0 -0
  227. package/packages/date-picker/src/.DS_Store +0 -0
  228. package/packages/dialog/.DS_Store +0 -0
  229. package/packages/flow/.DS_Store +0 -0
  230. package/packages/flow/src/.DS_Store +0 -0
  231. package/packages/flow-list/.DS_Store +0 -0
  232. package/packages/form/.DS_Store +0 -0
  233. package/packages/icon/.DS_Store +0 -0
  234. package/packages/login/.DS_Store +0 -0
  235. package/packages/main/.DS_Store +0 -0
  236. package/packages/main/src/.DS_Store +0 -0
  237. package/packages/menu/.DS_Store +0 -0
  238. package/packages/select/.DS_Store +0 -0
  239. package/packages/selector/.DS_Store +0 -0
  240. package/packages/selector-panel/.DS_Store +0 -0
  241. package/packages/theme-chalk/src/.DS_Store +0 -0
  242. package/packages/upload/.DS_Store +0 -0
  243. package/src/.DS_Store +0 -0
  244. package/src/utils/.DS_Store +0 -0
@@ -1,413 +1,413 @@
1
- <template>
2
- <div class="task-union-examine" v-loading="loading">
3
- <el-form
4
- ref="infoList"
5
- :model="infoList"
6
- class=""
7
- label-width="100px"
8
- :label-position="labelPosition"
9
- >
10
- <el-form-item
11
- v-if="isHideCurrentOrg == 0"
12
- prop="nextCurrentOrgObj"
13
- label="本单位"
14
- >
15
- <SelectUser
16
- :nextUser="infoList.nextCurrentOrgObj"
17
- :multiple="newMultiple"
18
- mix
19
- @change="changeSelectUser($event, 'nextCurrentOrgObj')"
20
- :types="['employee', 'persongroup']"
21
- :params="params"
22
- />
23
- </el-form-item>
24
- <el-form-item prop="nextOtherOrgObj" label="外单位">
25
- <SelectUser
26
- :nextUser="infoList.nextOtherOrgObj"
27
- :multiple="newMultiple"
28
- :where="{ filid: 'other',roleid :selectorParams.roleid }"
29
- @change="changeSelectUser($event, 'nextOtherOrgObj')"
30
- mix
31
- :types="['enterprise', 'filgroup']"
32
- :params="otherParams"
33
- />
34
- </el-form-item>
35
-
36
- <!-- :rules="[
37
- { required: false, message: `请选择通知方式`, trigger: 'blur' }
38
- ]" -->
39
- <el-form-item
40
- prop="noticeType"
41
- label="通知方式"
42
- v-show="infoList.noticeList != 0"
43
- >
44
- <el-checkbox-group
45
- v-model="infoList.noticeType"
46
- style="display: contents"
47
- >
48
- <el-checkbox
49
- v-for="item of infoList.noticeList"
50
- :key="item.cciValue"
51
- :label="item.cciValue"
52
- :disabled="
53
- readOnlyNotificationType
54
- ? readOnlyNotificationType.indexOf(item.cciValue) != -1
55
- : false
56
- "
57
- >
58
- {{ item.shortName }}
59
- </el-checkbox>
60
- </el-checkbox-group>
61
- </el-form-item>
62
- <el-form-item
63
- v-show="infoList.noticeType.length != 0"
64
- prop="noticeInfo"
65
- label="通知消息"
66
- >
67
- <es-input
68
- style="
69
- border-color: #ccc;
70
- padding: 5px;
71
- border-radius: 5px;
72
- font-size: 13px;
73
- "
74
- type="textarea"
75
- v-model="infoList.noticeInfo"
76
- @change="handleChange"
77
- :readonly="notificationMessageReadOnly"
78
- />
79
- <!-- <span>{{ infoList.noticeInfo }}</span> -->
80
- </el-form-item>
81
- </el-form>
82
- <div v-if="showBtn" style="text-align: right">
83
- <el-button type="primary" size="small" @click="subMit"> 确定 </el-button>
84
- <el-button @click="quit" size="small"> 取消 </el-button>
85
- </div>
86
- </div>
87
- </template>
88
-
89
- <script>
90
- import CommonOpinions from './CommonOpinions.vue';
91
- import SelectUser from '../selectUser.vue';
92
- import {
93
- findSysCodes,
94
- getNotificationMsg,
95
- findCodeValues,
96
- directStartTaskCircularRead,
97
- endFlowAndStartTaskCircularRead
98
- } from 'eoss-ui/src/config/api';
99
- import util from 'eoss-ui/src/utils/util.js';
100
- export default {
101
- name: 'Circulate',
102
- components: {
103
- [CommonOpinions.name]: CommonOpinions,
104
- [SelectUser.name]: SelectUser
105
- },
106
- props: {
107
- pendingId: { type: String, default: '' },
108
- processDefinitionId: { type: String, default: '' },
109
- businessId: { type: String, default: '' },
110
- type: { type: String, default: '' },
111
- defaultOpinion: { type: String, default: '' },
112
- oldOption: { type: String, default: '' },
113
- disabled: { type: Boolean, default: false },
114
- simpleTips: { type: Boolean, default: true },
115
- showBtn: { type: Boolean, default: true },
116
- multiple: { type: Boolean, default: true },
117
- selectorParams:{type:Object,default:()=>{
118
- return {}
119
- }},
120
- labelPosition:{
121
- type: String,
122
- default: 'left'
123
- },
124
- startFlowPageEmbeddedIntoStartFlowIndex: { type: Boolean, default: false },
125
- formTitle: {
126
- type: String,
127
- default: ''
128
- }
129
- },
130
- inheritAttrs: false,
131
- data() {
132
- return {
133
- opinion: '', //办理意见
134
- readOnlyNotificationType: '',
135
- notificationMessageReadOnly: false,
136
- otherMix: false,
137
- currentMix: false,
138
- oldMessage: '',
139
- infoList: {
140
- nextOtherOrgObj: [],
141
- nextCurrentOrgObj: [],
142
- noticeType: [],
143
- noticeInfo: '',
144
- opinion: ''
145
- },
146
- onlyName: '',
147
- currentOrgTabs: [],
148
- foreignOrgTabs: [],
149
- currentOrgProcessKey: '',
150
- isChangeMessage: false,
151
- isSubFlow: true,
152
- choiceDeptId: '',
153
- choiceOrgId: '',
154
- isSinglePage: false,
155
- isChoiceOtherOrgDept: '',
156
- currentOrgName: '',
157
- otherOrgName: '',
158
- newMultiple: true,
159
- params: { filid: 'all' },
160
- isHideOtherOrg: '',
161
- isHideCurrentOrg: 0,
162
- isOpinionRequired: 0,
163
- otherParams: { filid: 'other', nofilid: 1 },
164
- loading: false,
165
- subLoading: null,
166
- userModel: {}
167
- };
168
- },
169
- watch: {
170
- selectorParams: {
171
- handler(val) {
172
- this.params = val;
173
- },
174
- deep: true,
175
- immediate: true
176
- },
177
- oldOption: {
178
- handler(val) {
179
- this.opinion = val;
180
- },
181
- deep: true,
182
- immediate: true
183
- },
184
- formTitle: {
185
- handler(val) {
186
- if (!this.showBtn && !this.isChangeMessage) {
187
- this.infoList.noticeInfo = this.oldMessage.replace('{title}', val);
188
- }
189
- },
190
- deep: true,
191
- immediate: true
192
- }
193
- },
194
- mounted() {
195
- let mainConfig = util.getStorage('mainConfig');
196
- if (mainConfig) {
197
- this.userModel = JSON.parse(mainConfig).userModel;
198
- this.params.filid = this.userModel.orgId;
199
- this.otherParams.nofilid = this.userModel.orgId
200
- this.otherParams.roleid = this.params.roleid
201
- }
202
- this.loading = true;
203
- this.newMultiple = this.multiple;
204
- this.opinion = this.oldOption;
205
- this.getNodeType();
206
- // this.getFind();
207
- this.getMessage();
208
- },
209
- methods: {
210
- handleChange() {
211
- this.isChangeMessage = true;
212
- },
213
- isMultiple(val) {
214
- if (val == 7 || val == 9 || val == 11) {
215
- this.newMultiple = false;
216
- }
217
- },
218
- subMit() {
219
- let {
220
- infoList: {
221
- nextCurrentOrgObj,
222
- nextOtherOrgObj,
223
- noticeType,
224
- noticeInfo
225
- },
226
- processDefinitionId,
227
- opinion,
228
- businessId
229
- } = this;
230
- if (
231
- (!nextCurrentOrgObj || nextCurrentOrgObj.length == 0) &&
232
- (!nextOtherOrgObj || nextOtherOrgObj.length == 0)
233
- ) {
234
- return this.$message.warning('请选择处理对象!');
235
- }
236
- const param = {
237
- url:
238
- this.showBtn || this.startFlowPageEmbeddedIntoStartFlowIndex
239
- ? directStartTaskCircularRead
240
- : endFlowAndStartTaskCircularRead,
241
- data: {
242
- opinion,
243
- businessId,
244
-
245
- processDefinitionId,
246
- nextOtherOrgObj: Array.isArray(nextOtherOrgObj)
247
- ? nextOtherOrgObj.join(',')
248
- : nextOtherOrgObj,
249
- nextCurrentOrgObj: Array.isArray(nextCurrentOrgObj)
250
- ? nextCurrentOrgObj.join(',')
251
- : nextCurrentOrgObj,
252
- notificationMsg: noticeInfo,
253
- notificationType: noticeType.join(','),
254
- userId: JSON.parse(util.getStorage('mainConfig')).userModel.userId
255
- },
256
- headers: { Accept: 'application/json,text/plain' },
257
- method: 'POST'
258
- };
259
- if (!this.showBtn && !this.startFlowPageEmbeddedIntoStartFlowIndex) {
260
- param.data.pendingId = this.pendingId;
261
- delete param.data.processDefinitionId;
262
- this.subLoading = util.loading(this.$loading, '加载中...');
263
- } else if (this.startFlowPageEmbeddedIntoStartFlowIndex) {
264
- this.subLoading = util.loading(this.$loading, '加载中...');
265
- } else {
266
- this.loading = true;
267
- }
268
- util
269
- .ajax(param)
270
- .then((res) => {
271
- const { message, status, rCode } = res;
272
- if (!this.showBtn || this.startFlowPageEmbeddedIntoStartFlowIndex) {
273
- this.subLoading.close();
274
- } else {
275
- this.loading = false;
276
- }
277
- if (status == 'success' || rCode == 0) {
278
- this.simpleTips && this.$message.success('提交成功');
279
- this.quit(true);
280
- } else {
281
- this.$message.error(message || '系统错误,请联系管理员!');
282
- }
283
- })
284
- .catch((err) => {
285
- if (!this.showBtn || this.startFlowPageEmbeddedIntoStartFlowIndex) {
286
- this.subLoading.close();
287
- } else {
288
- this.loading = false;
289
- }
290
- if (err.message && err.message !== 'canceled') {
291
- this.$message.error(err.message);
292
- }
293
- });
294
- },
295
- quit(val) {
296
- if (val === true) return this.$emit('cancel', val);
297
- this.$emit('cancel');
298
- },
299
- changeSelectUser(val, type) {
300
- const { nextUser, options } = val;
301
- let newNextUser = [];
302
- let obj = {};
303
- options.map((item) => {
304
- if (obj[item.stype]) {
305
- obj[item.stype].push(item.id);
306
- } else {
307
- obj[item.stype] = [item.id];
308
- }
309
- // if (newNextUser) {
310
- // newNextUser += `,${item.stype}-${item.id}`;
311
- // } else {
312
- // newNextUser = `${item.stype}-${item.id}`;
313
- // }
314
- });
315
- for (let key in obj) {
316
- newNextUser.push(`${key}-${obj[key].join(',')}`);
317
- }
318
-
319
- this.infoList[type] = newNextUser.join('|');
320
- },
321
- getNodeType() {
322
- util
323
- .ajax({
324
- url: findCodeValues,
325
- params: {
326
- ccCode: 'notification_type',
327
- userId: util.getStorage('userId'),
328
- pendingId: this.pendingId,
329
- startCircularRead: true
330
- }
331
- })
332
- .then((res) => {
333
- const { status, data } = res;
334
- this.loading = false;
335
- if (status === 'success') {
336
- this.infoList.noticeList = data;
337
- this.getFind();
338
- }
339
- })
340
- .catch((err) => {
341
- this.loading = false;
342
- if (err.message && err.message !== 'canceled') {
343
- this.$message.error(err.message);
344
- }
345
- });
346
- },
347
- //获取通知信息
348
- getMessage() {
349
- let params = {
350
- pendingId: this.pendingId,
351
- processDefinitionId: this.processDefinitionId,
352
- businessId: this.businessId
353
- };
354
- if (!this.showBtn) {
355
- params.openMode = 'samepage';
356
- }
357
- util
358
- .ajax({ url: getNotificationMsg, params, methods: 'post' })
359
- .then((res) => {
360
- if (res.status === 'success') {
361
- if (!this.showBtn) {
362
- this.oldMessage = res.message;
363
- this.infoList.noticeInfo = res.message.replace(
364
- '{title}',
365
- this.formTitle
366
- );
367
- } else {
368
- this.infoList.noticeInfo = res.message;
369
- }
370
- }
371
- this.loading = false;
372
- })
373
- .catch((err) => {
374
- this.loading = false;
375
- if (err.message && err.message !== 'canceled') {
376
- this.$message.error(err.message);
377
- }
378
- });
379
- },
380
- getFind() {
381
- util
382
- .ajax({
383
- url: findSysCodes
384
- })
385
- .then((res) => {
386
- const { status, message } = res;
387
- if (status === 'success') {
388
- this.infoList.noticeType = message.split(',');
389
- let arr = [];
390
- this.infoList.noticeList.map((item) => {
391
- this.infoList.noticeType.map((x) => {
392
- if (x == item.cciValue) {
393
- arr.push(x);
394
- }
395
- });
396
- });
397
- this.infoList.noticeType = arr;
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
- }
410
- };
411
- </script>
412
-
413
- <style></style>
1
+ <template>
2
+ <div class="task-union-examine" v-loading="loading">
3
+ <el-form
4
+ ref="infoList"
5
+ :model="infoList"
6
+ class=""
7
+ label-width="100px"
8
+ :label-position="labelPosition"
9
+ >
10
+ <el-form-item
11
+ v-if="isHideCurrentOrg == 0"
12
+ prop="nextCurrentOrgObj"
13
+ label="本单位"
14
+ >
15
+ <SelectUser
16
+ :nextUser="infoList.nextCurrentOrgObj"
17
+ :multiple="newMultiple"
18
+ mix
19
+ @change="changeSelectUser($event, 'nextCurrentOrgObj')"
20
+ :types="['employee', 'persongroup']"
21
+ :params="params"
22
+ />
23
+ </el-form-item>
24
+ <el-form-item prop="nextOtherOrgObj" label="外单位">
25
+ <SelectUser
26
+ :nextUser="infoList.nextOtherOrgObj"
27
+ :multiple="newMultiple"
28
+ :where="{ filid: 'other',roleid :selectorParams.roleid }"
29
+ @change="changeSelectUser($event, 'nextOtherOrgObj')"
30
+ mix
31
+ :types="['enterprise', 'filgroup']"
32
+ :params="otherParams"
33
+ />
34
+ </el-form-item>
35
+
36
+ <!-- :rules="[
37
+ { required: false, message: `请选择通知方式`, trigger: 'blur' }
38
+ ]" -->
39
+ <el-form-item
40
+ prop="noticeType"
41
+ label="通知方式"
42
+ v-show="infoList.noticeList != 0"
43
+ >
44
+ <el-checkbox-group
45
+ v-model="infoList.noticeType"
46
+ style="display: contents"
47
+ >
48
+ <el-checkbox
49
+ v-for="item of infoList.noticeList"
50
+ :key="item.cciValue"
51
+ :label="item.cciValue"
52
+ :disabled="
53
+ readOnlyNotificationType
54
+ ? readOnlyNotificationType.indexOf(item.cciValue) != -1
55
+ : false
56
+ "
57
+ >
58
+ {{ item.shortName }}
59
+ </el-checkbox>
60
+ </el-checkbox-group>
61
+ </el-form-item>
62
+ <el-form-item
63
+ v-show="infoList.noticeType.length != 0"
64
+ prop="noticeInfo"
65
+ label="通知消息"
66
+ >
67
+ <es-input
68
+ style="
69
+ border-color: #ccc;
70
+ padding: 5px;
71
+ border-radius: 5px;
72
+ font-size: 13px;
73
+ "
74
+ type="textarea"
75
+ v-model="infoList.noticeInfo"
76
+ @change="handleChange"
77
+ :readonly="notificationMessageReadOnly"
78
+ />
79
+ <!-- <span>{{ infoList.noticeInfo }}</span> -->
80
+ </el-form-item>
81
+ </el-form>
82
+ <div v-if="showBtn" style="text-align: right">
83
+ <el-button type="primary" size="small" @click="subMit"> 确定 </el-button>
84
+ <el-button @click="quit" size="small"> 取消 </el-button>
85
+ </div>
86
+ </div>
87
+ </template>
88
+
89
+ <script>
90
+ import CommonOpinions from './CommonOpinions.vue';
91
+ import SelectUser from '../selectUser.vue';
92
+ import {
93
+ findSysCodes,
94
+ getNotificationMsg,
95
+ findCodeValues,
96
+ directStartTaskCircularRead,
97
+ endFlowAndStartTaskCircularRead
98
+ } from 'eoss-ui/src/config/api';
99
+ import util from 'eoss-ui/src/utils/util.js';
100
+ export default {
101
+ name: 'Circulate',
102
+ components: {
103
+ [CommonOpinions.name]: CommonOpinions,
104
+ [SelectUser.name]: SelectUser
105
+ },
106
+ props: {
107
+ pendingId: { type: String, default: '' },
108
+ processDefinitionId: { type: String, default: '' },
109
+ businessId: { type: String, default: '' },
110
+ type: { type: String, default: '' },
111
+ defaultOpinion: { type: String, default: '' },
112
+ oldOption: { type: String, default: '' },
113
+ disabled: { type: Boolean, default: false },
114
+ simpleTips: { type: Boolean, default: true },
115
+ showBtn: { type: Boolean, default: true },
116
+ multiple: { type: Boolean, default: true },
117
+ selectorParams:{type:Object,default:()=>{
118
+ return {}
119
+ }},
120
+ labelPosition:{
121
+ type: String,
122
+ default: 'left'
123
+ },
124
+ startFlowPageEmbeddedIntoStartFlowIndex: { type: Boolean, default: false },
125
+ formTitle: {
126
+ type: String,
127
+ default: ''
128
+ }
129
+ },
130
+ inheritAttrs: false,
131
+ data() {
132
+ return {
133
+ opinion: '', //办理意见
134
+ readOnlyNotificationType: '',
135
+ notificationMessageReadOnly: false,
136
+ otherMix: false,
137
+ currentMix: false,
138
+ oldMessage: '',
139
+ infoList: {
140
+ nextOtherOrgObj: [],
141
+ nextCurrentOrgObj: [],
142
+ noticeType: [],
143
+ noticeInfo: '',
144
+ opinion: ''
145
+ },
146
+ onlyName: '',
147
+ currentOrgTabs: [],
148
+ foreignOrgTabs: [],
149
+ currentOrgProcessKey: '',
150
+ isChangeMessage: false,
151
+ isSubFlow: true,
152
+ choiceDeptId: '',
153
+ choiceOrgId: '',
154
+ isSinglePage: false,
155
+ isChoiceOtherOrgDept: '',
156
+ currentOrgName: '',
157
+ otherOrgName: '',
158
+ newMultiple: true,
159
+ params: { filid: 'all' },
160
+ isHideOtherOrg: '',
161
+ isHideCurrentOrg: 0,
162
+ isOpinionRequired: 0,
163
+ otherParams: { filid: 'other', nofilid: 1 },
164
+ loading: false,
165
+ subLoading: null,
166
+ userModel: {}
167
+ };
168
+ },
169
+ watch: {
170
+ selectorParams: {
171
+ handler(val) {
172
+ this.params = val;
173
+ },
174
+ deep: true,
175
+ immediate: true
176
+ },
177
+ oldOption: {
178
+ handler(val) {
179
+ this.opinion = val;
180
+ },
181
+ deep: true,
182
+ immediate: true
183
+ },
184
+ formTitle: {
185
+ handler(val) {
186
+ if (!this.showBtn && !this.isChangeMessage) {
187
+ this.infoList.noticeInfo = this.oldMessage.replace('{title}', val);
188
+ }
189
+ },
190
+ deep: true,
191
+ immediate: true
192
+ }
193
+ },
194
+ mounted() {
195
+ let mainConfig = util.getStorage('mainConfig');
196
+ if (mainConfig) {
197
+ this.userModel = JSON.parse(mainConfig).userModel;
198
+ this.params.filid = this.userModel.orgId;
199
+ this.otherParams.nofilid = this.userModel.orgId
200
+ this.otherParams.roleid = this.params.roleid
201
+ }
202
+ this.loading = true;
203
+ this.newMultiple = this.multiple;
204
+ this.opinion = this.oldOption;
205
+ this.getNodeType();
206
+ // this.getFind();
207
+ this.getMessage();
208
+ },
209
+ methods: {
210
+ handleChange() {
211
+ this.isChangeMessage = true;
212
+ },
213
+ isMultiple(val) {
214
+ if (val == 7 || val == 9 || val == 11) {
215
+ this.newMultiple = false;
216
+ }
217
+ },
218
+ subMit() {
219
+ let {
220
+ infoList: {
221
+ nextCurrentOrgObj,
222
+ nextOtherOrgObj,
223
+ noticeType,
224
+ noticeInfo
225
+ },
226
+ processDefinitionId,
227
+ opinion,
228
+ businessId
229
+ } = this;
230
+ if (
231
+ (!nextCurrentOrgObj || nextCurrentOrgObj.length == 0) &&
232
+ (!nextOtherOrgObj || nextOtherOrgObj.length == 0)
233
+ ) {
234
+ return this.$message.warning('请选择处理对象!');
235
+ }
236
+ const param = {
237
+ url:
238
+ this.showBtn || this.startFlowPageEmbeddedIntoStartFlowIndex
239
+ ? directStartTaskCircularRead
240
+ : endFlowAndStartTaskCircularRead,
241
+ data: {
242
+ opinion,
243
+ businessId,
244
+
245
+ processDefinitionId,
246
+ nextOtherOrgObj: Array.isArray(nextOtherOrgObj)
247
+ ? nextOtherOrgObj.join(',')
248
+ : nextOtherOrgObj,
249
+ nextCurrentOrgObj: Array.isArray(nextCurrentOrgObj)
250
+ ? nextCurrentOrgObj.join(',')
251
+ : nextCurrentOrgObj,
252
+ notificationMsg: noticeInfo,
253
+ notificationType: noticeType.join(','),
254
+ userId: JSON.parse(util.getStorage('mainConfig')).userModel.userId
255
+ },
256
+ headers: { Accept: 'application/json,text/plain' },
257
+ method: 'POST'
258
+ };
259
+ if (!this.showBtn && !this.startFlowPageEmbeddedIntoStartFlowIndex) {
260
+ param.data.pendingId = this.pendingId;
261
+ delete param.data.processDefinitionId;
262
+ this.subLoading = util.loading(this.$loading, '加载中...');
263
+ } else if (this.startFlowPageEmbeddedIntoStartFlowIndex) {
264
+ this.subLoading = util.loading(this.$loading, '加载中...');
265
+ } else {
266
+ this.loading = true;
267
+ }
268
+ util
269
+ .ajax(param)
270
+ .then((res) => {
271
+ const { message, status, rCode } = res;
272
+ if (!this.showBtn || this.startFlowPageEmbeddedIntoStartFlowIndex) {
273
+ this.subLoading.close();
274
+ } else {
275
+ this.loading = false;
276
+ }
277
+ if (status == 'success' || rCode == 0) {
278
+ this.simpleTips && this.$message.success('提交成功');
279
+ this.quit(true);
280
+ } else {
281
+ this.$message.error(message || '系统错误,请联系管理员!');
282
+ }
283
+ })
284
+ .catch((err) => {
285
+ if (!this.showBtn || this.startFlowPageEmbeddedIntoStartFlowIndex) {
286
+ this.subLoading.close();
287
+ } else {
288
+ this.loading = false;
289
+ }
290
+ if (err.message && err.message !== 'canceled') {
291
+ this.$message.error(err.message);
292
+ }
293
+ });
294
+ },
295
+ quit(val) {
296
+ if (val === true) return this.$emit('cancel', val);
297
+ this.$emit('cancel');
298
+ },
299
+ changeSelectUser(val, type) {
300
+ const { nextUser, options } = val;
301
+ let newNextUser = [];
302
+ let obj = {};
303
+ options.map((item) => {
304
+ if (obj[item.stype]) {
305
+ obj[item.stype].push(item.id);
306
+ } else {
307
+ obj[item.stype] = [item.id];
308
+ }
309
+ // if (newNextUser) {
310
+ // newNextUser += `,${item.stype}-${item.id}`;
311
+ // } else {
312
+ // newNextUser = `${item.stype}-${item.id}`;
313
+ // }
314
+ });
315
+ for (let key in obj) {
316
+ newNextUser.push(`${key}-${obj[key].join(',')}`);
317
+ }
318
+
319
+ this.infoList[type] = newNextUser.join('|');
320
+ },
321
+ getNodeType() {
322
+ util
323
+ .ajax({
324
+ url: findCodeValues,
325
+ params: {
326
+ ccCode: 'notification_type',
327
+ userId: util.getStorage('userId'),
328
+ pendingId: this.pendingId,
329
+ startCircularRead: true
330
+ }
331
+ })
332
+ .then((res) => {
333
+ const { status, data } = res;
334
+ this.loading = false;
335
+ if (status === 'success') {
336
+ this.infoList.noticeList = data;
337
+ this.getFind();
338
+ }
339
+ })
340
+ .catch((err) => {
341
+ this.loading = false;
342
+ if (err.message && err.message !== 'canceled') {
343
+ this.$message.error(err.message);
344
+ }
345
+ });
346
+ },
347
+ //获取通知信息
348
+ getMessage() {
349
+ let params = {
350
+ pendingId: this.pendingId,
351
+ processDefinitionId: this.processDefinitionId,
352
+ businessId: this.businessId
353
+ };
354
+ if (!this.showBtn) {
355
+ params.openMode = 'samepage';
356
+ }
357
+ util
358
+ .ajax({ url: getNotificationMsg, params, methods: 'post' })
359
+ .then((res) => {
360
+ if (res.status === 'success') {
361
+ if (!this.showBtn) {
362
+ this.oldMessage = res.message;
363
+ this.infoList.noticeInfo = res.message.replace(
364
+ '{title}',
365
+ this.formTitle
366
+ );
367
+ } else {
368
+ this.infoList.noticeInfo = res.message;
369
+ }
370
+ }
371
+ this.loading = false;
372
+ })
373
+ .catch((err) => {
374
+ this.loading = false;
375
+ if (err.message && err.message !== 'canceled') {
376
+ this.$message.error(err.message);
377
+ }
378
+ });
379
+ },
380
+ getFind() {
381
+ util
382
+ .ajax({
383
+ url: findSysCodes
384
+ })
385
+ .then((res) => {
386
+ const { status, message } = res;
387
+ if (status === 'success') {
388
+ this.infoList.noticeType = message.split(',');
389
+ let arr = [];
390
+ this.infoList.noticeList.map((item) => {
391
+ this.infoList.noticeType.map((x) => {
392
+ if (x == item.cciValue) {
393
+ arr.push(x);
394
+ }
395
+ });
396
+ });
397
+ this.infoList.noticeType = arr;
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
+ }
410
+ };
411
+ </script>
412
+
413
+ <style></style>