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