eoss-ui 0.6.54 → 0.6.55

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 (258) hide show
  1. package/lib/checkbox-group.js +3 -3
  2. package/lib/data-table.js +6 -6
  3. package/lib/eoss-ui.common.js +801 -695
  4. package/lib/flow-list.js +81 -81
  5. package/lib/flow.js +280 -280
  6. package/lib/form.js +4 -4
  7. package/lib/index.js +1 -1
  8. package/lib/input.js +1 -1
  9. package/lib/login.js +3 -3
  10. package/lib/main.js +280 -215
  11. package/lib/menu.js +46 -10
  12. package/lib/qr-code.js +13 -13
  13. package/lib/radio-group.js +3 -3
  14. package/lib/select-ganged.js +1 -1
  15. package/lib/select.js +3 -1
  16. package/lib/selector-panel.js +3 -3
  17. package/lib/steps.js +3 -3
  18. package/lib/theme-chalk/index.css +1 -1
  19. package/lib/theme-chalk/main.css +1 -1
  20. package/lib/theme-chalk/simplicity.css +1 -1
  21. package/lib/tips.js +3 -3
  22. package/lib/tree.js +3 -3
  23. package/lib/upload.js +20 -17
  24. package/package.json +159 -159
  25. package/packages/.DS_Store +0 -0
  26. package/packages/button/index.js +5 -5
  27. package/packages/button/src/main.vue +418 -418
  28. package/packages/button-group/index.js +5 -5
  29. package/packages/button-group/src/main.vue +298 -298
  30. package/packages/calendar/index.js +5 -5
  31. package/packages/card/index.js +5 -5
  32. package/packages/card/src/main.vue +156 -156
  33. package/packages/cascader/index.js +5 -5
  34. package/packages/cascader/src/main.vue +168 -168
  35. package/packages/checkbox-group/index.js +5 -5
  36. package/packages/checkbox-group/src/main.vue +333 -333
  37. package/packages/clients/index.js +5 -5
  38. package/packages/clients/src/main.vue +144 -144
  39. package/packages/data-table/.DS_Store +0 -0
  40. package/packages/data-table/index.js +5 -5
  41. package/packages/data-table/src/children.vue +39 -39
  42. package/packages/data-table/src/column.vue +989 -989
  43. package/packages/data-table/src/main.vue +1822 -1822
  44. package/packages/data-table/src/sizer.vue +195 -195
  45. package/packages/data-table-form/.DS_Store +0 -0
  46. package/packages/data-table-form/index.js +5 -5
  47. package/packages/data-table-form/src/checkbox.vue +101 -101
  48. package/packages/data-table-form/src/colgroup.vue +17 -17
  49. package/packages/data-table-form/src/main.vue +181 -181
  50. package/packages/data-table-form/src/radio.vue +65 -65
  51. package/packages/data-table-form/src/table.vue +233 -233
  52. package/packages/data-table-form/src/tbody.vue +336 -336
  53. package/packages/data-table-form/src/thead.vue +68 -68
  54. package/packages/date-picker/index.js +5 -5
  55. package/packages/date-picker/src/main.vue +236 -236
  56. package/packages/dialog/index.js +5 -5
  57. package/packages/enable-drag/index.js +5 -5
  58. package/packages/enterprise/index.js +5 -5
  59. package/packages/enterprise/src/main.vue +66 -66
  60. package/packages/error-page/.DS_Store +0 -0
  61. package/packages/error-page/index.js +5 -5
  62. package/packages/error-page/src/main.vue +44 -44
  63. package/packages/flow/.DS_Store +0 -0
  64. package/packages/flow/index.js +5 -5
  65. package/packages/flow/src/component/CommonOpinions.vue +345 -345
  66. package/packages/flow/src/component/CustomPreset.vue +322 -322
  67. package/packages/flow/src/component/FileList.vue +99 -99
  68. package/packages/flow/src/component/Preset.vue +255 -255
  69. package/packages/flow/src/component/SendMsg.vue +229 -229
  70. package/packages/flow/src/component/TimeLimit.vue +190 -190
  71. package/packages/flow/src/component/taskUnionExamine.vue +611 -611
  72. package/packages/flow/src/form.vue +121 -121
  73. package/packages/flow/src/freeStartFlow.vue +2843 -2843
  74. package/packages/flow/src/main.vue +3131 -3131
  75. package/packages/flow/src/processForm.vue +1031 -1031
  76. package/packages/flow/src/processReject.vue +293 -293
  77. package/packages/flow/src/reset.vue +900 -900
  78. package/packages/flow/src/startTaskRead.vue +641 -641
  79. package/packages/flow/src/supervise.vue +138 -138
  80. package/packages/flow/src/table.vue +58 -58
  81. package/packages/flow-group/.DS_Store +0 -0
  82. package/packages/flow-group/index.js +5 -5
  83. package/packages/flow-group/src/main.vue +688 -688
  84. package/packages/flow-list/index.js +5 -5
  85. package/packages/flow-list/src/main.vue +1437 -1437
  86. package/packages/form/.DS_Store +0 -0
  87. package/packages/form/index.js +5 -5
  88. package/packages/form/src/main.vue +3583 -3583
  89. package/packages/form/src/table.vue +1426 -1426
  90. package/packages/handle-user/index.js +5 -5
  91. package/packages/handle-user/src/main.vue +138 -138
  92. package/packages/handler/.DS_Store +0 -0
  93. package/packages/handler/index.js +5 -5
  94. package/packages/handler/src/main.vue +493 -493
  95. package/packages/icon/index.js +5 -5
  96. package/packages/icon/src/main.vue +101 -101
  97. package/packages/icons/index.js +5 -5
  98. package/packages/icons/src/main.vue +81 -81
  99. package/packages/input/index.js +5 -5
  100. package/packages/input/src/main.vue +356 -356
  101. package/packages/input-number/index.js +5 -5
  102. package/packages/input-number/src/main.vue +106 -106
  103. package/packages/label/index.js +5 -5
  104. package/packages/label/src/main.vue +457 -457
  105. package/packages/layout/index.js +5 -5
  106. package/packages/layout/src/item.vue +152 -152
  107. package/packages/layout/src/main.vue +31 -31
  108. package/packages/login/.DS_Store +0 -0
  109. package/packages/login/index.js +5 -5
  110. package/packages/login/src/main.vue +1935 -1935
  111. package/packages/login/src/resetPassword.vue +562 -562
  112. package/packages/main/.DS_Store +0 -0
  113. package/packages/main/index.js +5 -5
  114. package/packages/main/src/.DS_Store +0 -0
  115. package/packages/main/src/default/message.vue +249 -249
  116. package/packages/main/src/default/notice.vue +157 -157
  117. package/packages/main/src/default/userinfo.vue +503 -503
  118. package/packages/main/src/public/online.vue +89 -89
  119. package/packages/main/src/public/search.vue +462 -466
  120. package/packages/main/src/public/settings.vue +221 -221
  121. package/packages/main/src/simplicity/apps.vue +388 -388
  122. package/packages/main/src/simplicity/avatar.vue +82 -82
  123. package/packages/main/src/simplicity/handler.vue +259 -259
  124. package/packages/main/src/simplicity/index.vue +2076 -2064
  125. package/packages/main/src/simplicity/lists.vue +84 -84
  126. package/packages/main/src/simplicity/menu-list.vue +135 -128
  127. package/packages/main/src/simplicity/message.vue +259 -259
  128. package/packages/main/src/simplicity/notice.vue +190 -190
  129. package/packages/main/src/simplicity/router-page.vue +45 -45
  130. package/packages/main/src/simplicity/sub-menu.vue +263 -241
  131. package/packages/main/src/simplicity/user.vue +257 -257
  132. package/packages/main/src/simplicity/userinfo.vue +312 -312
  133. package/packages/menu/index.js +5 -5
  134. package/packages/menu/src/main.vue +580 -536
  135. package/packages/nav/index.js +5 -5
  136. package/packages/nav/src/main.vue +351 -351
  137. package/packages/notify/index.js +5 -5
  138. package/packages/notify/src/main.vue +538 -538
  139. package/packages/page/index.js +5 -5
  140. package/packages/page/src/main.vue +167 -167
  141. package/packages/pagination/index.js +5 -5
  142. package/packages/pagination/src/main.vue +96 -96
  143. package/packages/player/index.js +5 -5
  144. package/packages/player/src/main.vue +194 -194
  145. package/packages/qr-code/index.js +5 -5
  146. package/packages/qr-code/src/main.vue +170 -170
  147. package/packages/radio-group/index.js +6 -6
  148. package/packages/radio-group/src/main.vue +319 -319
  149. package/packages/retrial-auth/.DS_Store +0 -0
  150. package/packages/retrial-auth/index.js +5 -5
  151. package/packages/retrial-auth/src/main.vue +280 -280
  152. package/packages/select/.DS_Store +0 -0
  153. package/packages/select/index.js +5 -5
  154. package/packages/select/src/main.vue +778 -776
  155. package/packages/select-ganged/index.js +5 -5
  156. package/packages/select-ganged/src/main.vue +724 -724
  157. package/packages/selector/.DS_Store +0 -0
  158. package/packages/selector/index.js +5 -5
  159. package/packages/selector/src/main.vue +687 -687
  160. package/packages/selector-panel/.DS_Store +0 -0
  161. package/packages/selector-panel/index.js +5 -5
  162. package/packages/selector-panel/src/main.vue +1027 -1027
  163. package/packages/selector-panel/src/selection.vue +177 -177
  164. package/packages/selector-panel/src/tree.vue +129 -129
  165. package/packages/sizer/.DS_Store +0 -0
  166. package/packages/sizer/index.js +5 -5
  167. package/packages/sizer/src/main.vue +254 -254
  168. package/packages/steps/index.js +5 -5
  169. package/packages/steps/src/main.vue +181 -181
  170. package/packages/switch/index.js +5 -5
  171. package/packages/switch/src/main.vue +154 -154
  172. package/packages/table-form/index.js +5 -5
  173. package/packages/tabs/.DS_Store +0 -0
  174. package/packages/tabs/index.js +5 -5
  175. package/packages/tabs/src/main.vue +788 -788
  176. package/packages/tabs-panel/index.js +5 -5
  177. package/packages/tabs-panel/src/main.vue +29 -29
  178. package/packages/theme-chalk/lib/index.css +1 -1
  179. package/packages/theme-chalk/lib/main.css +1 -1
  180. package/packages/theme-chalk/lib/simplicity.css +1 -1
  181. package/packages/theme-chalk/src/.DS_Store +0 -0
  182. package/packages/theme-chalk/src/base.scss +260 -260
  183. package/packages/theme-chalk/src/button-group.scss +175 -175
  184. package/packages/theme-chalk/src/button.scss +24 -24
  185. package/packages/theme-chalk/src/calendar.scss +113 -113
  186. package/packages/theme-chalk/src/card.scss +99 -99
  187. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  188. package/packages/theme-chalk/src/clients.scss +87 -87
  189. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  190. package/packages/theme-chalk/src/data-table.scss +293 -293
  191. package/packages/theme-chalk/src/date-picker.scss +7 -7
  192. package/packages/theme-chalk/src/dialog.scss +77 -77
  193. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  194. package/packages/theme-chalk/src/enterprise.scss +5 -5
  195. package/packages/theme-chalk/src/error-page.scss +18 -18
  196. package/packages/theme-chalk/src/flow-group.scss +110 -110
  197. package/packages/theme-chalk/src/flow-list.scss +36 -36
  198. package/packages/theme-chalk/src/flow.scss +336 -336
  199. package/packages/theme-chalk/src/form.scss +496 -496
  200. package/packages/theme-chalk/src/handle-user.scss +40 -40
  201. package/packages/theme-chalk/src/handler.scss +143 -143
  202. package/packages/theme-chalk/src/icon.scss +1789 -1789
  203. package/packages/theme-chalk/src/icons.scss +99 -99
  204. package/packages/theme-chalk/src/input.scss +9 -9
  205. package/packages/theme-chalk/src/label.scss +24 -24
  206. package/packages/theme-chalk/src/layout.scss +46 -46
  207. package/packages/theme-chalk/src/login.scss +969 -969
  208. package/packages/theme-chalk/src/main.scss +663 -663
  209. package/packages/theme-chalk/src/menu.scss +222 -222
  210. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  211. package/packages/theme-chalk/src/nav.scss +111 -111
  212. package/packages/theme-chalk/src/page.scss +3 -3
  213. package/packages/theme-chalk/src/pagination.scss +29 -29
  214. package/packages/theme-chalk/src/player.scss +9 -9
  215. package/packages/theme-chalk/src/qr-code.scss +17 -17
  216. package/packages/theme-chalk/src/radio-group.scss +9 -9
  217. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  218. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  219. package/packages/theme-chalk/src/select.scss +8 -8
  220. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  221. package/packages/theme-chalk/src/selector.scss +91 -91
  222. package/packages/theme-chalk/src/simplicity.scss +1343 -1265
  223. package/packages/theme-chalk/src/sizer.scss +36 -36
  224. package/packages/theme-chalk/src/steps.scss +88 -88
  225. package/packages/theme-chalk/src/switch.scss +3 -3
  226. package/packages/theme-chalk/src/table-form.scss +1 -1
  227. package/packages/theme-chalk/src/tabs.scss +87 -87
  228. package/packages/theme-chalk/src/tips.scss +7 -7
  229. package/packages/theme-chalk/src/toolbar.scss +179 -179
  230. package/packages/theme-chalk/src/tree-group.scss +72 -72
  231. package/packages/theme-chalk/src/tree.scss +165 -165
  232. package/packages/theme-chalk/src/upload.scss +168 -168
  233. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  234. package/packages/tips/index.js +5 -5
  235. package/packages/tips/src/main.vue +141 -141
  236. package/packages/toolbar/index.js +5 -5
  237. package/packages/toolbar/src/main.vue +430 -430
  238. package/packages/tree/index.js +5 -5
  239. package/packages/tree/src/main.vue +2 -2
  240. package/packages/tree-group/index.js +5 -5
  241. package/packages/upload/.DS_Store +0 -0
  242. package/packages/upload/index.js +5 -5
  243. package/packages/upload/src/main.vue +1347 -1343
  244. package/packages/upload/src/picture.js +15 -15
  245. package/packages/wujie/index.js +5 -5
  246. package/packages/wujie/src/main.vue +145 -145
  247. package/packages/wxlogin/index.js +5 -5
  248. package/packages/wxlogin/src/main.vue +128 -128
  249. package/src/.DS_Store +0 -0
  250. package/src/config/api.js +281 -281
  251. package/src/config/image.js +2 -2
  252. package/src/index.js +160 -160
  253. package/src/utils/bus.js +3 -3
  254. package/src/utils/date-util.js +312 -312
  255. package/src/utils/http.js +50 -50
  256. package/src/utils/rules.js +18 -18
  257. package/src/utils/store.js +21 -21
  258. 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>