eoss-ui 0.6.50 → 0.6.52

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 (218) hide show
  1. package/lib/eoss-ui.common.js +577 -530
  2. package/lib/flow-list.js +110 -87
  3. package/lib/flow.js +306 -282
  4. package/lib/index.js +1 -1
  5. package/lib/main.js +132 -132
  6. package/lib/qr-code.js +13 -13
  7. package/lib/upload.js +6 -6
  8. package/package.json +159 -159
  9. package/packages/button/index.js +5 -5
  10. package/packages/button/src/main.vue +418 -418
  11. package/packages/button-group/index.js +5 -5
  12. package/packages/button-group/src/main.vue +298 -298
  13. package/packages/calendar/index.js +5 -5
  14. package/packages/card/index.js +5 -5
  15. package/packages/card/src/main.vue +156 -156
  16. package/packages/cascader/index.js +5 -5
  17. package/packages/cascader/src/main.vue +168 -168
  18. package/packages/checkbox-group/index.js +5 -5
  19. package/packages/checkbox-group/src/main.vue +333 -333
  20. package/packages/clients/index.js +5 -5
  21. package/packages/clients/src/main.vue +144 -144
  22. package/packages/data-table/index.js +5 -5
  23. package/packages/data-table/src/children.vue +39 -39
  24. package/packages/data-table/src/column.vue +989 -989
  25. package/packages/data-table/src/main.vue +1822 -1822
  26. package/packages/data-table/src/sizer.vue +195 -195
  27. package/packages/data-table-form/index.js +5 -5
  28. package/packages/data-table-form/src/checkbox.vue +101 -101
  29. package/packages/data-table-form/src/colgroup.vue +17 -17
  30. package/packages/data-table-form/src/main.vue +181 -181
  31. package/packages/data-table-form/src/radio.vue +65 -65
  32. package/packages/data-table-form/src/table.vue +233 -233
  33. package/packages/data-table-form/src/tbody.vue +336 -336
  34. package/packages/data-table-form/src/thead.vue +68 -68
  35. package/packages/date-picker/index.js +5 -5
  36. package/packages/date-picker/src/main.vue +236 -236
  37. package/packages/dialog/index.js +5 -5
  38. package/packages/enable-drag/index.js +5 -5
  39. package/packages/enterprise/index.js +5 -5
  40. package/packages/enterprise/src/main.vue +66 -66
  41. package/packages/error-page/index.js +5 -5
  42. package/packages/error-page/src/main.vue +44 -44
  43. package/packages/flow/index.js +5 -5
  44. package/packages/flow/src/component/CommonOpinions.vue +345 -345
  45. package/packages/flow/src/component/CustomPreset.vue +322 -322
  46. package/packages/flow/src/component/FileList.vue +99 -99
  47. package/packages/flow/src/component/Preset.vue +255 -255
  48. package/packages/flow/src/component/SendMsg.vue +229 -229
  49. package/packages/flow/src/component/TimeLimit.vue +190 -190
  50. package/packages/flow/src/component/taskUnionExamine.vue +611 -611
  51. package/packages/flow/src/form.vue +121 -121
  52. package/packages/flow/src/freeStartFlow.vue +2843 -2843
  53. package/packages/flow/src/main.vue +3131 -3108
  54. package/packages/flow/src/processForm.vue +1031 -1031
  55. package/packages/flow/src/processReject.vue +293 -293
  56. package/packages/flow/src/reset.vue +902 -902
  57. package/packages/flow/src/startTaskRead.vue +597 -597
  58. package/packages/flow/src/supervise.vue +138 -138
  59. package/packages/flow/src/table.vue +58 -58
  60. package/packages/flow-group/index.js +5 -5
  61. package/packages/flow-group/src/main.vue +688 -688
  62. package/packages/flow-list/index.js +5 -5
  63. package/packages/flow-list/src/main.vue +1434 -1411
  64. package/packages/form/index.js +5 -5
  65. package/packages/form/src/main.vue +3583 -3583
  66. package/packages/form/src/table.vue +1426 -1426
  67. package/packages/handle-user/index.js +5 -5
  68. package/packages/handle-user/src/main.vue +138 -138
  69. package/packages/handler/index.js +5 -5
  70. package/packages/handler/src/main.vue +493 -493
  71. package/packages/icon/index.js +5 -5
  72. package/packages/icon/src/main.vue +101 -101
  73. package/packages/icons/index.js +5 -5
  74. package/packages/icons/src/main.vue +81 -81
  75. package/packages/input/index.js +5 -5
  76. package/packages/input/src/main.vue +356 -356
  77. package/packages/input-number/index.js +5 -5
  78. package/packages/input-number/src/main.vue +106 -106
  79. package/packages/label/index.js +5 -5
  80. package/packages/label/src/main.vue +457 -457
  81. package/packages/layout/index.js +5 -5
  82. package/packages/layout/src/item.vue +152 -152
  83. package/packages/layout/src/main.vue +31 -31
  84. package/packages/login/index.js +5 -5
  85. package/packages/login/src/main.vue +1935 -1935
  86. package/packages/login/src/resetPassword.vue +562 -562
  87. package/packages/main/index.js +5 -5
  88. package/packages/main/src/default/message.vue +249 -249
  89. package/packages/main/src/default/notice.vue +157 -157
  90. package/packages/main/src/default/userinfo.vue +503 -503
  91. package/packages/main/src/public/online.vue +89 -89
  92. package/packages/main/src/public/search.vue +461 -461
  93. package/packages/main/src/public/settings.vue +221 -221
  94. package/packages/main/src/simplicity/apps.vue +388 -388
  95. package/packages/main/src/simplicity/avatar.vue +82 -82
  96. package/packages/main/src/simplicity/handler.vue +259 -259
  97. package/packages/main/src/simplicity/index.vue +2064 -2064
  98. package/packages/main/src/simplicity/lists.vue +84 -84
  99. package/packages/main/src/simplicity/menu-list.vue +128 -128
  100. package/packages/main/src/simplicity/message.vue +259 -259
  101. package/packages/main/src/simplicity/notice.vue +190 -190
  102. package/packages/main/src/simplicity/router-page.vue +45 -45
  103. package/packages/main/src/simplicity/sub-menu.vue +241 -241
  104. package/packages/main/src/simplicity/user.vue +257 -257
  105. package/packages/main/src/simplicity/userinfo.vue +312 -312
  106. package/packages/menu/index.js +5 -5
  107. package/packages/menu/src/main.vue +536 -536
  108. package/packages/nav/index.js +5 -5
  109. package/packages/nav/src/main.vue +351 -351
  110. package/packages/notify/index.js +5 -5
  111. package/packages/notify/src/main.vue +538 -538
  112. package/packages/page/index.js +5 -5
  113. package/packages/page/src/main.vue +167 -167
  114. package/packages/pagination/index.js +5 -5
  115. package/packages/pagination/src/main.vue +96 -96
  116. package/packages/player/index.js +5 -5
  117. package/packages/player/src/main.vue +194 -194
  118. package/packages/qr-code/index.js +5 -5
  119. package/packages/qr-code/src/main.vue +170 -170
  120. package/packages/radio-group/index.js +6 -6
  121. package/packages/radio-group/src/main.vue +319 -319
  122. package/packages/retrial-auth/index.js +5 -5
  123. package/packages/retrial-auth/src/main.vue +280 -280
  124. package/packages/select/index.js +5 -5
  125. package/packages/select/src/main.vue +775 -775
  126. package/packages/select-ganged/index.js +5 -5
  127. package/packages/select-ganged/src/main.vue +724 -724
  128. package/packages/selector/index.js +5 -5
  129. package/packages/selector/src/main.vue +687 -687
  130. package/packages/selector-panel/index.js +5 -5
  131. package/packages/selector-panel/src/main.vue +1027 -1027
  132. package/packages/selector-panel/src/selection.vue +177 -177
  133. package/packages/selector-panel/src/tree.vue +129 -129
  134. package/packages/sizer/index.js +5 -5
  135. package/packages/sizer/src/main.vue +254 -254
  136. package/packages/steps/index.js +5 -5
  137. package/packages/steps/src/main.vue +181 -181
  138. package/packages/switch/index.js +5 -5
  139. package/packages/switch/src/main.vue +154 -154
  140. package/packages/table-form/index.js +5 -5
  141. package/packages/tabs/index.js +5 -5
  142. package/packages/tabs/src/main.vue +788 -788
  143. package/packages/tabs-panel/index.js +5 -5
  144. package/packages/tabs-panel/src/main.vue +29 -29
  145. package/packages/theme-chalk/src/base.scss +260 -260
  146. package/packages/theme-chalk/src/button-group.scss +175 -175
  147. package/packages/theme-chalk/src/button.scss +24 -24
  148. package/packages/theme-chalk/src/calendar.scss +113 -113
  149. package/packages/theme-chalk/src/card.scss +99 -99
  150. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  151. package/packages/theme-chalk/src/clients.scss +87 -87
  152. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  153. package/packages/theme-chalk/src/data-table.scss +293 -293
  154. package/packages/theme-chalk/src/date-picker.scss +7 -7
  155. package/packages/theme-chalk/src/dialog.scss +77 -77
  156. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  157. package/packages/theme-chalk/src/enterprise.scss +5 -5
  158. package/packages/theme-chalk/src/error-page.scss +18 -18
  159. package/packages/theme-chalk/src/flow-group.scss +110 -110
  160. package/packages/theme-chalk/src/flow-list.scss +36 -36
  161. package/packages/theme-chalk/src/flow.scss +335 -335
  162. package/packages/theme-chalk/src/form.scss +496 -496
  163. package/packages/theme-chalk/src/handle-user.scss +40 -40
  164. package/packages/theme-chalk/src/handler.scss +143 -143
  165. package/packages/theme-chalk/src/icon.scss +1789 -1789
  166. package/packages/theme-chalk/src/icons.scss +99 -99
  167. package/packages/theme-chalk/src/input.scss +9 -9
  168. package/packages/theme-chalk/src/label.scss +24 -24
  169. package/packages/theme-chalk/src/layout.scss +46 -46
  170. package/packages/theme-chalk/src/login.scss +969 -969
  171. package/packages/theme-chalk/src/main.scss +663 -663
  172. package/packages/theme-chalk/src/menu.scss +222 -222
  173. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  174. package/packages/theme-chalk/src/nav.scss +111 -111
  175. package/packages/theme-chalk/src/page.scss +3 -3
  176. package/packages/theme-chalk/src/pagination.scss +29 -29
  177. package/packages/theme-chalk/src/player.scss +9 -9
  178. package/packages/theme-chalk/src/qr-code.scss +17 -17
  179. package/packages/theme-chalk/src/radio-group.scss +9 -9
  180. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  181. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  182. package/packages/theme-chalk/src/select.scss +8 -8
  183. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  184. package/packages/theme-chalk/src/selector.scss +91 -91
  185. package/packages/theme-chalk/src/simplicity.scss +1265 -1265
  186. package/packages/theme-chalk/src/sizer.scss +36 -36
  187. package/packages/theme-chalk/src/steps.scss +88 -88
  188. package/packages/theme-chalk/src/switch.scss +3 -3
  189. package/packages/theme-chalk/src/table-form.scss +1 -1
  190. package/packages/theme-chalk/src/tabs.scss +87 -87
  191. package/packages/theme-chalk/src/tips.scss +7 -7
  192. package/packages/theme-chalk/src/toolbar.scss +179 -179
  193. package/packages/theme-chalk/src/tree-group.scss +72 -72
  194. package/packages/theme-chalk/src/tree.scss +165 -165
  195. package/packages/theme-chalk/src/upload.scss +167 -167
  196. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  197. package/packages/tips/index.js +5 -5
  198. package/packages/tips/src/main.vue +141 -141
  199. package/packages/toolbar/index.js +5 -5
  200. package/packages/toolbar/src/main.vue +430 -430
  201. package/packages/tree/index.js +5 -5
  202. package/packages/tree-group/index.js +5 -5
  203. package/packages/upload/index.js +5 -5
  204. package/packages/upload/src/main.vue +1339 -1335
  205. package/packages/upload/src/picture.js +15 -15
  206. package/packages/wujie/index.js +5 -5
  207. package/packages/wujie/src/main.vue +145 -145
  208. package/packages/wxlogin/index.js +5 -5
  209. package/packages/wxlogin/src/main.vue +128 -128
  210. package/src/config/api.js +281 -281
  211. package/src/config/image.js +2 -2
  212. package/src/index.js +1 -1
  213. package/src/utils/bus.js +3 -3
  214. package/src/utils/date-util.js +312 -312
  215. package/src/utils/http.js +50 -50
  216. package/src/utils/rules.js +18 -18
  217. package/src/utils/store.js +21 -21
  218. package/src/utils/webSocket.js +107 -107
@@ -1,345 +1,345 @@
1
- <template>
2
- <div class="commonOpinion">
3
- <el-form
4
- :model="form"
5
- :rules="rules"
6
- ref="ruleForm"
7
- label-width="0"
8
- >
9
- <el-form-item label="" prop="value">
10
- <el-input
11
- v-model="form.value"
12
- :disabled="isBanInputOpinion == '1' || disabled"
13
- type="textarea"
14
- clear="inp"
15
- placeholder="请输入意见"
16
- @change="changeOpinion"
17
- :rows="rows"
18
- ></el-input>
19
- </el-form-item>
20
- </el-form>
21
- <el-input
22
- v-model="input3"
23
- placeholder="请输入内容"
24
- class="input-with-select"
25
- >
26
- <el-select
27
- v-model="selectValue"
28
- slot="prepend"
29
- :disabled="isBanInputOpinion == '1'"
30
- placeholder="--请选择常用语--"
31
- @change="selectChange"
32
- >
33
- <el-option
34
- v-for="item in optionList"
35
- :key="item.id"
36
- :label="item.content"
37
- :value="item.content"
38
- ></el-option>
39
- </el-select>
40
- <el-button
41
- :disabled="disabled"
42
- slot="append"
43
- icon="el-icon-edit"
44
- @click="dialogVisible = true"
45
- ></el-button>
46
- </el-input>
47
-
48
- <!-- 弹窗内容 -->
49
- <es-dialog
50
- append-to-body
51
- title="常用意见设置"
52
- :close-on-click-modal="false"
53
- :visible.sync="dialogVisible"
54
- >
55
- <div class="commonOpinion-set">
56
- <div style="text-align: right">
57
- <el-button
58
- type="primary"
59
- size="small"
60
- @click="
61
- () => {
62
- addVisible = true;
63
- (FormData.sep = optionList.length + 1),
64
- (FormData.content = ''),
65
- (FormData.id = null);
66
- }
67
- "
68
- >
69
- 新增
70
- </el-button>
71
- </div>
72
- <Table
73
- style="flex: 1; display: flex; flex-direction: column"
74
- v-if="dialogVisible"
75
- :data-list="optionList"
76
- @upDateClick="upDate"
77
- @delClick="del"
78
- />
79
- </div>
80
- </es-dialog>
81
-
82
- <es-dialog
83
- append-to-body
84
- :close-on-click-modal="false"
85
- title="添加常用意见"
86
- :visible.sync="addVisible"
87
- v-if="addVisible"
88
- height="auto"
89
- >
90
- <ideas :data="FormData" @subMit="submit" />
91
- </es-dialog>
92
- </div>
93
- </template>
94
-
95
- <script>
96
- import {
97
- saveCommonOpinion,
98
- updateCommonOpinion,
99
- commonOpion,
100
- findSysParam,
101
- deleteCommonOpion
102
- } from 'eoss-ui/src/config/api';
103
- import Table from '../table.vue';
104
- import ideas from '../form.vue';
105
- import util from 'eoss-ui/src/utils/util';
106
- export default {
107
- name: 'CommonOpinions',
108
- components: {
109
- [ideas.name]: ideas,
110
- [Table.name]: Table
111
- },
112
- data() {
113
- return {
114
- value: '',
115
- form: {
116
- value: ''
117
- },
118
- rules: {
119
- value: [{ required: true, message: '请输入意见', trigger: 'blur' }]
120
- },
121
- input3: '',
122
- selectValue: '',
123
- optionList: [],
124
- dialogVisible: false,
125
- addVisible: false,
126
- disabled: false,
127
- FormData: {
128
- id: null
129
- }
130
- };
131
- },
132
- props: {
133
- isBanInputOpinion: {
134
- type: Number,
135
- default: 0
136
- },
137
- opinion: {
138
- type: String,
139
- default: ''
140
- },
141
- nodeFixedOpinionSelectList: {
142
- type: Array,
143
- default: () => []
144
- },
145
- rows: {
146
- type: [Number,String],
147
- default: 10
148
- }
149
- },
150
- mounted() {
151
- if (this.nodeFixedOpinionSelectList.length > 0) {
152
- this.optionList = this.nodeFixedOpinionSelectList;
153
- this.disabled = true;
154
- } else {
155
- this.getCommonOpion();
156
- }
157
- },
158
- watch: {
159
- opinion(val) {
160
- this.form.value = val;
161
- this.changeOpinion();
162
- }
163
- },
164
- methods: {
165
- validate(){
166
- let validSate = true
167
- this.$refs.ruleForm.validate((valid) => {
168
- if (valid) {
169
- validSate = true
170
- } else {
171
- validSate = false;
172
- }
173
- });
174
- return validSate
175
- },
176
- /**
177
- * changeOpinion
178
- * @desc:监听意见变化
179
- * @author liufan
180
- * @date 2022年10月28日
181
- **/
182
- changeOpinion() {
183
- this.$emit('change', this.form.value);
184
- },
185
- /**
186
- * getCommonOpion
187
- * @desc:获取意见
188
- * @author liufan
189
- * @date 2022年5月25日
190
- **/
191
- getCommonOpion() {
192
- util
193
- .ajax({
194
- url: commonOpion,
195
- params: {
196
- userId: util.getStorage('userId')
197
- },
198
- method: 'post'
199
- })
200
- .then((res) => {
201
- const { status, data, msg } = res;
202
- if (status === 'success') {
203
- this.optionList = data.list;
204
- this.FormData.sep = this.optionList.length + 1;
205
- } else {
206
- this.$message.error(msg || '系统错误,请联系管理员!');
207
- }
208
- })
209
- .catch((err) => {
210
- if (err.message && err.message !== 'canceled') {
211
- this.$message.error(err.message);
212
- }
213
- });
214
- },
215
- /**
216
- * upDate
217
- * @desc:修改常用语
218
- * @author liufan
219
- * @param {Object} val 修改值
220
- * @date 2022年5月25日
221
- **/
222
- upDate(val) {
223
- this.FormData.id = val.id;
224
- this.addVisible = true;
225
- },
226
- /**
227
- * selectChange
228
- * @desc:常用语选择
229
- * @author liufan
230
- * @param {String} val 选中值
231
- * @date 2022年5月25日
232
- **/
233
- selectChange(val) {
234
- const that = this;
235
- util
236
- .ajax({
237
- url: findSysParam,
238
- params: { cpName: 'commonOpinionsSelectType' }
239
- })
240
- .then((res) => {
241
- if (res.status == 'success') {
242
- res.data == 2
243
- ? (that.form.value = that.form.value + val)
244
- : (that.form.value = val);
245
- } else {
246
- that.form.value = val;
247
- }
248
- this.$emit('change', that.form.value);
249
- });
250
- },
251
- /**
252
- * del
253
- * @desc:删除常用语
254
- * @author liufan
255
- * @param {Object} val 删除的数据
256
- * @date 2022年5月25日
257
- **/
258
- del(val) {
259
- this.$confirm('您确定要删除此信息吗?', '提示', {
260
- confirmButtonText: '确定',
261
- cancelButtonText: '取消',
262
- type: 'warning'
263
- })
264
- .then(() => {
265
- this.loading = util.loading(this.$loading, '删除中...');
266
- util
267
- .ajax({
268
- url: deleteCommonOpion,
269
- params: {
270
- id: val.id
271
- }
272
- })
273
- .then((res) => {
274
- const { status, message } = res;
275
- if (status == 'success') {
276
- this.$message({
277
- type: 'success',
278
- message: '删除成功!'
279
- });
280
- this.getCommonOpion();
281
- } else {
282
- this.$message({
283
- type: 'error',
284
- message: message || '系统错误,请联系管理员!'
285
- });
286
- }
287
- this.loading.close();
288
- })
289
- .catch((err) => {
290
- if (err.message && err.message !== 'canceled') {
291
- this.$message.error(err.message);
292
- }
293
- this.loading.close();
294
- });
295
- })
296
- .catch((e) => {});
297
- },
298
- /**
299
- * submit
300
- * @desc:新增/编辑意见保存
301
- * @author liufan
302
- * @param {Object} val 保存数据
303
- * @date 2022年5月25日
304
- **/
305
- submit(val) {
306
- const { addVisible, data } = val;
307
- let info = {};
308
- for (let key in data) {
309
- info[`bean.${key}`] = data[key];
310
- }
311
- this.loading = util.loading(this.$loading, '提交中...');
312
- util
313
- .ajax({
314
- url: data.id ? updateCommonOpinion : saveCommonOpinion,
315
- data: info,
316
- header: { 'Content-Type': 'multipart/form-data' },
317
- method: 'post'
318
- })
319
- .then((res) => {
320
- const { rCode, msg } = res;
321
- this.loading.close();
322
- if (!rCode) {
323
- if (this.FormData.id) {
324
- this.$message.success('修改成功');
325
- } else {
326
- this.$message.success('新增成功');
327
- }
328
- this.getCommonOpion();
329
- } else {
330
- this.$message.error(msg || '系统错误,请联系管理员!');
331
- }
332
- this.addVisible = addVisible;
333
- })
334
- .catch((err) => {
335
- this.loading.close();
336
- if (err.message && err.message !== 'canceled') {
337
- this.$message.error(err.message);
338
- }
339
- });
340
- }
341
- }
342
- };
343
- </script>
344
-
345
- <style></style>
1
+ <template>
2
+ <div class="commonOpinion">
3
+ <el-form
4
+ :model="form"
5
+ :rules="rules"
6
+ ref="ruleForm"
7
+ label-width="0"
8
+ >
9
+ <el-form-item label="" prop="value">
10
+ <el-input
11
+ v-model="form.value"
12
+ :disabled="isBanInputOpinion == '1' || disabled"
13
+ type="textarea"
14
+ clear="inp"
15
+ placeholder="请输入意见"
16
+ @change="changeOpinion"
17
+ :rows="rows"
18
+ ></el-input>
19
+ </el-form-item>
20
+ </el-form>
21
+ <el-input
22
+ v-model="input3"
23
+ placeholder="请输入内容"
24
+ class="input-with-select"
25
+ >
26
+ <el-select
27
+ v-model="selectValue"
28
+ slot="prepend"
29
+ :disabled="isBanInputOpinion == '1'"
30
+ placeholder="--请选择常用语--"
31
+ @change="selectChange"
32
+ >
33
+ <el-option
34
+ v-for="item in optionList"
35
+ :key="item.id"
36
+ :label="item.content"
37
+ :value="item.content"
38
+ ></el-option>
39
+ </el-select>
40
+ <el-button
41
+ :disabled="disabled"
42
+ slot="append"
43
+ icon="el-icon-edit"
44
+ @click="dialogVisible = true"
45
+ ></el-button>
46
+ </el-input>
47
+
48
+ <!-- 弹窗内容 -->
49
+ <es-dialog
50
+ append-to-body
51
+ title="常用意见设置"
52
+ :close-on-click-modal="false"
53
+ :visible.sync="dialogVisible"
54
+ >
55
+ <div class="commonOpinion-set">
56
+ <div style="text-align: right">
57
+ <el-button
58
+ type="primary"
59
+ size="small"
60
+ @click="
61
+ () => {
62
+ addVisible = true;
63
+ (FormData.sep = optionList.length + 1),
64
+ (FormData.content = ''),
65
+ (FormData.id = null);
66
+ }
67
+ "
68
+ >
69
+ 新增
70
+ </el-button>
71
+ </div>
72
+ <Table
73
+ style="flex: 1; display: flex; flex-direction: column"
74
+ v-if="dialogVisible"
75
+ :data-list="optionList"
76
+ @upDateClick="upDate"
77
+ @delClick="del"
78
+ />
79
+ </div>
80
+ </es-dialog>
81
+
82
+ <es-dialog
83
+ append-to-body
84
+ :close-on-click-modal="false"
85
+ title="添加常用意见"
86
+ :visible.sync="addVisible"
87
+ v-if="addVisible"
88
+ height="auto"
89
+ >
90
+ <ideas :data="FormData" @subMit="submit" />
91
+ </es-dialog>
92
+ </div>
93
+ </template>
94
+
95
+ <script>
96
+ import {
97
+ saveCommonOpinion,
98
+ updateCommonOpinion,
99
+ commonOpion,
100
+ findSysParam,
101
+ deleteCommonOpion
102
+ } from 'eoss-ui/src/config/api';
103
+ import Table from '../table.vue';
104
+ import ideas from '../form.vue';
105
+ import util from 'eoss-ui/src/utils/util';
106
+ export default {
107
+ name: 'CommonOpinions',
108
+ components: {
109
+ [ideas.name]: ideas,
110
+ [Table.name]: Table
111
+ },
112
+ data() {
113
+ return {
114
+ value: '',
115
+ form: {
116
+ value: ''
117
+ },
118
+ rules: {
119
+ value: [{ required: true, message: '请输入意见', trigger: 'blur' }]
120
+ },
121
+ input3: '',
122
+ selectValue: '',
123
+ optionList: [],
124
+ dialogVisible: false,
125
+ addVisible: false,
126
+ disabled: false,
127
+ FormData: {
128
+ id: null
129
+ }
130
+ };
131
+ },
132
+ props: {
133
+ isBanInputOpinion: {
134
+ type: Number,
135
+ default: 0
136
+ },
137
+ opinion: {
138
+ type: String,
139
+ default: ''
140
+ },
141
+ nodeFixedOpinionSelectList: {
142
+ type: Array,
143
+ default: () => []
144
+ },
145
+ rows: {
146
+ type: [Number,String],
147
+ default: 10
148
+ }
149
+ },
150
+ mounted() {
151
+ if (this.nodeFixedOpinionSelectList.length > 0) {
152
+ this.optionList = this.nodeFixedOpinionSelectList;
153
+ this.disabled = true;
154
+ } else {
155
+ this.getCommonOpion();
156
+ }
157
+ },
158
+ watch: {
159
+ opinion(val) {
160
+ this.form.value = val;
161
+ this.changeOpinion();
162
+ }
163
+ },
164
+ methods: {
165
+ validate(){
166
+ let validSate = true
167
+ this.$refs.ruleForm.validate((valid) => {
168
+ if (valid) {
169
+ validSate = true
170
+ } else {
171
+ validSate = false;
172
+ }
173
+ });
174
+ return validSate
175
+ },
176
+ /**
177
+ * changeOpinion
178
+ * @desc:监听意见变化
179
+ * @author liufan
180
+ * @date 2022年10月28日
181
+ **/
182
+ changeOpinion() {
183
+ this.$emit('change', this.form.value);
184
+ },
185
+ /**
186
+ * getCommonOpion
187
+ * @desc:获取意见
188
+ * @author liufan
189
+ * @date 2022年5月25日
190
+ **/
191
+ getCommonOpion() {
192
+ util
193
+ .ajax({
194
+ url: commonOpion,
195
+ params: {
196
+ userId: util.getStorage('userId')
197
+ },
198
+ method: 'post'
199
+ })
200
+ .then((res) => {
201
+ const { status, data, msg } = res;
202
+ if (status === 'success') {
203
+ this.optionList = data.list;
204
+ this.FormData.sep = this.optionList.length + 1;
205
+ } else {
206
+ this.$message.error(msg || '系统错误,请联系管理员!');
207
+ }
208
+ })
209
+ .catch((err) => {
210
+ if (err.message && err.message !== 'canceled') {
211
+ this.$message.error(err.message);
212
+ }
213
+ });
214
+ },
215
+ /**
216
+ * upDate
217
+ * @desc:修改常用语
218
+ * @author liufan
219
+ * @param {Object} val 修改值
220
+ * @date 2022年5月25日
221
+ **/
222
+ upDate(val) {
223
+ this.FormData.id = val.id;
224
+ this.addVisible = true;
225
+ },
226
+ /**
227
+ * selectChange
228
+ * @desc:常用语选择
229
+ * @author liufan
230
+ * @param {String} val 选中值
231
+ * @date 2022年5月25日
232
+ **/
233
+ selectChange(val) {
234
+ const that = this;
235
+ util
236
+ .ajax({
237
+ url: findSysParam,
238
+ params: { cpName: 'commonOpinionsSelectType' }
239
+ })
240
+ .then((res) => {
241
+ if (res.status == 'success') {
242
+ res.data == 2
243
+ ? (that.form.value = that.form.value + val)
244
+ : (that.form.value = val);
245
+ } else {
246
+ that.form.value = val;
247
+ }
248
+ this.$emit('change', that.form.value);
249
+ });
250
+ },
251
+ /**
252
+ * del
253
+ * @desc:删除常用语
254
+ * @author liufan
255
+ * @param {Object} val 删除的数据
256
+ * @date 2022年5月25日
257
+ **/
258
+ del(val) {
259
+ this.$confirm('您确定要删除此信息吗?', '提示', {
260
+ confirmButtonText: '确定',
261
+ cancelButtonText: '取消',
262
+ type: 'warning'
263
+ })
264
+ .then(() => {
265
+ this.loading = util.loading(this.$loading, '删除中...');
266
+ util
267
+ .ajax({
268
+ url: deleteCommonOpion,
269
+ params: {
270
+ id: val.id
271
+ }
272
+ })
273
+ .then((res) => {
274
+ const { status, message } = res;
275
+ if (status == 'success') {
276
+ this.$message({
277
+ type: 'success',
278
+ message: '删除成功!'
279
+ });
280
+ this.getCommonOpion();
281
+ } else {
282
+ this.$message({
283
+ type: 'error',
284
+ message: message || '系统错误,请联系管理员!'
285
+ });
286
+ }
287
+ this.loading.close();
288
+ })
289
+ .catch((err) => {
290
+ if (err.message && err.message !== 'canceled') {
291
+ this.$message.error(err.message);
292
+ }
293
+ this.loading.close();
294
+ });
295
+ })
296
+ .catch((e) => {});
297
+ },
298
+ /**
299
+ * submit
300
+ * @desc:新增/编辑意见保存
301
+ * @author liufan
302
+ * @param {Object} val 保存数据
303
+ * @date 2022年5月25日
304
+ **/
305
+ submit(val) {
306
+ const { addVisible, data } = val;
307
+ let info = {};
308
+ for (let key in data) {
309
+ info[`bean.${key}`] = data[key];
310
+ }
311
+ this.loading = util.loading(this.$loading, '提交中...');
312
+ util
313
+ .ajax({
314
+ url: data.id ? updateCommonOpinion : saveCommonOpinion,
315
+ data: info,
316
+ header: { 'Content-Type': 'multipart/form-data' },
317
+ method: 'post'
318
+ })
319
+ .then((res) => {
320
+ const { rCode, msg } = res;
321
+ this.loading.close();
322
+ if (!rCode) {
323
+ if (this.FormData.id) {
324
+ this.$message.success('修改成功');
325
+ } else {
326
+ this.$message.success('新增成功');
327
+ }
328
+ this.getCommonOpion();
329
+ } else {
330
+ this.$message.error(msg || '系统错误,请联系管理员!');
331
+ }
332
+ this.addVisible = addVisible;
333
+ })
334
+ .catch((err) => {
335
+ this.loading.close();
336
+ if (err.message && err.message !== 'canceled') {
337
+ this.$message.error(err.message);
338
+ }
339
+ });
340
+ }
341
+ }
342
+ };
343
+ </script>
344
+
345
+ <style></style>