eoss-ui 0.6.99 → 0.7.11

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