eoss-ui 0.7.23 → 0.7.24

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