eoss-ui 0.6.88 → 0.6.90

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 (249) hide show
  1. package/lib/calogin.js +233 -233
  2. package/lib/eoss-ui.common.js +933 -859
  3. package/lib/flow-list.js +81 -81
  4. package/lib/flow.js +364 -305
  5. package/lib/index.js +1 -1
  6. package/lib/main.js +132 -132
  7. package/lib/qr-code.js +13 -13
  8. package/lib/selector.js +99 -84
  9. package/lib/theme-chalk/index.css +1 -1
  10. package/lib/theme-chalk/selector.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 +412 -412
  19. package/packages/calogin/src/plugin.js +915 -915
  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 +990 -990
  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 +400 -400
  51. package/packages/flow/src/component/CommonOpinions.vue +364 -364
  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 +640 -640
  58. package/packages/flow/src/form.vue +121 -121
  59. package/packages/flow/src/freeStartFlow.vue +2844 -2844
  60. package/packages/flow/src/main.vue +3659 -3657
  61. package/packages/flow/src/processForm.vue +1245 -1245
  62. package/packages/flow/src/processReject.vue +296 -296
  63. package/packages/flow/src/reset.vue +941 -918
  64. package/packages/flow/src/selectUser.vue +1 -1
  65. package/packages/flow/src/startTaskRead.vue +684 -684
  66. package/packages/flow/src/supervise.vue +152 -152
  67. package/packages/flow/src/table.vue +58 -58
  68. package/packages/flow-group/index.js +5 -5
  69. package/packages/flow-group/src/main.vue +692 -692
  70. package/packages/flow-list/index.js +5 -5
  71. package/packages/flow-list/src/main.vue +1770 -1770
  72. package/packages/form/index.js +5 -5
  73. package/packages/form/src/main.vue +3814 -3814
  74. package/packages/form/src/table.vue +1508 -1508
  75. package/packages/handle-user/index.js +5 -5
  76. package/packages/handle-user/src/main.vue +138 -138
  77. package/packages/handler/index.js +5 -5
  78. package/packages/handler/src/main.vue +493 -493
  79. package/packages/icon/index.js +5 -5
  80. package/packages/icon/src/main.vue +101 -101
  81. package/packages/icons/index.js +5 -5
  82. package/packages/icons/src/main.vue +81 -81
  83. package/packages/input/index.js +5 -5
  84. package/packages/input/src/main.vue +356 -356
  85. package/packages/input-number/index.js +5 -5
  86. package/packages/input-number/src/main.vue +106 -106
  87. package/packages/label/index.js +5 -5
  88. package/packages/label/src/main.vue +457 -457
  89. package/packages/layout/index.js +5 -5
  90. package/packages/layout/src/item.vue +152 -152
  91. package/packages/layout/src/main.vue +31 -31
  92. package/packages/login/index.js +5 -5
  93. package/packages/login/src/main.vue +1998 -1998
  94. package/packages/login/src/resetPassword.vue +562 -562
  95. package/packages/main/index.js +5 -5
  96. package/packages/main/src/default/message.vue +249 -249
  97. package/packages/main/src/default/notice.vue +157 -157
  98. package/packages/main/src/default/userinfo.vue +503 -503
  99. package/packages/main/src/public/online.vue +89 -89
  100. package/packages/main/src/public/search.vue +458 -458
  101. package/packages/main/src/public/settings.vue +221 -221
  102. package/packages/main/src/simplicity/apps.vue +388 -388
  103. package/packages/main/src/simplicity/avatar.vue +82 -82
  104. package/packages/main/src/simplicity/handler.vue +259 -259
  105. package/packages/main/src/simplicity/index.vue +2102 -2102
  106. package/packages/main/src/simplicity/lists.vue +84 -84
  107. package/packages/main/src/simplicity/menu-list.vue +135 -135
  108. package/packages/main/src/simplicity/message.vue +259 -259
  109. package/packages/main/src/simplicity/notice.vue +190 -190
  110. package/packages/main/src/simplicity/router-page.vue +45 -45
  111. package/packages/main/src/simplicity/sub-menu.vue +264 -264
  112. package/packages/main/src/simplicity/user.vue +260 -260
  113. package/packages/main/src/simplicity/userinfo.vue +308 -308
  114. package/packages/menu/index.js +5 -5
  115. package/packages/menu/src/main.vue +584 -584
  116. package/packages/nav/index.js +5 -5
  117. package/packages/nav/src/main.vue +351 -351
  118. package/packages/notify/index.js +5 -5
  119. package/packages/notify/src/main.vue +538 -538
  120. package/packages/page/index.js +5 -5
  121. package/packages/page/src/main.vue +167 -167
  122. package/packages/pagination/index.js +5 -5
  123. package/packages/pagination/src/main.vue +96 -96
  124. package/packages/player/index.js +5 -5
  125. package/packages/player/src/main.vue +194 -194
  126. package/packages/qr-code/index.js +5 -5
  127. package/packages/qr-code/src/main.vue +170 -170
  128. package/packages/radio-group/index.js +6 -6
  129. package/packages/radio-group/src/main.vue +319 -319
  130. package/packages/retrial-auth/index.js +5 -5
  131. package/packages/retrial-auth/src/main.vue +280 -280
  132. package/packages/select/index.js +5 -5
  133. package/packages/select/src/main.vue +778 -778
  134. package/packages/select-ganged/index.js +5 -5
  135. package/packages/select-ganged/src/main.vue +724 -724
  136. package/packages/selector/index.js +5 -5
  137. package/packages/selector/src/main.vue +747 -745
  138. package/packages/selector-panel/index.js +5 -5
  139. package/packages/selector-panel/src/main.vue +1027 -1027
  140. package/packages/selector-panel/src/selection.vue +170 -170
  141. package/packages/selector-panel/src/tree.vue +129 -129
  142. package/packages/sizer/index.js +5 -5
  143. package/packages/sizer/src/main.vue +254 -254
  144. package/packages/steps/index.js +5 -5
  145. package/packages/steps/src/main.vue +181 -181
  146. package/packages/switch/index.js +5 -5
  147. package/packages/switch/src/main.vue +154 -154
  148. package/packages/table-form/index.js +5 -5
  149. package/packages/tabs/index.js +5 -5
  150. package/packages/tabs/src/main.vue +788 -788
  151. package/packages/tabs-panel/index.js +5 -5
  152. package/packages/tabs-panel/src/main.vue +29 -29
  153. package/packages/theme-chalk/lib/index.css +1 -1
  154. package/packages/theme-chalk/lib/selector.css +1 -1
  155. package/packages/theme-chalk/src/base.scss +261 -261
  156. package/packages/theme-chalk/src/button-group.scss +176 -176
  157. package/packages/theme-chalk/src/button.scss +24 -24
  158. package/packages/theme-chalk/src/calendar.scss +113 -113
  159. package/packages/theme-chalk/src/card.scss +99 -99
  160. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  161. package/packages/theme-chalk/src/clients.scss +87 -87
  162. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  163. package/packages/theme-chalk/src/data-table.scss +293 -293
  164. package/packages/theme-chalk/src/date-picker.scss +7 -7
  165. package/packages/theme-chalk/src/dialog.scss +77 -77
  166. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  167. package/packages/theme-chalk/src/enterprise.scss +5 -5
  168. package/packages/theme-chalk/src/error-page.scss +18 -18
  169. package/packages/theme-chalk/src/flow-group.scss +110 -110
  170. package/packages/theme-chalk/src/flow-list.scss +39 -39
  171. package/packages/theme-chalk/src/flow.scss +348 -348
  172. package/packages/theme-chalk/src/form.scss +499 -499
  173. package/packages/theme-chalk/src/handle-user.scss +40 -40
  174. package/packages/theme-chalk/src/handler.scss +143 -143
  175. package/packages/theme-chalk/src/icon.scss +1817 -1817
  176. package/packages/theme-chalk/src/icons.scss +99 -99
  177. package/packages/theme-chalk/src/input.scss +9 -9
  178. package/packages/theme-chalk/src/label.scss +24 -24
  179. package/packages/theme-chalk/src/layout.scss +46 -46
  180. package/packages/theme-chalk/src/login.scss +984 -984
  181. package/packages/theme-chalk/src/main.scss +663 -663
  182. package/packages/theme-chalk/src/menu.scss +222 -222
  183. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  184. package/packages/theme-chalk/src/nav.scss +111 -111
  185. package/packages/theme-chalk/src/page.scss +3 -3
  186. package/packages/theme-chalk/src/pagination.scss +29 -29
  187. package/packages/theme-chalk/src/player.scss +9 -9
  188. package/packages/theme-chalk/src/qr-code.scss +17 -17
  189. package/packages/theme-chalk/src/radio-group.scss +9 -9
  190. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  191. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  192. package/packages/theme-chalk/src/select.scss +8 -8
  193. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  194. package/packages/theme-chalk/src/selector.scss +92 -91
  195. package/packages/theme-chalk/src/simplicity.scss +1355 -1355
  196. package/packages/theme-chalk/src/sizer.scss +36 -36
  197. package/packages/theme-chalk/src/steps.scss +88 -88
  198. package/packages/theme-chalk/src/switch.scss +3 -3
  199. package/packages/theme-chalk/src/table-form.scss +1 -1
  200. package/packages/theme-chalk/src/tabs.scss +87 -87
  201. package/packages/theme-chalk/src/tips.scss +7 -7
  202. package/packages/theme-chalk/src/toolbar.scss +179 -179
  203. package/packages/theme-chalk/src/tree-group.scss +72 -72
  204. package/packages/theme-chalk/src/tree.scss +165 -165
  205. package/packages/theme-chalk/src/upload.scss +172 -172
  206. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  207. package/packages/tips/index.js +5 -5
  208. package/packages/tips/src/main.vue +141 -141
  209. package/packages/toolbar/index.js +5 -5
  210. package/packages/toolbar/src/main.vue +430 -430
  211. package/packages/tree/index.js +5 -5
  212. package/packages/tree-group/index.js +5 -5
  213. package/packages/upload/index.js +5 -5
  214. package/packages/upload/src/main.vue +1348 -1348
  215. package/packages/upload/src/picture.js +15 -15
  216. package/packages/wujie/index.js +5 -5
  217. package/packages/wujie/src/main.vue +145 -145
  218. package/packages/wxlogin/index.js +5 -5
  219. package/packages/wxlogin/src/main.vue +128 -128
  220. package/src/config/api.js +294 -294
  221. package/src/config/image.js +2 -2
  222. package/src/index.js +163 -163
  223. package/src/utils/bus.js +3 -3
  224. package/src/utils/date-util.js +312 -312
  225. package/src/utils/http.js +50 -50
  226. package/src/utils/rules.js +18 -18
  227. package/src/utils/store.js +21 -21
  228. package/src/utils/webSocket.js +107 -107
  229. package/packages/.DS_Store +0 -0
  230. package/packages/autocomplete/.DS_Store +0 -0
  231. package/packages/calogin/.DS_Store +0 -0
  232. package/packages/date-picker/.DS_Store +0 -0
  233. package/packages/date-picker/src/.DS_Store +0 -0
  234. package/packages/flow/.DS_Store +0 -0
  235. package/packages/flow/src/.DS_Store +0 -0
  236. package/packages/flow-list/.DS_Store +0 -0
  237. package/packages/form/.DS_Store +0 -0
  238. package/packages/login/.DS_Store +0 -0
  239. package/packages/main/.DS_Store +0 -0
  240. package/packages/main/src/.DS_Store +0 -0
  241. package/packages/menu/.DS_Store +0 -0
  242. package/packages/scrollbar/.DS_Store +0 -0
  243. package/packages/select/.DS_Store +0 -0
  244. package/packages/selector/.DS_Store +0 -0
  245. package/packages/selector-panel/.DS_Store +0 -0
  246. package/packages/theme-chalk/src/.DS_Store +0 -0
  247. package/packages/upload/.DS_Store +0 -0
  248. package/src/.DS_Store +0 -0
  249. package/src/utils/.DS_Store +0 -0
@@ -1,296 +1,296 @@
1
- <template>
2
- <div
3
- v-loading="loading"
4
- class="es-flow-form"
5
- element-loading-text="加载中..."
6
- element-loading-spinner="el-icon-loading"
7
- element-loading-background="rgba(255, 255,255, 0.8)"
8
- >
9
- <el-form
10
- ref="nextNode"
11
- :model="nextNode"
12
- class="demo-dynamic"
13
- label-width="100px"
14
- label-align="left"
15
- >
16
- <div style="max-height: 290px; overflow-y: auto; margin-bottom: 10px">
17
- <el-form-item prop="nodeName" label="当前节点">
18
- <el-input v-model="nodeName" disabled />
19
- </el-form-item>
20
- <el-form-item
21
- prop="nextNodeId"
22
- label="驳回对象"
23
- :rules="[
24
- { required: true, message: `请选择驳回对象`, trigger: 'blur' }
25
- ]"
26
- >
27
- <el-radio-group v-model="nextNode.nextNodeId">
28
- <el-radio v-for="item of rejectObj" :key="item.id" :label="item.id">
29
- {{ item.name }}
30
- </el-radio>
31
- </el-radio-group>
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 v-model="nextNode.noticeType">
41
- <el-checkbox
42
- v-for="item of nextNode.noticeList"
43
- :key="item.cciValue"
44
- :label="item.cciValue"
45
- :disabled="readOnlyNotificationType
46
- ? readOnlyNotificationType.indexOf(item.cciValue) != -1
47
- : false"
48
- >
49
- {{ item.shortName }}
50
- </el-checkbox>
51
- </el-checkbox-group>
52
- </el-form-item>
53
- <el-form-item
54
- v-show="nextNode.noticeType.length != 0"
55
- prop="nextNode"
56
- label="通知消息"
57
- >
58
- <!-- <span>{{ newsInfo }}</span> -->
59
- <es-input
60
- type="textarea"
61
- :rows="4"
62
- placeholder="请输入内容"
63
- v-model="newsInformation"
64
- :readonly="notificationMessageReadOnly"
65
- >
66
- </es-input>
67
- </el-form-item>
68
- </div>
69
- <el-form-item>
70
- <!-- size="small" -->
71
- <div style="text-align: right">
72
- <el-button
73
- type="primary"
74
- @click="subProcess('nextNode')"
75
- >
76
- 提交
77
- </el-button>
78
- </div>
79
- </el-form-item>
80
- </el-form>
81
- <!-- <el-dialog title="下步处理对象" :visible.sync="show" width="60%">
82
- <div>123</div>
83
- </el-dialog> -->
84
- </div>
85
- </template>
86
-
87
- <script>
88
- import {
89
- findSysCodes,
90
- taskRejectHtml,
91
- findCodeValues,
92
- toTaskRejectHtml
93
- } from 'eoss-ui/src/config/api';
94
- import util from 'eoss-ui/src/utils/util';
95
- export default {
96
- name: 'ProcessReject',
97
- props: {
98
- pendingId: { type: String, default: '' },
99
- newsInfo: { type: String, default: '' },
100
- showReject: { type: Boolean },
101
- option: { type: String, default: '' },
102
- simpleTips:{type:Boolean,default:true}
103
- },
104
- data() {
105
- return {
106
- loading: false,
107
- notificationMessageReadOnly: false,
108
- readOnlyNotificationType: '',
109
- nextNode: {
110
- noticeType: [],
111
- opinion: undefined, // 审批意见
112
- notificationMsg: undefined, // 系统消息
113
- nextNodeId: undefined,
114
- noticeList: []
115
- },
116
- showMsg: false, // 判断是否显示系统消息
117
- showOpinion: false, // 常用意见弹框
118
- nodeName: '',
119
- isOpinionRequired: 0, // 意见是否必填
120
- rejectObj: [], //
121
- isHiddenOftenOpinion: undefined, // 是否隐藏常用意见
122
- nodeDefaultRejectOpinion: undefined, // 默认提交意见
123
- checked: true, // 系统消息是否选中
124
- defaultNotificationType: undefined, // /默认选中通知类型
125
- newsInformation: '' //系统消息
126
- };
127
- },
128
- watch: {
129
- showReject(val) {
130
- if (val) {
131
- this.getProcessReject();
132
- }
133
- }
134
- },
135
- mounted() {
136
- this.newsInformation = this.newsInfo;
137
- this.getNodeType();
138
- this.getProcessReject();
139
- },
140
- methods: {
141
- getNodeType() {
142
- util
143
- .ajax({
144
- url: findCodeValues,
145
- params: {
146
- ccCode: 'notification_type',
147
- userId: util.getStorage('userId'),
148
- pendingId:this.pendingId
149
- }
150
- })
151
- .then((res) => {
152
- const { status, data } = res;
153
- if (status === 'success') {
154
- this.nextNode.noticeList = data;
155
- }
156
- })
157
- .catch((err) => {
158
- this.loading = false;
159
- if (err.message && err.message !== 'canceled') {
160
- this.$message.error(err.message);
161
- }
162
- });
163
- },
164
- // 提交表单
165
- subProcess(formName) {
166
- this.saveProcess(formName);
167
- },
168
- saveProcess(formName) {
169
- this.$refs[formName].validate((valid) => {
170
- if (valid) {
171
- if (!this.option && this.isOpinionRequired === 1) {
172
- this.$message.warning('请选择输入审批意见');
173
- return;
174
- }
175
- this.loading = true;
176
- let noticeType = this.nextNode.noticeType.join(',');
177
- let params = {
178
- pendingId: this.pendingId,
179
- opinion: this.option, // 审批意见
180
- notificationMsg: this.newsInformation, // 系统消息
181
- notificationType: noticeType,
182
- userId: util.getStorage('userId'),
183
- nextNodeId: this.nextNode.nextNodeId
184
- };
185
- util
186
- .ajax({ url: taskRejectHtml, method: 'post', data: params })
187
- .then((res) => {
188
- const { status, message } = res;
189
- this.loading = false;
190
- if (status === 'success') {
191
- this.quit(true);
192
- this.simpleTips && this.$message.success('操作成功');
193
- } else {
194
- this.$message.error(message || '系统错误,请联系管理员!');
195
- }
196
- })
197
- .catch((err) => {
198
- this.loading = false;
199
- if (err.message && err.message !== 'canceled') {
200
- this.$message.error(err.message);
201
- }
202
- });
203
- } else {
204
- return false;
205
- }
206
- });
207
- },
208
- // 取消
209
- quit(val) {
210
- this.$emit('cancel', val);
211
- },
212
- getFind() {
213
- util
214
- .ajax({
215
- url: findSysCodes
216
- })
217
- .then((res) => {
218
- const { status, message } = res;
219
- if (status === 'success') {
220
- this.nextNode.noticeType = message.split(',');
221
- let arr = [];
222
- this.nextNode.noticeList.map((item) => {
223
- this.nextNode.noticeType.map((x) => {
224
- if (x == item.cciValue) {
225
- arr.push(x);
226
- }
227
- });
228
- });
229
- this.nextNode.noticeType = arr;
230
- }
231
- })
232
- .catch((err) => {
233
- this.loading = false;
234
- if (err.message && err.message !== 'canceled') {
235
- this.$message.error(err.message);
236
- }
237
- });
238
- },
239
- getProcessReject() {
240
- this.loading = true;
241
- let params = {
242
- pendingId: this.pendingId,
243
- isSinglePage: false,
244
- opinion: this.option
245
- };
246
- util
247
- .ajax({ url: toTaskRejectHtml, params })
248
- .then((res) => {
249
- const {
250
- status,
251
- message,
252
- data: {
253
- rejectTaskNodes,
254
- taskExamine,
255
- nodeInfoMap,
256
- notificationMessageReadOnly,
257
- readOnlyNotificationType
258
- }
259
- } = res;
260
- this.loading = false;
261
- if (status === 'success') {
262
- this.isOpinionRequired = nodeInfoMap.nodeExtAttr.isOpinionRequired;
263
- this.readOnlyNotificationType = readOnlyNotificationType;
264
- this.notificationMessageReadOnly = notificationMessageReadOnly == 'true';
265
- if (!this.isOpinionRequired) {
266
- this.isOpinionRequired = 0;
267
- }
268
- let list = [];
269
- if (rejectTaskNodes) {
270
- for (let i in rejectTaskNodes) {
271
- let obj = {
272
- id: i,
273
- name: rejectTaskNodes[i]
274
- };
275
- list.push(obj);
276
- }
277
- this.nodeName = taskExamine.nodeName;
278
- this.rejectObj = list;
279
- this.rejectObj.length != 0 &&
280
- (this.nextNode.nextNodeId = this.rejectObj[0].id);
281
- }
282
- } else {
283
- this.$message.error(message || '系统错误,请联系管理员!');
284
- }
285
- })
286
- .catch((err) => {
287
- this.loading = false;
288
- if (err.message && err.message !== 'canceled') {
289
- this.$message.error(err.message);
290
- }
291
- });
292
- this.getFind();
293
- }
294
- }
295
- };
296
- </script>
1
+ <template>
2
+ <div
3
+ v-loading="loading"
4
+ class="es-flow-form"
5
+ element-loading-text="加载中..."
6
+ element-loading-spinner="el-icon-loading"
7
+ element-loading-background="rgba(255, 255,255, 0.8)"
8
+ >
9
+ <el-form
10
+ ref="nextNode"
11
+ :model="nextNode"
12
+ class="demo-dynamic"
13
+ label-width="100px"
14
+ label-align="left"
15
+ >
16
+ <div style="max-height: 290px; overflow-y: auto; margin-bottom: 10px">
17
+ <el-form-item prop="nodeName" label="当前节点">
18
+ <el-input v-model="nodeName" disabled />
19
+ </el-form-item>
20
+ <el-form-item
21
+ prop="nextNodeId"
22
+ label="驳回对象"
23
+ :rules="[
24
+ { required: true, message: `请选择驳回对象`, trigger: 'blur' }
25
+ ]"
26
+ >
27
+ <el-radio-group v-model="nextNode.nextNodeId">
28
+ <el-radio v-for="item of rejectObj" :key="item.id" :label="item.id">
29
+ {{ item.name }}
30
+ </el-radio>
31
+ </el-radio-group>
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 v-model="nextNode.noticeType">
41
+ <el-checkbox
42
+ v-for="item of nextNode.noticeList"
43
+ :key="item.cciValue"
44
+ :label="item.cciValue"
45
+ :disabled="readOnlyNotificationType
46
+ ? readOnlyNotificationType.indexOf(item.cciValue) != -1
47
+ : false"
48
+ >
49
+ {{ item.shortName }}
50
+ </el-checkbox>
51
+ </el-checkbox-group>
52
+ </el-form-item>
53
+ <el-form-item
54
+ v-show="nextNode.noticeType.length != 0"
55
+ prop="nextNode"
56
+ label="通知消息"
57
+ >
58
+ <!-- <span>{{ newsInfo }}</span> -->
59
+ <es-input
60
+ type="textarea"
61
+ :rows="4"
62
+ placeholder="请输入内容"
63
+ v-model="newsInformation"
64
+ :readonly="notificationMessageReadOnly"
65
+ >
66
+ </es-input>
67
+ </el-form-item>
68
+ </div>
69
+ <el-form-item>
70
+ <!-- size="small" -->
71
+ <div style="text-align: right">
72
+ <el-button
73
+ type="primary"
74
+ @click="subProcess('nextNode')"
75
+ >
76
+ 提交
77
+ </el-button>
78
+ </div>
79
+ </el-form-item>
80
+ </el-form>
81
+ <!-- <el-dialog title="下步处理对象" :visible.sync="show" width="60%">
82
+ <div>123</div>
83
+ </el-dialog> -->
84
+ </div>
85
+ </template>
86
+
87
+ <script>
88
+ import {
89
+ findSysCodes,
90
+ taskRejectHtml,
91
+ findCodeValues,
92
+ toTaskRejectHtml
93
+ } from 'eoss-ui/src/config/api';
94
+ import util from 'eoss-ui/src/utils/util';
95
+ export default {
96
+ name: 'ProcessReject',
97
+ props: {
98
+ pendingId: { type: String, default: '' },
99
+ newsInfo: { type: String, default: '' },
100
+ showReject: { type: Boolean },
101
+ option: { type: String, default: '' },
102
+ simpleTips:{type:Boolean,default:true}
103
+ },
104
+ data() {
105
+ return {
106
+ loading: false,
107
+ notificationMessageReadOnly: false,
108
+ readOnlyNotificationType: '',
109
+ nextNode: {
110
+ noticeType: [],
111
+ opinion: undefined, // 审批意见
112
+ notificationMsg: undefined, // 系统消息
113
+ nextNodeId: undefined,
114
+ noticeList: []
115
+ },
116
+ showMsg: false, // 判断是否显示系统消息
117
+ showOpinion: false, // 常用意见弹框
118
+ nodeName: '',
119
+ isOpinionRequired: 0, // 意见是否必填
120
+ rejectObj: [], //
121
+ isHiddenOftenOpinion: undefined, // 是否隐藏常用意见
122
+ nodeDefaultRejectOpinion: undefined, // 默认提交意见
123
+ checked: true, // 系统消息是否选中
124
+ defaultNotificationType: undefined, // /默认选中通知类型
125
+ newsInformation: '' //系统消息
126
+ };
127
+ },
128
+ watch: {
129
+ showReject(val) {
130
+ if (val) {
131
+ this.getProcessReject();
132
+ }
133
+ }
134
+ },
135
+ mounted() {
136
+ this.newsInformation = this.newsInfo;
137
+ this.getNodeType();
138
+ this.getProcessReject();
139
+ },
140
+ methods: {
141
+ getNodeType() {
142
+ util
143
+ .ajax({
144
+ url: findCodeValues,
145
+ params: {
146
+ ccCode: 'notification_type',
147
+ userId: util.getStorage('userId'),
148
+ pendingId:this.pendingId
149
+ }
150
+ })
151
+ .then((res) => {
152
+ const { status, data } = res;
153
+ if (status === 'success') {
154
+ this.nextNode.noticeList = data;
155
+ }
156
+ })
157
+ .catch((err) => {
158
+ this.loading = false;
159
+ if (err.message && err.message !== 'canceled') {
160
+ this.$message.error(err.message);
161
+ }
162
+ });
163
+ },
164
+ // 提交表单
165
+ subProcess(formName) {
166
+ this.saveProcess(formName);
167
+ },
168
+ saveProcess(formName) {
169
+ this.$refs[formName].validate((valid) => {
170
+ if (valid) {
171
+ if (!this.option && this.isOpinionRequired === 1) {
172
+ this.$message.warning('请选择输入审批意见');
173
+ return;
174
+ }
175
+ this.loading = true;
176
+ let noticeType = this.nextNode.noticeType.join(',');
177
+ let params = {
178
+ pendingId: this.pendingId,
179
+ opinion: this.option, // 审批意见
180
+ notificationMsg: this.newsInformation, // 系统消息
181
+ notificationType: noticeType,
182
+ userId: util.getStorage('userId'),
183
+ nextNodeId: this.nextNode.nextNodeId
184
+ };
185
+ util
186
+ .ajax({ url: taskRejectHtml, method: 'post', data: params })
187
+ .then((res) => {
188
+ const { status, message } = res;
189
+ this.loading = false;
190
+ if (status === 'success') {
191
+ this.quit(true);
192
+ this.simpleTips && this.$message.success('操作成功');
193
+ } else {
194
+ this.$message.error(message || '系统错误,请联系管理员!');
195
+ }
196
+ })
197
+ .catch((err) => {
198
+ this.loading = false;
199
+ if (err.message && err.message !== 'canceled') {
200
+ this.$message.error(err.message);
201
+ }
202
+ });
203
+ } else {
204
+ return false;
205
+ }
206
+ });
207
+ },
208
+ // 取消
209
+ quit(val) {
210
+ this.$emit('cancel', val);
211
+ },
212
+ getFind() {
213
+ util
214
+ .ajax({
215
+ url: findSysCodes
216
+ })
217
+ .then((res) => {
218
+ const { status, message } = res;
219
+ if (status === 'success') {
220
+ this.nextNode.noticeType = message.split(',');
221
+ let arr = [];
222
+ this.nextNode.noticeList.map((item) => {
223
+ this.nextNode.noticeType.map((x) => {
224
+ if (x == item.cciValue) {
225
+ arr.push(x);
226
+ }
227
+ });
228
+ });
229
+ this.nextNode.noticeType = arr;
230
+ }
231
+ })
232
+ .catch((err) => {
233
+ this.loading = false;
234
+ if (err.message && err.message !== 'canceled') {
235
+ this.$message.error(err.message);
236
+ }
237
+ });
238
+ },
239
+ getProcessReject() {
240
+ this.loading = true;
241
+ let params = {
242
+ pendingId: this.pendingId,
243
+ isSinglePage: false,
244
+ opinion: this.option
245
+ };
246
+ util
247
+ .ajax({ url: toTaskRejectHtml, params })
248
+ .then((res) => {
249
+ const {
250
+ status,
251
+ message,
252
+ data: {
253
+ rejectTaskNodes,
254
+ taskExamine,
255
+ nodeInfoMap,
256
+ notificationMessageReadOnly,
257
+ readOnlyNotificationType
258
+ }
259
+ } = res;
260
+ this.loading = false;
261
+ if (status === 'success') {
262
+ this.isOpinionRequired = nodeInfoMap.nodeExtAttr.isOpinionRequired;
263
+ this.readOnlyNotificationType = readOnlyNotificationType;
264
+ this.notificationMessageReadOnly = notificationMessageReadOnly == 'true';
265
+ if (!this.isOpinionRequired) {
266
+ this.isOpinionRequired = 0;
267
+ }
268
+ let list = [];
269
+ if (rejectTaskNodes) {
270
+ for (let i in rejectTaskNodes) {
271
+ let obj = {
272
+ id: i,
273
+ name: rejectTaskNodes[i]
274
+ };
275
+ list.push(obj);
276
+ }
277
+ this.nodeName = taskExamine.nodeName;
278
+ this.rejectObj = list;
279
+ this.rejectObj.length != 0 &&
280
+ (this.nextNode.nextNodeId = this.rejectObj[0].id);
281
+ }
282
+ } else {
283
+ this.$message.error(message || '系统错误,请联系管理员!');
284
+ }
285
+ })
286
+ .catch((err) => {
287
+ this.loading = false;
288
+ if (err.message && err.message !== 'canceled') {
289
+ this.$message.error(err.message);
290
+ }
291
+ });
292
+ this.getFind();
293
+ }
294
+ }
295
+ };
296
+ </script>