eoss-ui 0.6.64 → 0.6.65

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