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,376 +1,376 @@
1
- <template>
2
- <div class="commonOpinion">
3
- <el-form :model="form" :rules="rules" ref="ruleForm" label-width="0">
4
- <el-form-item label="" prop="value">
5
- <el-tooltip
6
- :disabled="tooltipDisabled || !pendingItemHandleDescription"
7
- placement="top"
8
- >
9
- <div slot="content">{{ pendingItemHandleDescription }}</div>
10
- <el-input
11
- v-model="form.value"
12
- :disabled="isBanInputOpinion == '1' || disabled"
13
- type="textarea"
14
- clear="inp"
15
- :placeholder="pendingItemHandleDescription || '请输入意见'"
16
- @change="changeOpinion"
17
- @blur="handleBlur"
18
- @focus="handleFocus"
19
- :rows="rows"
20
- ></el-input>
21
- </el-tooltip>
22
- </el-form-item>
23
- </el-form>
24
- <el-input
25
- v-model="input3"
26
- placeholder="请输入内容"
27
- class="input-with-select"
28
- >
29
- <el-select
30
- v-model="selectValue"
31
- slot="prepend"
32
- :disabled="isBanInputOpinion == '1'"
33
- placeholder="--请选择常用语--"
34
- @change="selectChange"
35
- >
36
- <el-option
37
- v-for="item in optionList"
38
- :key="item.id"
39
- :label="item.content"
40
- :value="item.content"
41
- ></el-option>
42
- </el-select>
43
- <el-button
44
- :disabled="disabled"
45
- slot="append"
46
- icon="el-icon-edit"
47
- @click="dialogVisible = true"
48
- ></el-button>
49
- </el-input>
50
-
51
- <!-- 弹窗内容 -->
52
- <es-dialog
53
- append-to-body
54
- title="常用意见设置"
55
- :close-on-click-modal="false"
56
- :visible.sync="dialogVisible"
57
- >
58
- <div class="commonOpinion-set">
59
- <div style="text-align: right">
60
- <el-button
61
- style="margin-right: 22px;"
62
- type="primary"
63
- size="small"
64
- @click="
65
- () => {
66
- addVisible = true;
67
- (FormData.sep = optionList.length + 1),
68
- (FormData.content = ''),
69
- (FormData.id = null);
70
- }
71
- "
72
- >
73
- 新增
74
- </el-button>
75
- </div>
76
- <Table
77
- style="flex: 1; display: flex; flex-direction: column"
78
- v-if="dialogVisible"
79
- :data-list="optionList"
80
- @upDateClick="upDate"
81
- @delClick="del"
82
- />
83
- </div>
84
- </es-dialog>
85
-
86
- <es-dialog
87
- append-to-body
88
- :close-on-click-modal="false"
89
- title="添加常用意见"
90
- :visible.sync="addVisible"
91
- :showScale="false"
92
- v-if="addVisible"
93
- width="600"
94
- height="auto"
95
- >
96
- <ideas :data="FormData" @subMit="submit" />
97
- </es-dialog>
98
- </div>
99
- </template>
100
-
101
- <script>
102
- import {
103
- saveCommonOpinion,
104
- updateCommonOpinion,
105
- commonOpion,
106
- findSysParam,
107
- deleteCommonOpion
108
- } from 'eoss-ui/src/config/api';
109
- import Table from '../table.vue';
110
- import ideas from '../form.vue';
111
- import util from 'eoss-ui/src/utils/util';
112
- export default {
113
- name: 'CommonOpinions',
114
- components: {
115
- [ideas.name]: ideas,
116
- [Table.name]: Table
117
- },
118
- data() {
119
- return {
120
- value: '',
121
- tooltipDisabled: false,
122
- form: {
123
- value: ''
124
- },
125
- input3: '',
126
- selectValue: '',
127
- optionList: [],
128
- dialogVisible: false,
129
- addVisible: false,
130
- disabled: false,
131
- FormData: {
132
- id: null
133
- }
134
- };
135
- },
136
- props: {
137
- isBanInputOpinion: {
138
- type: Number,
139
- default: 0
140
- },
141
- opinion: {
142
- type: String,
143
- default: ''
144
- },
145
- pendingItemHandleDescription: {
146
- type: String,
147
- default: ''
148
- },
149
- nodeFixedOpinionSelectList: {
150
- type: Array,
151
- default: () => []
152
- },
153
- rows: {
154
- type: [Number, String],
155
- default: 10
156
- },
157
- required: { type: Boolean, default: false }
158
- },
159
- computed: {
160
- rules() {
161
- return {
162
- value: [
163
- {
164
- required: this.required,
165
- message: '请输入意见',
166
- trigger: 'blur'
167
- }
168
- ]
169
- };
170
- }
171
- },
172
- mounted() {
173
- this.form.value = this.opinion;
174
- if (this.nodeFixedOpinionSelectList.length > 0) {
175
- this.optionList = this.nodeFixedOpinionSelectList;
176
- this.disabled = true;
177
- } else {
178
- this.getCommonOpion();
179
- }
180
- },
181
- watch: {
182
- opinion(val) {
183
- this.form.value = val;
184
- this.changeOpinion();
185
- }
186
- },
187
- methods: {
188
- handleBlur() {
189
- this.$emit('blur', this.form.value);
190
- this.tooltipDisabled = false;
191
- },
192
- handleFocus() {
193
- this.$emit('focus', this.form.value);
194
- this.tooltipDisabled = true;
195
- },
196
- validate() {
197
- let validSate = true;
198
- this.$refs.ruleForm.validate((valid) => {
199
- if (valid) {
200
- validSate = true;
201
- } else {
202
- validSate = false;
203
- }
204
- });
205
- return validSate;
206
- },
207
- /**
208
- * changeOpinion
209
- * @desc:监听意见变化
210
- * @author liufan
211
- * @date 2022年10月28日
212
- **/
213
- changeOpinion() {
214
- this.$emit('change', this.form.value);
215
- },
216
- /**
217
- * getCommonOpion
218
- * @desc:获取意见
219
- * @author liufan
220
- * @date 2022年5月25日
221
- **/
222
- getCommonOpion() {
223
- util
224
- .ajax({
225
- url: commonOpion,
226
- params: {
227
- userId: util.getStorage('userId')
228
- },
229
- method: 'post'
230
- })
231
- .then((res) => {
232
- const { status, data, msg } = res;
233
- if (status === 'success') {
234
- this.optionList = data.list;
235
- this.FormData.sep = this.optionList.length + 1;
236
- } else {
237
- this.$message.error(msg || '系统错误,请联系管理员!');
238
- }
239
- })
240
- .catch((err) => {
241
- if (err.message && err.message !== 'canceled') {
242
- this.$message.error(err.message);
243
- }
244
- });
245
- },
246
- /**
247
- * upDate
248
- * @desc:修改常用语
249
- * @author liufan
250
- * @param {Object} val 修改值
251
- * @date 2022年5月25日
252
- **/
253
- upDate(val) {
254
- this.FormData.id = val.id;
255
- this.addVisible = true;
256
- },
257
- /**
258
- * selectChange
259
- * @desc:常用语选择
260
- * @author liufan
261
- * @param {String} val 选中值
262
- * @date 2022年5月25日
263
- **/
264
- selectChange(val) {
265
- const that = this;
266
- util
267
- .ajax({
268
- url: findSysParam,
269
- params: { cpName: 'commonOpinionsSelectType' }
270
- })
271
- .then((res) => {
272
- if (res.status == 'success') {
273
- res.data == 2
274
- ? (that.form.value = that.form.value + val)
275
- : (that.form.value = val);
276
- } else {
277
- that.form.value = val;
278
- }
279
- this.$emit('change', that.form.value);
280
- });
281
- },
282
- /**
283
- * del
284
- * @desc:删除常用语
285
- * @author liufan
286
- * @param {Object} val 删除的数据
287
- * @date 2022年5月25日
288
- **/
289
- del(val) {
290
- this.$confirm('您确定要删除此信息吗?', '提示', {
291
- confirmButtonText: '确定',
292
- cancelButtonText: '取消',
293
- type: 'warning'
294
- })
295
- .then(() => {
296
- this.loading = util.loading(this.$loading, '删除中...');
297
- util
298
- .ajax({
299
- url: deleteCommonOpion,
300
- params: {
301
- id: val.id
302
- }
303
- })
304
- .then((res) => {
305
- const { status, message } = res;
306
- if (status == 'success') {
307
- this.$message({
308
- type: 'success',
309
- message: '删除成功!'
310
- });
311
- this.getCommonOpion();
312
- } else {
313
- this.$message({
314
- type: 'error',
315
- message: message || '系统错误,请联系管理员!'
316
- });
317
- }
318
- this.loading.close();
319
- })
320
- .catch((err) => {
321
- if (err.message && err.message !== 'canceled') {
322
- this.$message.error(err.message);
323
- }
324
- this.loading.close();
325
- });
326
- })
327
- .catch((e) => {});
328
- },
329
- /**
330
- * submit
331
- * @desc:新增/编辑意见保存
332
- * @author liufan
333
- * @param {Object} val 保存数据
334
- * @date 2022年5月25日
335
- **/
336
- submit(val) {
337
- const { addVisible, data } = val;
338
- let info = {};
339
- for (let key in data) {
340
- info[`bean.${key}`] = data[key];
341
- }
342
- this.loading = util.loading(this.$loading, '提交中...');
343
- util
344
- .ajax({
345
- url: data.id ? updateCommonOpinion : saveCommonOpinion,
346
- data: info,
347
- header: { 'Content-Type': 'multipart/form-data' },
348
- method: 'post'
349
- })
350
- .then((res) => {
351
- const { rCode, msg } = res;
352
- this.loading.close();
353
- if (!rCode) {
354
- if (this.FormData.id) {
355
- this.$message.success('修改成功');
356
- } else {
357
- this.$message.success('新增成功');
358
- }
359
- this.getCommonOpion();
360
- } else {
361
- this.$message.error(msg || '系统错误,请联系管理员!');
362
- }
363
- this.addVisible = addVisible;
364
- })
365
- .catch((err) => {
366
- this.loading.close();
367
- if (err.message && err.message !== 'canceled') {
368
- this.$message.error(err.message);
369
- }
370
- });
371
- }
372
- }
373
- };
374
- </script>
375
-
376
- <style></style>
1
+ <template>
2
+ <div class="commonOpinion">
3
+ <el-form :model="form" :rules="rules" ref="ruleForm" label-width="0">
4
+ <el-form-item label="" prop="value">
5
+ <el-tooltip
6
+ :disabled="tooltipDisabled || !pendingItemHandleDescription"
7
+ placement="top"
8
+ >
9
+ <div slot="content">{{ pendingItemHandleDescription }}</div>
10
+ <el-input
11
+ v-model="form.value"
12
+ :disabled="isBanInputOpinion == '1' || disabled"
13
+ type="textarea"
14
+ clear="inp"
15
+ :placeholder="pendingItemHandleDescription || '请输入意见'"
16
+ @change="changeOpinion"
17
+ @blur="handleBlur"
18
+ @focus="handleFocus"
19
+ :rows="rows"
20
+ ></el-input>
21
+ </el-tooltip>
22
+ </el-form-item>
23
+ </el-form>
24
+ <el-input
25
+ v-model="input3"
26
+ placeholder="请输入内容"
27
+ class="input-with-select"
28
+ >
29
+ <el-select
30
+ v-model="selectValue"
31
+ slot="prepend"
32
+ :disabled="isBanInputOpinion == '1'"
33
+ placeholder="--请选择常用语--"
34
+ @change="selectChange"
35
+ >
36
+ <el-option
37
+ v-for="item in optionList"
38
+ :key="item.id"
39
+ :label="item.content"
40
+ :value="item.content"
41
+ ></el-option>
42
+ </el-select>
43
+ <el-button
44
+ :disabled="disabled"
45
+ slot="append"
46
+ icon="el-icon-edit"
47
+ @click="dialogVisible = true"
48
+ ></el-button>
49
+ </el-input>
50
+
51
+ <!-- 弹窗内容 -->
52
+ <es-dialog
53
+ append-to-body
54
+ title="常用意见设置"
55
+ :close-on-click-modal="false"
56
+ :visible.sync="dialogVisible"
57
+ >
58
+ <div class="commonOpinion-set">
59
+ <div style="text-align: right">
60
+ <el-button
61
+ style="margin-right: 22px;"
62
+ type="primary"
63
+ size="small"
64
+ @click="
65
+ () => {
66
+ addVisible = true;
67
+ (FormData.sep = optionList.length + 1),
68
+ (FormData.content = ''),
69
+ (FormData.id = null);
70
+ }
71
+ "
72
+ >
73
+ 新增
74
+ </el-button>
75
+ </div>
76
+ <Table
77
+ style="flex: 1; display: flex; flex-direction: column"
78
+ v-if="dialogVisible"
79
+ :data-list="optionList"
80
+ @upDateClick="upDate"
81
+ @delClick="del"
82
+ />
83
+ </div>
84
+ </es-dialog>
85
+
86
+ <es-dialog
87
+ append-to-body
88
+ :close-on-click-modal="false"
89
+ title="添加常用意见"
90
+ :visible.sync="addVisible"
91
+ :showScale="false"
92
+ v-if="addVisible"
93
+ width="600"
94
+ height="auto"
95
+ >
96
+ <ideas :data="FormData" @subMit="submit" />
97
+ </es-dialog>
98
+ </div>
99
+ </template>
100
+
101
+ <script>
102
+ import {
103
+ saveCommonOpinion,
104
+ updateCommonOpinion,
105
+ commonOpion,
106
+ findSysParam,
107
+ deleteCommonOpion
108
+ } from 'eoss-ui/src/config/api';
109
+ import Table from '../table.vue';
110
+ import ideas from '../form.vue';
111
+ import util from 'eoss-ui/src/utils/util';
112
+ export default {
113
+ name: 'CommonOpinions',
114
+ components: {
115
+ [ideas.name]: ideas,
116
+ [Table.name]: Table
117
+ },
118
+ data() {
119
+ return {
120
+ value: '',
121
+ tooltipDisabled: false,
122
+ form: {
123
+ value: ''
124
+ },
125
+ input3: '',
126
+ selectValue: '',
127
+ optionList: [],
128
+ dialogVisible: false,
129
+ addVisible: false,
130
+ disabled: false,
131
+ FormData: {
132
+ id: null
133
+ }
134
+ };
135
+ },
136
+ props: {
137
+ isBanInputOpinion: {
138
+ type: Number,
139
+ default: 0
140
+ },
141
+ opinion: {
142
+ type: String,
143
+ default: ''
144
+ },
145
+ pendingItemHandleDescription: {
146
+ type: String,
147
+ default: ''
148
+ },
149
+ nodeFixedOpinionSelectList: {
150
+ type: Array,
151
+ default: () => []
152
+ },
153
+ rows: {
154
+ type: [Number, String],
155
+ default: 10
156
+ },
157
+ required: { type: Boolean, default: false }
158
+ },
159
+ computed: {
160
+ rules() {
161
+ return {
162
+ value: [
163
+ {
164
+ required: this.required,
165
+ message: '请输入意见',
166
+ trigger: 'blur'
167
+ }
168
+ ]
169
+ };
170
+ }
171
+ },
172
+ mounted() {
173
+ this.form.value = this.opinion;
174
+ if (this.nodeFixedOpinionSelectList.length > 0) {
175
+ this.optionList = this.nodeFixedOpinionSelectList;
176
+ this.disabled = true;
177
+ } else {
178
+ this.getCommonOpion();
179
+ }
180
+ },
181
+ watch: {
182
+ opinion(val) {
183
+ this.form.value = val;
184
+ this.changeOpinion();
185
+ }
186
+ },
187
+ methods: {
188
+ handleBlur() {
189
+ this.$emit('blur', this.form.value);
190
+ this.tooltipDisabled = false;
191
+ },
192
+ handleFocus() {
193
+ this.$emit('focus', this.form.value);
194
+ this.tooltipDisabled = true;
195
+ },
196
+ validate() {
197
+ let validSate = true;
198
+ this.$refs.ruleForm.validate((valid) => {
199
+ if (valid) {
200
+ validSate = true;
201
+ } else {
202
+ validSate = false;
203
+ }
204
+ });
205
+ return validSate;
206
+ },
207
+ /**
208
+ * changeOpinion
209
+ * @desc:监听意见变化
210
+ * @author liufan
211
+ * @date 2022年10月28日
212
+ **/
213
+ changeOpinion() {
214
+ this.$emit('change', this.form.value);
215
+ },
216
+ /**
217
+ * getCommonOpion
218
+ * @desc:获取意见
219
+ * @author liufan
220
+ * @date 2022年5月25日
221
+ **/
222
+ getCommonOpion() {
223
+ util
224
+ .ajax({
225
+ url: commonOpion,
226
+ params: {
227
+ userId: util.getStorage('userId')
228
+ },
229
+ method: 'post'
230
+ })
231
+ .then((res) => {
232
+ const { status, data, msg } = res;
233
+ if (status === 'success') {
234
+ this.optionList = data.list;
235
+ this.FormData.sep = this.optionList.length + 1;
236
+ } else {
237
+ this.$message.error(msg || '系统错误,请联系管理员!');
238
+ }
239
+ })
240
+ .catch((err) => {
241
+ if (err.message && err.message !== 'canceled') {
242
+ this.$message.error(err.message);
243
+ }
244
+ });
245
+ },
246
+ /**
247
+ * upDate
248
+ * @desc:修改常用语
249
+ * @author liufan
250
+ * @param {Object} val 修改值
251
+ * @date 2022年5月25日
252
+ **/
253
+ upDate(val) {
254
+ this.FormData.id = val.id;
255
+ this.addVisible = true;
256
+ },
257
+ /**
258
+ * selectChange
259
+ * @desc:常用语选择
260
+ * @author liufan
261
+ * @param {String} val 选中值
262
+ * @date 2022年5月25日
263
+ **/
264
+ selectChange(val) {
265
+ const that = this;
266
+ util
267
+ .ajax({
268
+ url: findSysParam,
269
+ params: { cpName: 'commonOpinionsSelectType' }
270
+ })
271
+ .then((res) => {
272
+ if (res.status == 'success') {
273
+ res.data == 2
274
+ ? (that.form.value = that.form.value + val)
275
+ : (that.form.value = val);
276
+ } else {
277
+ that.form.value = val;
278
+ }
279
+ this.$emit('change', that.form.value);
280
+ });
281
+ },
282
+ /**
283
+ * del
284
+ * @desc:删除常用语
285
+ * @author liufan
286
+ * @param {Object} val 删除的数据
287
+ * @date 2022年5月25日
288
+ **/
289
+ del(val) {
290
+ this.$confirm('您确定要删除此信息吗?', '提示', {
291
+ confirmButtonText: '确定',
292
+ cancelButtonText: '取消',
293
+ type: 'warning'
294
+ })
295
+ .then(() => {
296
+ this.loading = util.loading(this.$loading, '删除中...');
297
+ util
298
+ .ajax({
299
+ url: deleteCommonOpion,
300
+ params: {
301
+ id: val.id
302
+ }
303
+ })
304
+ .then((res) => {
305
+ const { status, message } = res;
306
+ if (status == 'success') {
307
+ this.$message({
308
+ type: 'success',
309
+ message: '删除成功!'
310
+ });
311
+ this.getCommonOpion();
312
+ } else {
313
+ this.$message({
314
+ type: 'error',
315
+ message: message || '系统错误,请联系管理员!'
316
+ });
317
+ }
318
+ this.loading.close();
319
+ })
320
+ .catch((err) => {
321
+ if (err.message && err.message !== 'canceled') {
322
+ this.$message.error(err.message);
323
+ }
324
+ this.loading.close();
325
+ });
326
+ })
327
+ .catch((e) => {});
328
+ },
329
+ /**
330
+ * submit
331
+ * @desc:新增/编辑意见保存
332
+ * @author liufan
333
+ * @param {Object} val 保存数据
334
+ * @date 2022年5月25日
335
+ **/
336
+ submit(val) {
337
+ const { addVisible, data } = val;
338
+ let info = {};
339
+ for (let key in data) {
340
+ info[`bean.${key}`] = data[key];
341
+ }
342
+ this.loading = util.loading(this.$loading, '提交中...');
343
+ util
344
+ .ajax({
345
+ url: data.id ? updateCommonOpinion : saveCommonOpinion,
346
+ data: info,
347
+ header: { 'Content-Type': 'multipart/form-data' },
348
+ method: 'post'
349
+ })
350
+ .then((res) => {
351
+ const { rCode, msg } = res;
352
+ this.loading.close();
353
+ if (!rCode) {
354
+ if (this.FormData.id) {
355
+ this.$message.success('修改成功');
356
+ } else {
357
+ this.$message.success('新增成功');
358
+ }
359
+ this.getCommonOpion();
360
+ } else {
361
+ this.$message.error(msg || '系统错误,请联系管理员!');
362
+ }
363
+ this.addVisible = addVisible;
364
+ })
365
+ .catch((err) => {
366
+ this.loading.close();
367
+ if (err.message && err.message !== 'canceled') {
368
+ this.$message.error(err.message);
369
+ }
370
+ });
371
+ }
372
+ }
373
+ };
374
+ </script>
375
+
376
+ <style></style>