eoss-ui 0.8.8 → 0.8.10

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