eoss-ui 0.6.67 → 0.6.68

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