eoss-ui 0.6.95 → 0.6.96

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