vue2-client 1.6.21 → 1.6.22

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 (104) hide show
  1. package/CHANGELOG.md +569 -569
  2. package/index.js +30 -30
  3. package/package.json +1 -1
  4. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +226 -226
  5. package/src/base-client/components/common/AmapMarker/index.js +3 -3
  6. package/src/base-client/components/common/CitySelect/CitySelect.vue +247 -247
  7. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +733 -733
  8. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +508 -508
  9. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +140 -140
  10. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +165 -165
  11. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -275
  12. package/src/base-client/components/common/XAddForm/XAddForm.vue +326 -326
  13. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  14. package/src/base-client/components/common/XForm/XForm.vue +180 -180
  15. package/src/base-client/components/common/XFormTable/XFormTable.vue +336 -336
  16. package/src/base-client/components/common/XFormTable/index.md +97 -97
  17. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +109 -109
  18. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  19. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  20. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  21. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  22. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  23. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  24. package/src/base-client/plugins/AppData.js +76 -76
  25. package/src/base-client/plugins/GetLoginInfoService.js +179 -179
  26. package/src/base-client/plugins/PagedList.js +177 -177
  27. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  28. package/src/base-client/plugins/i18n-extend.js +32 -32
  29. package/src/components/Ellipsis/Ellipsis.vue +65 -65
  30. package/src/components/Ellipsis/index.md +38 -38
  31. package/src/components/NumberInfo/index.md +43 -43
  32. package/src/components/STable/README.md +341 -341
  33. package/src/components/STable/index.js +318 -318
  34. package/src/components/Trend/index.md +45 -45
  35. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  36. package/src/components/checkbox/ImgCheckbox.vue +163 -163
  37. package/src/components/exception/ExceptionPage.vue +70 -70
  38. package/src/components/form/FormRow.vue +52 -52
  39. package/src/components/index.js +36 -36
  40. package/src/components/menu/SideMenu.vue +62 -62
  41. package/src/components/menu/menu.js +273 -273
  42. package/src/components/page/header/index.less +40 -40
  43. package/src/components/setting/Setting.vue +235 -235
  44. package/src/components/table/StandardTable.vue +141 -141
  45. package/src/components/table/advance/ActionColumns.vue +158 -158
  46. package/src/components/table/advance/SearchArea.vue +355 -355
  47. package/src/components/tool/AStepItem.vue +60 -60
  48. package/src/components/tool/AvatarList.vue +68 -68
  49. package/src/components/tool/Drawer.vue +142 -142
  50. package/src/components/tool/TagSelect.vue +83 -83
  51. package/src/components/transition/PageToggleTransition.vue +97 -97
  52. package/src/config/default/admin.config.js +18 -18
  53. package/src/config/default/setting.config.js +46 -46
  54. package/src/config/replacer/resolve.config.js +67 -67
  55. package/src/layouts/CommonLayout.vue +42 -42
  56. package/src/layouts/ComponentLayoutOne.vue +47 -47
  57. package/src/layouts/PageLayout.vue +151 -151
  58. package/src/layouts/SinglePageView.vue +111 -111
  59. package/src/layouts/footer/PageFooter.vue +49 -49
  60. package/src/layouts/header/AdminHeader.vue +134 -134
  61. package/src/layouts/header/HeaderAvatar.vue +64 -64
  62. package/src/layouts/header/HeaderNotice.vue +176 -176
  63. package/src/layouts/header/HeaderSearch.vue +67 -67
  64. package/src/layouts/header/InstitutionDetail.vue +181 -181
  65. package/src/layouts/header/index.less +92 -92
  66. package/src/layouts/tabs/TabsHead.vue +190 -190
  67. package/src/layouts/tabs/TabsView.vue +379 -379
  68. package/src/mock/goods/index.js +108 -108
  69. package/src/pages/exception/404.vue +25 -25
  70. package/src/pages/login/Login.vue +363 -363
  71. package/src/pages/report/ReportTable.js +124 -124
  72. package/src/pages/report/ReportTableHome.vue +28 -28
  73. package/src/pages/resourceManage/orgListManage.vue +98 -98
  74. package/src/pages/system/file/index.vue +317 -317
  75. package/src/pages/system/settings/index.vue +126 -126
  76. package/src/pages/system/settings/modifyPassword.vue +109 -109
  77. package/src/router/async/config.async.js +28 -28
  78. package/src/router/async/router.map.js +68 -68
  79. package/src/router/index.js +27 -27
  80. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  81. package/src/services/api/LogDetailsViewApi.js +10 -10
  82. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  83. package/src/services/api/TicketDetailsViewApi.js +34 -34
  84. package/src/services/api/cas.js +79 -79
  85. package/src/services/api/commonTempTable.js +10 -10
  86. package/src/services/api/index.js +17 -17
  87. package/src/services/api/logininfor/index.js +6 -6
  88. package/src/services/api/manage.js +8 -8
  89. package/src/services/apiService.js +14 -14
  90. package/src/services/user.js +64 -64
  91. package/src/store/modules/index.js +4 -4
  92. package/src/theme/default/nprogress.less +76 -76
  93. package/src/theme/default/style.less +47 -47
  94. package/src/utils/colors.js +107 -107
  95. package/src/utils/excel/Blob.js +180 -180
  96. package/src/utils/excel/Export2Excel.js +141 -141
  97. package/src/utils/formatter.js +68 -68
  98. package/src/utils/i18n.js +80 -80
  99. package/src/utils/map-utils.js +37 -37
  100. package/src/utils/request.js +311 -311
  101. package/src/utils/theme-color-replacer-extend.js +91 -91
  102. package/src/utils/themeUtil.js +100 -100
  103. package/src/utils/util.js +230 -230
  104. package/vue.config.js +106 -106
@@ -1,336 +1,336 @@
1
- <template>
2
- <div>
3
- <a-skeleton :loading="loading" :paragraph="{ rows: 4 }" />
4
- <div v-show="!loading">
5
- <x-add-form
6
- ref="xAddForm"
7
- :get-data-params="getDataParams"
8
- @onSubmit="onAddOrEditSubmit"
9
- />
10
- <x-form
11
- ref="xForm"
12
- :get-data-params="getDataParams"
13
- style="margin-bottom: 14px;"
14
- @onSubmit="onSearchSubmit">
15
- <slot name="formBtnExpand"></slot>
16
- </x-form>
17
- <x-table
18
- ref="xTable"
19
- :fixedQueryForm="fixedQueryForm"
20
- :queryParamsName="queryParamsName"
21
- :query-params-json="queryParamsJson"
22
- :show-pagination="showPagination"
23
- @add="add"
24
- @edit="edit"
25
- @afterDelete="afterDelete"
26
- @action="action"
27
- @selectRow="selectRow"
28
- @afterQuery="afterQuery"
29
- @tempTableEdit="tempTableEdit">
30
- <template slot="button" slot-scope="{selectedRowKeys, selectedRows}">
31
- <slot name="button" :selectedRowKeys="selectedRowKeys" :selectedRows="selectedRows"></slot>
32
- </template>
33
- <template slot="rightBtnExpand" slot-scope="{selectedRowKeys, selectedRows}">
34
- <slot name="rightBtnExpand" :selectedRowKeys="selectedRowKeys" :selectedRows="selectedRows"></slot>
35
- <a-button @click="toggleIsFormShow">
36
- <a-icon :style="iconStyle" type="vertical-align-top"/>
37
- </a-button>
38
- </template>
39
- <!-- 底部插槽 -->
40
- <template slot="footer" slot-scope="{selectedRowKeys, selectedRows}">
41
- <slot name="footer" :selectedRowKeys="selectedRowKeys" :selectedRows="selectedRows"></slot>
42
- </template>
43
- </x-table>
44
- </div>
45
- </div>
46
- </template>
47
- <script>
48
- import XForm from '@vue2-client/base-client/components/common/XForm'
49
- import XAddForm from '@vue2-client/base-client/components/common/XAddForm'
50
- import XTable from '@vue2-client/base-client/components/common/XTable'
51
- import XImportExcel from '@vue2-client/base-client/components/common/XImportExcel'
52
- import { addOrModify, commonApi } from '@vue2-client/services/api/common'
53
- import { indexedDB } from '@vue2-client/utils/indexedDB'
54
- import { mapState } from 'vuex'
55
- import { post } from '@vue2-client/services/api/restTools'
56
-
57
- export default {
58
- name: 'XFormTable',
59
- components: {
60
- XTable,
61
- XForm,
62
- XAddForm,
63
- XImportExcel
64
- },
65
- data () {
66
- return {
67
- // 加载状态
68
- loading: false,
69
- // 图标样式
70
- iconStyle: {
71
- position: 'relative',
72
- top: '1px'
73
- }
74
- }
75
- },
76
- computed: {
77
- ...mapState('setting', ['isMobile'])
78
- },
79
- props: {
80
- // 业务名称
81
- title: {
82
- type: String,
83
- default: ''
84
- },
85
- // 查询配置文件名
86
- queryParamsName: {
87
- type: String,
88
- default: null
89
- },
90
- // 查询配置文件Json,用于查询配置生成器的预览
91
- queryParamsJson: {
92
- type: Object,
93
- default: null
94
- },
95
- // 业务逻辑名称, 通过logic获取表单表格配置
96
- logicName: {
97
- type: String,
98
- default: null
99
- },
100
- // 执行logic传递的参数
101
- logicParam: {
102
- type: Object,
103
- default: () => {}
104
- },
105
- // 固定新增表单
106
- fixedAddForm: {
107
- type: Object,
108
- default: () => {
109
- return {}
110
- }
111
- },
112
- // 固定查询表单
113
- fixedQueryForm: {
114
- type: Object,
115
- default: () => {
116
- return {}
117
- }
118
- },
119
- // 预览模式
120
- viewMode: {
121
- type: Boolean,
122
- default: () => {
123
- return false
124
- }
125
- },
126
- // 数据只有一页时是否展示分页,true:展示,auto:隐藏
127
- showPagination: {
128
- type: Boolean,
129
- default: true
130
- },
131
- // 调用logic获取数据源的追加参数
132
- getDataParams: {
133
- type: Object,
134
- default: undefined
135
- }
136
- },
137
- watch: {
138
- logicParam: {
139
- handler () {
140
- this.getColumnJsonByLogic()
141
- },
142
- deep: true
143
- },
144
- fixedQueryForm: {
145
- handler () {
146
- this.$nextTick(() => {
147
- this.refreshTable(true)
148
- })
149
- },
150
- deep: true
151
- },
152
- queryParamsJson: {
153
- handler () {
154
- this.getColumnsJsonBySource()
155
- },
156
- deep: true
157
- },
158
- queryParamsName: {
159
- handler () {
160
- this.getColumnsJson()
161
- }
162
- }
163
- },
164
- created () {
165
- if (this.queryParamsName) {
166
- this.getColumnsJson()
167
- } else if (this.queryParamsJson) {
168
- this.getColumnsJsonBySource()
169
- }
170
- },
171
- methods: {
172
- getColumnsJson () {
173
- this.loading = true
174
- indexedDB.getByWeb(this.queryParamsName, commonApi.getColumnsJson, { str: this.queryParamsName }, (res) => {
175
- this.updateComponents(res)
176
- })
177
- },
178
- getColumnsJsonBySource () {
179
- this.loading = true
180
- post(commonApi.getColumnsJson, { queryObject: this.queryParamsJson }).then(res => {
181
- this.updateComponents(res, true)
182
- })
183
- },
184
- getColumnJsonByLogic () {
185
- this.loading = true
186
- indexedDB.getByWeb(`${this.logicName}_${JSON.stringify(this.logicParam)}`, commonApi.getColumnsJson, { logic: this.logicName, logicParam: this.logicParam }, (res) => {
187
- this.updateComponents(res, true)
188
- })
189
- },
190
- /**
191
- * 更新子组件
192
- * @param res 参数
193
- * @param setQueryParams 是否设置queryParams参数
194
- */
195
- updateComponents (res, setQueryParams) {
196
- if (this.$refs.xTable && this.$refs.xForm && this.$refs.xAddForm) {
197
- this.$refs.xTable.init({
198
- queryParams: setQueryParams ? res : null,
199
- tableColumns: res.columnJson,
200
- buttonState: res.buttonState,
201
- title: this.title,
202
- viewMode: this.viewMode,
203
- isTableTemp: this.isTableTemp,
204
- serviceName: res.serviceName
205
- })
206
- this.$refs.xForm.init({
207
- formItems: res.formJson,
208
- serviceName: res.serviceName
209
- })
210
- this.$refs.xAddForm.init({
211
- isShow: !res.buttonState || res.buttonState.add || res.buttonState.edit,
212
- formItems: res.formJson,
213
- viewMode: this.viewMode,
214
- isTableTemp: this.isTableTemp,
215
- serviceName: res.serviceName
216
- })
217
- }
218
- this.loading = false
219
- },
220
- /**
221
- * 提交查询表单事件
222
- * @param res 参数
223
- */
224
- onSearchSubmit (res) {
225
- if (res.valid) {
226
- // 表单赋值
227
- this.$refs.xTable.setQueryForm(res.form)
228
- // commit
229
- this.$emit('afterSearchSubmit', res)
230
- } else {
231
- return false
232
- }
233
- },
234
- /**
235
- * 提交新增表单事件
236
- */
237
- onAddOrEditSubmit (res, callback) {
238
- // 组织请求
239
- const requestParameters = {
240
- queryParamsName: this.queryParamsName,
241
- queryParams: this.queryParamsJson,
242
- form: res.realForm,
243
- businessType: res.businessType,
244
- operator: res.currUserName
245
- }
246
- addOrModify(requestParameters, res.serviceName).then(data => {
247
- this.$message.success(res.businessType + '成功!')
248
- this.refreshTable(res.businessType === '新增')
249
- // commit
250
- this.$emit('afterSubmit', { type: res.businessType, id: data.id, form: requestParameters.form })
251
- }).catch(e => {
252
- this.$message.error(res.businessType + '失败:' + e)
253
- }).finally(() => {
254
- callback()
255
- })
256
- },
257
- /**
258
- * 表格查询后事件
259
- * @param res 参数
260
- * @param conditionParams 查询条件
261
- */
262
- afterQuery (res, conditionParams) {
263
- this.$emit('afterQuery', res, conditionParams)
264
- },
265
- /**
266
- * 详情按钮事件
267
- * @param record 本条数据
268
- * @param id 数据标识
269
- * @param actionType 操作类型
270
- */
271
- action (record, id, actionType) {
272
- this.$emit('action', record, id, actionType)
273
- },
274
- /**
275
- * 新增按钮事件
276
- */
277
- add () {
278
- this.$refs.xAddForm.open({
279
- businessType: '新增',
280
- title: this.title,
281
- fixedAddForm: this.fixedAddForm
282
- })
283
- },
284
- /**
285
- * 修改按钮事件
286
- * @param res 参数
287
- */
288
- edit (res) {
289
- this.$refs.xAddForm.open({
290
- businessType: '修改',
291
- modifyModelData: res,
292
- title: this.title,
293
- fixedAddForm: this.fixedAddForm
294
- })
295
- },
296
- /**
297
- * 删除后事件
298
- * @param res
299
- */
300
- afterDelete (res) {
301
- this.$emit('afterDelete', res)
302
- },
303
- /**
304
- * 查询表单部分显示/隐藏切换
305
- */
306
- toggleIsFormShow () {
307
- this.$refs.xForm.toggleVisible()
308
- },
309
- /**
310
- * 选择列事件
311
- * @param selectedRowKeys 选中列Key集合
312
- * @param selectedRows 选中列
313
- */
314
- selectRow (selectedRowKeys, selectedRows) {
315
- this.$emit('selectRow', selectedRowKeys, selectedRows)
316
- },
317
- /**
318
- * 临时表修改
319
- * @param res 参数
320
- */
321
- tempTableEdit (res) {
322
- this.$emit('tempTableEdit', res)
323
- },
324
- /**
325
- * 刷新表格
326
- * @param toFirstPage 是否到第一页
327
- */
328
- refreshTable (toFirstPage = true) {
329
- this.$refs.xTable.refresh(toFirstPage)
330
- },
331
- }
332
- }
333
- </script>
334
- <style lang="less" scoped>
335
-
336
- </style>
1
+ <template>
2
+ <div>
3
+ <a-skeleton :loading="loading" :paragraph="{ rows: 4 }" />
4
+ <div v-show="!loading">
5
+ <x-add-form
6
+ ref="xAddForm"
7
+ :get-data-params="getDataParams"
8
+ @onSubmit="onAddOrEditSubmit"
9
+ />
10
+ <x-form
11
+ ref="xForm"
12
+ :get-data-params="getDataParams"
13
+ style="margin-bottom: 14px;"
14
+ @onSubmit="onSearchSubmit">
15
+ <slot name="formBtnExpand"></slot>
16
+ </x-form>
17
+ <x-table
18
+ ref="xTable"
19
+ :fixedQueryForm="fixedQueryForm"
20
+ :queryParamsName="queryParamsName"
21
+ :query-params-json="queryParamsJson"
22
+ :show-pagination="showPagination"
23
+ @add="add"
24
+ @edit="edit"
25
+ @afterDelete="afterDelete"
26
+ @action="action"
27
+ @selectRow="selectRow"
28
+ @afterQuery="afterQuery"
29
+ @tempTableEdit="tempTableEdit">
30
+ <template slot="button" slot-scope="{selectedRowKeys, selectedRows}">
31
+ <slot name="button" :selectedRowKeys="selectedRowKeys" :selectedRows="selectedRows"></slot>
32
+ </template>
33
+ <template slot="rightBtnExpand" slot-scope="{selectedRowKeys, selectedRows}">
34
+ <slot name="rightBtnExpand" :selectedRowKeys="selectedRowKeys" :selectedRows="selectedRows"></slot>
35
+ <a-button @click="toggleIsFormShow">
36
+ <a-icon :style="iconStyle" type="vertical-align-top"/>
37
+ </a-button>
38
+ </template>
39
+ <!-- 底部插槽 -->
40
+ <template slot="footer" slot-scope="{selectedRowKeys, selectedRows}">
41
+ <slot name="footer" :selectedRowKeys="selectedRowKeys" :selectedRows="selectedRows"></slot>
42
+ </template>
43
+ </x-table>
44
+ </div>
45
+ </div>
46
+ </template>
47
+ <script>
48
+ import XForm from '@vue2-client/base-client/components/common/XForm'
49
+ import XAddForm from '@vue2-client/base-client/components/common/XAddForm'
50
+ import XTable from '@vue2-client/base-client/components/common/XTable'
51
+ import XImportExcel from '@vue2-client/base-client/components/common/XImportExcel'
52
+ import { addOrModify, commonApi } from '@vue2-client/services/api/common'
53
+ import { indexedDB } from '@vue2-client/utils/indexedDB'
54
+ import { mapState } from 'vuex'
55
+ import { post } from '@vue2-client/services/api/restTools'
56
+
57
+ export default {
58
+ name: 'XFormTable',
59
+ components: {
60
+ XTable,
61
+ XForm,
62
+ XAddForm,
63
+ XImportExcel
64
+ },
65
+ data () {
66
+ return {
67
+ // 加载状态
68
+ loading: false,
69
+ // 图标样式
70
+ iconStyle: {
71
+ position: 'relative',
72
+ top: '1px'
73
+ }
74
+ }
75
+ },
76
+ computed: {
77
+ ...mapState('setting', ['isMobile'])
78
+ },
79
+ props: {
80
+ // 业务名称
81
+ title: {
82
+ type: String,
83
+ default: ''
84
+ },
85
+ // 查询配置文件名
86
+ queryParamsName: {
87
+ type: String,
88
+ default: null
89
+ },
90
+ // 查询配置文件Json,用于查询配置生成器的预览
91
+ queryParamsJson: {
92
+ type: Object,
93
+ default: null
94
+ },
95
+ // 业务逻辑名称, 通过logic获取表单表格配置
96
+ logicName: {
97
+ type: String,
98
+ default: null
99
+ },
100
+ // 执行logic传递的参数
101
+ logicParam: {
102
+ type: Object,
103
+ default: () => {}
104
+ },
105
+ // 固定新增表单
106
+ fixedAddForm: {
107
+ type: Object,
108
+ default: () => {
109
+ return {}
110
+ }
111
+ },
112
+ // 固定查询表单
113
+ fixedQueryForm: {
114
+ type: Object,
115
+ default: () => {
116
+ return {}
117
+ }
118
+ },
119
+ // 预览模式
120
+ viewMode: {
121
+ type: Boolean,
122
+ default: () => {
123
+ return false
124
+ }
125
+ },
126
+ // 数据只有一页时是否展示分页,true:展示,auto:隐藏
127
+ showPagination: {
128
+ type: Boolean,
129
+ default: true
130
+ },
131
+ // 调用logic获取数据源的追加参数
132
+ getDataParams: {
133
+ type: Object,
134
+ default: undefined
135
+ }
136
+ },
137
+ watch: {
138
+ logicParam: {
139
+ handler () {
140
+ this.getColumnJsonByLogic()
141
+ },
142
+ deep: true
143
+ },
144
+ fixedQueryForm: {
145
+ handler () {
146
+ this.$nextTick(() => {
147
+ this.refreshTable(true)
148
+ })
149
+ },
150
+ deep: true
151
+ },
152
+ queryParamsJson: {
153
+ handler () {
154
+ this.getColumnsJsonBySource()
155
+ },
156
+ deep: true
157
+ },
158
+ queryParamsName: {
159
+ handler () {
160
+ this.getColumnsJson()
161
+ }
162
+ }
163
+ },
164
+ created () {
165
+ if (this.queryParamsName) {
166
+ this.getColumnsJson()
167
+ } else if (this.queryParamsJson) {
168
+ this.getColumnsJsonBySource()
169
+ }
170
+ },
171
+ methods: {
172
+ getColumnsJson () {
173
+ this.loading = true
174
+ indexedDB.getByWeb(this.queryParamsName, commonApi.getColumnsJson, { str: this.queryParamsName }, (res) => {
175
+ this.updateComponents(res)
176
+ })
177
+ },
178
+ getColumnsJsonBySource () {
179
+ this.loading = true
180
+ post(commonApi.getColumnsJson, { queryObject: this.queryParamsJson }).then(res => {
181
+ this.updateComponents(res, true)
182
+ })
183
+ },
184
+ getColumnJsonByLogic () {
185
+ this.loading = true
186
+ indexedDB.getByWeb(`${this.logicName}_${JSON.stringify(this.logicParam)}`, commonApi.getColumnsJson, { logic: this.logicName, logicParam: this.logicParam }, (res) => {
187
+ this.updateComponents(res, true)
188
+ })
189
+ },
190
+ /**
191
+ * 更新子组件
192
+ * @param res 参数
193
+ * @param setQueryParams 是否设置queryParams参数
194
+ */
195
+ updateComponents (res, setQueryParams) {
196
+ if (this.$refs.xTable && this.$refs.xForm && this.$refs.xAddForm) {
197
+ this.$refs.xTable.init({
198
+ queryParams: setQueryParams ? res : null,
199
+ tableColumns: res.columnJson,
200
+ buttonState: res.buttonState,
201
+ title: this.title,
202
+ viewMode: this.viewMode,
203
+ isTableTemp: this.isTableTemp,
204
+ serviceName: res.serviceName
205
+ })
206
+ this.$refs.xForm.init({
207
+ formItems: res.formJson,
208
+ serviceName: res.serviceName
209
+ })
210
+ this.$refs.xAddForm.init({
211
+ isShow: !res.buttonState || res.buttonState.add || res.buttonState.edit,
212
+ formItems: res.formJson,
213
+ viewMode: this.viewMode,
214
+ isTableTemp: this.isTableTemp,
215
+ serviceName: res.serviceName
216
+ })
217
+ }
218
+ this.loading = false
219
+ },
220
+ /**
221
+ * 提交查询表单事件
222
+ * @param res 参数
223
+ */
224
+ onSearchSubmit (res) {
225
+ if (res.valid) {
226
+ // 表单赋值
227
+ this.$refs.xTable.setQueryForm(res.form)
228
+ // commit
229
+ this.$emit('afterSearchSubmit', res)
230
+ } else {
231
+ return false
232
+ }
233
+ },
234
+ /**
235
+ * 提交新增表单事件
236
+ */
237
+ onAddOrEditSubmit (res, callback) {
238
+ // 组织请求
239
+ const requestParameters = {
240
+ queryParamsName: this.queryParamsName,
241
+ queryParams: this.queryParamsJson,
242
+ form: res.realForm,
243
+ businessType: res.businessType,
244
+ operator: res.currUserName
245
+ }
246
+ addOrModify(requestParameters, res.serviceName).then(data => {
247
+ this.$message.success(res.businessType + '成功!')
248
+ this.refreshTable(res.businessType === '新增')
249
+ // commit
250
+ this.$emit('afterSubmit', { type: res.businessType, id: data.id, form: requestParameters.form })
251
+ }).catch(e => {
252
+ this.$message.error(res.businessType + '失败:' + e)
253
+ }).finally(() => {
254
+ callback()
255
+ })
256
+ },
257
+ /**
258
+ * 表格查询后事件
259
+ * @param res 参数
260
+ * @param conditionParams 查询条件
261
+ */
262
+ afterQuery (res, conditionParams) {
263
+ this.$emit('afterQuery', res, conditionParams)
264
+ },
265
+ /**
266
+ * 详情按钮事件
267
+ * @param record 本条数据
268
+ * @param id 数据标识
269
+ * @param actionType 操作类型
270
+ */
271
+ action (record, id, actionType) {
272
+ this.$emit('action', record, id, actionType)
273
+ },
274
+ /**
275
+ * 新增按钮事件
276
+ */
277
+ add () {
278
+ this.$refs.xAddForm.open({
279
+ businessType: '新增',
280
+ title: this.title,
281
+ fixedAddForm: this.fixedAddForm
282
+ })
283
+ },
284
+ /**
285
+ * 修改按钮事件
286
+ * @param res 参数
287
+ */
288
+ edit (res) {
289
+ this.$refs.xAddForm.open({
290
+ businessType: '修改',
291
+ modifyModelData: res,
292
+ title: this.title,
293
+ fixedAddForm: this.fixedAddForm
294
+ })
295
+ },
296
+ /**
297
+ * 删除后事件
298
+ * @param res
299
+ */
300
+ afterDelete (res) {
301
+ this.$emit('afterDelete', res)
302
+ },
303
+ /**
304
+ * 查询表单部分显示/隐藏切换
305
+ */
306
+ toggleIsFormShow () {
307
+ this.$refs.xForm.toggleVisible()
308
+ },
309
+ /**
310
+ * 选择列事件
311
+ * @param selectedRowKeys 选中列Key集合
312
+ * @param selectedRows 选中列
313
+ */
314
+ selectRow (selectedRowKeys, selectedRows) {
315
+ this.$emit('selectRow', selectedRowKeys, selectedRows)
316
+ },
317
+ /**
318
+ * 临时表修改
319
+ * @param res 参数
320
+ */
321
+ tempTableEdit (res) {
322
+ this.$emit('tempTableEdit', res)
323
+ },
324
+ /**
325
+ * 刷新表格
326
+ * @param toFirstPage 是否到第一页
327
+ */
328
+ refreshTable (toFirstPage = true) {
329
+ this.$refs.xTable.refresh(toFirstPage)
330
+ },
331
+ }
332
+ }
333
+ </script>
334
+ <style lang="less" scoped>
335
+
336
+ </style>