vue2-client 1.13.26 → 1.13.28

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 (23) hide show
  1. package/package.json +107 -107
  2. package/src/base-client/components/common/XDescriptions/XDescriptions.vue +174 -174
  3. package/src/base-client/components/common/XDescriptions/XDescriptionsGroup.vue +314 -314
  4. package/src/base-client/components/common/XFormTable/XFormTable.vue +874 -874
  5. package/src/base-client/components/common/XFormTable/demo.vue +1 -1
  6. package/src/base-client/components/common/XReportGrid/XReport.vue +1 -1
  7. package/src/base-client/components/common/XReportGrid/XReportDemo.vue +44 -44
  8. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  9. package/src/base-client/components/common/XTable/XTable.vue +19 -1
  10. package/src/base-client/components/common/XTable/XTableWrapper.vue +144 -7
  11. package/src/base-client/components/his/XSelect/XSelect.vue +72 -72
  12. package/src/base-client/components/his/XTimeSelect/XTimeSelect.vue +131 -131
  13. package/src/base-client/components/his/XTitle/XTitle.vue +62 -62
  14. package/src/base-client/components/layout/XPageView/XPageView.vue +155 -155
  15. package/src/base-client/plugins/AppData.js +126 -126
  16. package/src/config/CreateQueryConfig.js +325 -325
  17. package/src/pages/AMisDemo/AMisDemo2.vue +74 -91
  18. package/src/pages/ReportGrid/index.vue +76 -76
  19. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +875 -876
  20. package/src/pages/XTreeOneProExample/index.vue +67 -67
  21. package/src/router/async/router.map.js +119 -127
  22. package/src/base-client/components/common/XCollapse/XCollapseDemo.vue +0 -15
  23. package/vue2-client.iml +0 -9
@@ -26,7 +26,7 @@ export default {
26
26
  data () {
27
27
  return {
28
28
  // 查询配置文件名
29
- queryParamsName: 'ChargeQueryCRUD',
29
+ queryParamsName: 'crud_dictionary_manage',
30
30
  // 查询配置左侧tree
31
31
  // xTreeConfigName: 'addressType',
32
32
  // 新增表单固定值
@@ -255,7 +255,7 @@ export default {
255
255
  let func = this.config.mountedFunction
256
256
  if (func && func.startsWith('function')) {
257
257
  func = func.replace('function', 'async function')
258
- executeStrFunctionByContext(this, func, [])
258
+ executeStrFunctionByContext(this, func, [this])
259
259
  }
260
260
  }
261
261
  },
@@ -1,44 +1,44 @@
1
- <template>
2
- <div id="test">
3
- <a-card :bordered="false">
4
- <XReport
5
- ref="main"
6
- :use-oss-for-img="false"
7
- config-name="openPrescriptionCover"
8
- server-name="af-his"
9
- :show-img-in-cell="true"
10
- :display-only="true"
11
- :edit-mode="false"
12
- :dont-format="true"/>
13
- </a-card>
14
- </div>
15
- </template>
16
-
17
- <script>
18
- import XReport from './XReport'
19
- import XAddReport from '../XAddReport/XAddReport.vue'
20
- // eslint-disable-next-line no-unused-vars
21
-
22
- export default {
23
- name: 'XReportDemo',
24
- components: {
25
- XReport, XAddReport
26
- },
27
- mounted () {
28
- // this.$refs.xAddReport.init({
29
- // configName: 'skinTestExecuActionCover',
30
- // selectedId: '11111',
31
- // mixinData: {}
32
- // })
33
- },
34
- data () {
35
- return {
36
- }
37
- },
38
- methods: {
39
- }
40
- }
41
- </script>
42
- <style scoped>
43
-
44
- </style>
1
+ <template>
2
+ <div id="test">
3
+ <a-card :bordered="false">
4
+ <XReport
5
+ ref="main"
6
+ :use-oss-for-img="false"
7
+ config-name="openPrescriptionCover"
8
+ server-name="af-his"
9
+ :show-img-in-cell="true"
10
+ :display-only="true"
11
+ :edit-mode="false"
12
+ :dont-format="true"/>
13
+ </a-card>
14
+ </div>
15
+ </template>
16
+
17
+ <script>
18
+ import XReport from './XReport'
19
+ import XAddReport from '../XAddReport/XAddReport.vue'
20
+ // eslint-disable-next-line no-unused-vars
21
+
22
+ export default {
23
+ name: 'XReportDemo',
24
+ components: {
25
+ XReport, XAddReport
26
+ },
27
+ mounted () {
28
+ // this.$refs.xAddReport.init({
29
+ // configName: 'skinTestExecuActionCover',
30
+ // selectedId: '11111',
31
+ // mixinData: {}
32
+ // })
33
+ },
34
+ data () {
35
+ return {
36
+ }
37
+ },
38
+ methods: {
39
+ }
40
+ }
41
+ </script>
42
+ <style scoped>
43
+
44
+ </style>
@@ -1,166 +1,166 @@
1
- <template>
2
- <div>
3
- <a-row type="flex" justfy="space-around">
4
- <template v-for="(item, index) in config">
5
- <!-- 展示项 -->
6
- <a-col :key="'col' + index" :span="Math.floor(24 / config.length)">
7
- <div class="item">
8
- <!-- 标题 -->
9
- <p class="label">{{ item.label }}</p>
10
- <!-- 内容 - 进度条 -->
11
- <template v-if="item.type === 'percent'">
12
- <p class="value" :style="'color: ' + determineColor(data[item.key])">{{ data[item.key] }}%</p>
13
- </template>
14
- <!-- 内容 - 非进度条 -->
15
- <template v-else>
16
- <p class="value" :style="item.style ? item.style : ''">{{ data[item.key] }}</p>
17
- </template>
18
- </div>
19
- </a-col>
20
- <!-- 分割线 -->
21
- <a-col :key="'col' + index + 'after'" :span="1" v-if="index !== config.length - 1" class="divider-col">
22
- <a-divider type="vertical" class="divider"/>
23
- </a-col>
24
- </template>
25
- </a-row>
26
- </div>
27
- </template>
28
-
29
- <script>
30
-
31
- import { getConfigByName } from '@vue2-client/services/api/common'
32
-
33
- export default {
34
- name: 'XSimpleDescriptions',
35
- props: {
36
- // 配置
37
- dataConfig: {
38
- type: Array,
39
- default: undefined
40
- },
41
- // 数据
42
- dataContent: {
43
- type: Object,
44
- default: undefined
45
- },
46
- // 配置名
47
- dataConfigName: {
48
- type: String,
49
- default: undefined
50
- },
51
- // 服务名
52
- serviceName: {
53
- type: String,
54
- default: process.env.VUE_APP_SYSTEM_NAME
55
- }
56
- },
57
- data () {
58
- return {
59
- // 配置
60
- config: [],
61
- // 数据
62
- data: {},
63
- }
64
- },
65
- mounted () {
66
- // 初始化配置
67
- if (this.dataConfig) {
68
- this.config = this.dataConfig
69
- } else if (this.dataConfigName) {
70
- getConfigByName(this.dataConfigName, this.serviceName, (res) => {
71
- this.config = res.config
72
- })
73
- } else {
74
- this.config = [
75
- {
76
- label: '未能正确获取配置',
77
- key: 'totalUser'
78
- },
79
- {
80
- label: '未能正确获取配置',
81
- key: 'totalResidentArea'
82
- },
83
- {
84
- label: '未能正确获取配置',
85
- key: 'doneNum'
86
- },
87
- {
88
- label: '未能正确获取配置',
89
- key: 'todoNum'
90
- },
91
- {
92
- label: '未能正确获取配置',
93
- key: 'ratio',
94
- type: 'percent'
95
- }
96
- ]
97
- }
98
-
99
- // 初始化数据
100
- if (this.dataContent) {
101
- this.data = this.dataContent
102
- } else {
103
- this.data = {
104
- totalUser: 0,
105
- totalResidentArea: 0,
106
- doneNum: 0,
107
- todoNum: 0,
108
- ratio: 20
109
- }
110
- }
111
- },
112
- methods: {
113
- // 根据完成率决定颜色
114
- determineColor (ratio) {
115
- let result
116
- if (ratio >= 90) {
117
- result = 'rgb( 1,245, 38 )'
118
- } else if (ratio >= 75) {
119
- result = 'rgb( 139,245, 0)'
120
- } else if (ratio >= 40) {
121
- result = 'rgb(245,163, 0)'
122
- } else if (ratio >= 20) {
123
- result = 'rgb(244, 96, 0)'
124
- } else {
125
- result = 'rgb(255, 0, 0)'
126
- }
127
- return result
128
- }
129
- },
130
- watch: {
131
- dataContent: {
132
- handler (newValue) {
133
- this.data = newValue
134
- },
135
- deep: true
136
- }
137
- }
138
- }
139
- </script>
140
-
141
- <style lang="less" scoped>
142
- .item {
143
- padding: 5%;
144
-
145
- .label {
146
- color: rgba(117, 117, 117, 0.8);
147
- text-align: center;
148
- }
149
-
150
- .value {
151
- color: rgb( 51,157,255 );
152
- font-size: 1.6em;
153
- text-align: center;
154
- }
155
- }
156
-
157
- .divider-col {
158
- display: flex;
159
- justify-content: center;
160
-
161
- .divider {
162
- margin-top: 35%;
163
- height: 40px;
164
- }
165
- }
166
- </style>
1
+ <template>
2
+ <div>
3
+ <a-row type="flex" justfy="space-around">
4
+ <template v-for="(item, index) in config">
5
+ <!-- 展示项 -->
6
+ <a-col :key="'col' + index" :span="Math.floor(24 / config.length)">
7
+ <div class="item">
8
+ <!-- 标题 -->
9
+ <p class="label">{{ item.label }}</p>
10
+ <!-- 内容 - 进度条 -->
11
+ <template v-if="item.type === 'percent'">
12
+ <p class="value" :style="'color: ' + determineColor(data[item.key])">{{ data[item.key] }}%</p>
13
+ </template>
14
+ <!-- 内容 - 非进度条 -->
15
+ <template v-else>
16
+ <p class="value" :style="item.style ? item.style : ''">{{ data[item.key] }}</p>
17
+ </template>
18
+ </div>
19
+ </a-col>
20
+ <!-- 分割线 -->
21
+ <a-col :key="'col' + index + 'after'" :span="1" v-if="index !== config.length - 1" class="divider-col">
22
+ <a-divider type="vertical" class="divider"/>
23
+ </a-col>
24
+ </template>
25
+ </a-row>
26
+ </div>
27
+ </template>
28
+
29
+ <script>
30
+
31
+ import { getConfigByName } from '@vue2-client/services/api/common'
32
+
33
+ export default {
34
+ name: 'XSimpleDescriptions',
35
+ props: {
36
+ // 配置
37
+ dataConfig: {
38
+ type: Array,
39
+ default: undefined
40
+ },
41
+ // 数据
42
+ dataContent: {
43
+ type: Object,
44
+ default: undefined
45
+ },
46
+ // 配置名
47
+ dataConfigName: {
48
+ type: String,
49
+ default: undefined
50
+ },
51
+ // 服务名
52
+ serviceName: {
53
+ type: String,
54
+ default: process.env.VUE_APP_SYSTEM_NAME
55
+ }
56
+ },
57
+ data () {
58
+ return {
59
+ // 配置
60
+ config: [],
61
+ // 数据
62
+ data: {},
63
+ }
64
+ },
65
+ mounted () {
66
+ // 初始化配置
67
+ if (this.dataConfig) {
68
+ this.config = this.dataConfig
69
+ } else if (this.dataConfigName) {
70
+ getConfigByName(this.dataConfigName, this.serviceName, (res) => {
71
+ this.config = res.config
72
+ })
73
+ } else {
74
+ this.config = [
75
+ {
76
+ label: '未能正确获取配置',
77
+ key: 'totalUser'
78
+ },
79
+ {
80
+ label: '未能正确获取配置',
81
+ key: 'totalResidentArea'
82
+ },
83
+ {
84
+ label: '未能正确获取配置',
85
+ key: 'doneNum'
86
+ },
87
+ {
88
+ label: '未能正确获取配置',
89
+ key: 'todoNum'
90
+ },
91
+ {
92
+ label: '未能正确获取配置',
93
+ key: 'ratio',
94
+ type: 'percent'
95
+ }
96
+ ]
97
+ }
98
+
99
+ // 初始化数据
100
+ if (this.dataContent) {
101
+ this.data = this.dataContent
102
+ } else {
103
+ this.data = {
104
+ totalUser: 0,
105
+ totalResidentArea: 0,
106
+ doneNum: 0,
107
+ todoNum: 0,
108
+ ratio: 20
109
+ }
110
+ }
111
+ },
112
+ methods: {
113
+ // 根据完成率决定颜色
114
+ determineColor (ratio) {
115
+ let result
116
+ if (ratio >= 90) {
117
+ result = 'rgb( 1,245, 38 )'
118
+ } else if (ratio >= 75) {
119
+ result = 'rgb( 139,245, 0)'
120
+ } else if (ratio >= 40) {
121
+ result = 'rgb(245,163, 0)'
122
+ } else if (ratio >= 20) {
123
+ result = 'rgb(244, 96, 0)'
124
+ } else {
125
+ result = 'rgb(255, 0, 0)'
126
+ }
127
+ return result
128
+ }
129
+ },
130
+ watch: {
131
+ dataContent: {
132
+ handler (newValue) {
133
+ this.data = newValue
134
+ },
135
+ deep: true
136
+ }
137
+ }
138
+ }
139
+ </script>
140
+
141
+ <style lang="less" scoped>
142
+ .item {
143
+ padding: 5%;
144
+
145
+ .label {
146
+ color: rgba(117, 117, 117, 0.8);
147
+ text-align: center;
148
+ }
149
+
150
+ .value {
151
+ color: rgb( 51,157,255 );
152
+ font-size: 1.6em;
153
+ text-align: center;
154
+ }
155
+ }
156
+
157
+ .divider-col {
158
+ display: flex;
159
+ justify-content: center;
160
+
161
+ .divider {
162
+ margin-top: 35%;
163
+ height: 40px;
164
+ }
165
+ }
166
+ </style>
@@ -149,7 +149,21 @@
149
149
  </a-row>
150
150
  <!-- 如果当前是表格模式 -->
151
151
  <template v-if="isTableMode">
152
- <x-table-wrapper ref="table" @rowClick="handleRowClick">
152
+ <x-table-wrapper ref="table">
153
+ <template slot="expandedRowRender">
154
+ <!-- 列扩展栅格 -->
155
+ <x-report
156
+ v-if="expandedGrid"
157
+ :env="env"
158
+ :isWidget="true"
159
+ :use-oss-for-img="false"
160
+ :config-name="expandedGrid"
161
+ :show-img-in-cell="true"
162
+ :display-only="true"
163
+ :edit-mode="false"
164
+ :show-save-button="false"
165
+ :dont-format="true"/>
166
+ </template>
153
167
  <template slot="footer">
154
168
  <slot
155
169
  name="footer"
@@ -309,6 +323,8 @@ export default {
309
323
  allowSelectRowNum: 0,
310
324
  // 头部附件的栅格配置名
311
325
  attachGrid: '',
326
+ // 表格行扩展区域的栅格配置名
327
+ expandedGrid: '',
312
328
  // 是否展示右侧工具栏
313
329
  showRightTools: true,
314
330
  // 是否展示左边按钮栏
@@ -634,6 +650,7 @@ export default {
634
650
  queryParams,
635
651
  tableColumns,
636
652
  attachGrid,
653
+ expandedGrid,
637
654
  buttonState,
638
655
  eventState = {},
639
656
  buttonPermissions,
@@ -695,6 +712,7 @@ export default {
695
712
  return
696
713
  }
697
714
  this.attachGrid = attachGrid
715
+ this.expandedGrid = expandedGrid
698
716
  this.viewMode = viewMode
699
717
  this.localEditMode = localEditMode
700
718
  this.formSubmitTypeInLocalEditMode = formSubmitTypeInLocalEditMode
@@ -1,6 +1,8 @@
1
1
  <template>
2
+ <!-- 当expandedGrid存在时渲染带有expandedRowRender的表格 -->
2
3
  <s-table
3
- ref="table"
4
+ v-if="tableContext.expandedGrid"
5
+ ref="expandableTable"
4
6
  :id="tableContext.uniqueId"
5
7
  :alert="true"
6
8
  :columns="tableContext.tableColumns"
@@ -54,7 +56,138 @@
54
56
  :record="text"
55
57
  :index="index"
56
58
  :item="item"
57
- :localDataSource="$refs.table.localDataSource"
59
+ :localDataSource="activeTable?.localDataSource"
60
+ v-else-if="item.slotCustomFunction"
61
+ :key="'customJs-' + c_index"></CustomFuncCel>
62
+ <span v-else-if="item.slotType === 'link'" :key="'link-' + c_index">
63
+ <a @click="tableContext.columnClick(item.dataIndex,text,record)">{{ text }}</a>
64
+ </span>
65
+ <span v-else-if="item.slotType === 'gotoUserDetail'" :key="'gotoUserDetail-' + c_index">
66
+ <a @click="tableContext.gotoUserDetail(item.dataIndex,text,record)">{{ text }}</a>
67
+ </span>
68
+ <span v-else-if="item.slotType === 'ellipsis'" :key="'ellipsis-' + c_index">
69
+ <ellipsis :length="item.slotValue" tooltip>{{ text === '' ? '--' : text }}</ellipsis>
70
+ </span>
71
+ <span v-else-if="item.slotType === 'badge'" :key="'badge-' + c_index">
72
+ <x-badge
73
+ :service-name="tableContext.serviceName"
74
+ :env="tableContext.env"
75
+ v-if="text !== null && text !== undefined"
76
+ :badge-key="item.slotKeyMap"
77
+ :value="text"/>
78
+ </span>
79
+ <span v-else-if="item.slotType === 'date'" :key="'date-' + c_index">
80
+ {{ format(text, 'yyyy-MM-dd') }}
81
+ </span>
82
+ <span v-else-if="item.slotType === 'dateTime'" :key="'dateTime-' + c_index">
83
+ {{ format(text, 'yyyy-MM-dd hh:mm:ss') }}
84
+ </span>
85
+ <span v-else-if="item.slotType === 'towDecimal'" :key="'towDecimal-' + c_index">
86
+ {{ numberFormat(text, 2) }}
87
+ </span>
88
+ <span v-else-if="item.slotType === 'fourDecimal'" :key="'fourDecimal-' + c_index">
89
+ {{ numberFormat(text, 4) }}
90
+ </span>
91
+ <span v-else-if="item.slotType === 'int'" :key="'int-' + c_index">
92
+ {{ numberFormat(text, 0) }}
93
+ </span>
94
+ <span v-else-if="item.slotType === 'action'" :key="'action-' + c_index">
95
+ <template v-if="item.actionArr && item.actionArr.length > 0">
96
+ <a-dropdown :getPopupContainer=" triggerNode => { return triggerNode.parentNode } ">
97
+ <a class="ant-dropdown-link" @click="e => e.preventDefault()">
98
+ {{ item.scopedSlots?.customRender || item.slotValue }} <a-icon type="down"/>
99
+ </a>
100
+ <a-menu slot="overlay" style="min-width: 60px">
101
+ <a-menu-item
102
+ v-for="(action_item, actionIndex) in item.actionArr"
103
+ :key="actionIndex"
104
+ v-show="!action_item.customFunction || tableContext.customFunctionShow(action_item.customFunction,record,c_index)">
105
+ <a
106
+ style="text-align: center"
107
+ @click="tableContext.action(record, item.dataIndex, action_item.func)"
108
+ >{{ action_item.text }}</a>
109
+ </a-menu-item>
110
+ </a-menu>
111
+ </a-dropdown>
112
+ </template>
113
+ <template v-if="!item.actionArr || item.actionArr.length === 0">
114
+ <a @click="tableContext.action(record, item.dataIndex,'action', index)">{{ item.slotValue }}</a>
115
+ </template>
116
+ </span>
117
+ </template>
118
+ <template slot="expandedRowRender" slot-scope="record">
119
+ <slot
120
+ name="expandedRowRender"
121
+ :selectedRowKeys="tableContext.selectedRowKeys"
122
+ :selectedRows="tableContext.selectedRows"
123
+ :record="record"
124
+ ></slot>
125
+ </template>
126
+ <template slot="footer">
127
+ <slot
128
+ name="footer"
129
+ :selectedRowKeys="tableContext.selectedRowKeys"
130
+ :selectedRows="tableContext.selectedRows"></slot>
131
+ </template>
132
+ </s-table>
133
+
134
+ <!-- 当expandedGrid不存在时渲染不带expandedRowRender的表格 -->
135
+ <s-table
136
+ v-else
137
+ ref="simpleTable"
138
+ :id="tableContext.uniqueId"
139
+ :alert="true"
140
+ :columns="tableContext.tableColumns"
141
+ :data="loadData()"
142
+ :rowKey="tableContext.rowKey"
143
+ :showSummary="tableContext.showSummary"
144
+ :rowSelection="tableContext.rowSelection"
145
+ :scroll="{ x: tableContext.scrollXWidth, y: tableContext.scrollYHeight }"
146
+ :showPagination="tableContext.showPagination"
147
+ :hidePagination="tableContext.simpleMode"
148
+ :showSelected="!tableContext.simpleMode"
149
+ :pageSize="tableContext.simpleMode ? 1000 : undefined"
150
+ :setScrollYHeight="tableContext.setScrollYHeight"
151
+ :selectRowMode="tableContext.selectRowMode"
152
+ :size="tableContext.tableSize"
153
+ >
154
+ <template
155
+ v-for="(item, c_index) in tableContext.tableColumns"
156
+ :slot="item.dataIndex"
157
+ slot-scope="text, record, index">
158
+ <template v-if="tableContext.isEditMode && getFromItem(item.dataIndex,text, record, index)">
159
+ <x-form-item
160
+ class="innerTable"
161
+ :style="{ paddingTop: 0, paddingBottom: 0, paddingLeft: 0, paddingRight: 0 }"
162
+ :form="record"
163
+ :attr="getFromItem(item.dataIndex,text, record, index)"
164
+ :service-name="tableContext.serviceName"
165
+ mode="新增/修改"
166
+ :env="tableContext.env"
167
+ :setForm="(obj)=>tableContext.setForm(record,obj)"
168
+ @rowChoose="(row, attr, callback) => tableContext.rowChoose(row, attr, callback, record)"
169
+ :showLabel="false"
170
+ :key="'editRow-' + c_index"
171
+ />
172
+ </template>
173
+ <span v-else-if="item.slotType === 'rate'" :key="'rate-' + c_index">
174
+ <x-rate
175
+ :value="text"
176
+ :disabled="true"
177
+ :allow-half="item.allowHalf"
178
+ :icon="item.rateIcon"
179
+ :max-count="item.maxCount"
180
+ style="zoom:0.9"/>
181
+ </span>
182
+ <span v-else-if="item.slotType === 'index'" :key="'index-' + c_index">
183
+ {{ index + 1 }}
184
+ </span>
185
+ <CustomFuncCel
186
+ :text="text"
187
+ :record="text"
188
+ :index="index"
189
+ :item="item"
190
+ :localDataSource="activeTable?.localDataSource"
58
191
  v-else-if="item.slotCustomFunction"
59
192
  :key="'customJs-' + c_index"></CustomFuncCel>
60
193
  <span v-else-if="item.slotType === 'link'" :key="'link-' + c_index">
@@ -143,7 +276,11 @@ export default {
143
276
  },
144
277
  computed: {
145
278
  localDataSource () {
146
- return this.$refs?.table?.localDataSource
279
+ return this.activeTable?.localDataSource
280
+ },
281
+ // 获取当前活动的表格实例
282
+ activeTable () {
283
+ return this.tableContext.expandedGrid ? this.$refs.expandableTable : this.$refs.simpleTable
147
284
  }
148
285
  },
149
286
  props: {
@@ -159,7 +296,7 @@ export default {
159
296
  this.$emit('rowClick', record)
160
297
  },
161
298
  setLocalDataSource (data) {
162
- this.$refs.table.setLocalDataSource(data)
299
+ this.activeTable?.setLocalDataSource(data)
163
300
  },
164
301
  loadData () {
165
302
  if (this.loadSelectedData) {
@@ -190,13 +327,13 @@ export default {
190
327
  })
191
328
  },
192
329
  updateSelect (selectedRowKeys, selectedRows) {
193
- this.$refs.table.updateSelect(selectedRowKeys, selectedRows)
330
+ this.activeTable?.updateSelect(selectedRowKeys, selectedRows)
194
331
  },
195
332
  clearSelected () {
196
- this.$refs.table.clearSelected()
333
+ this.activeTable?.clearSelected()
197
334
  },
198
335
  refresh (bool) {
199
- this.$refs.table.refresh(bool)
336
+ this.activeTable?.refresh(bool)
200
337
  },
201
338
 
202
339
  /**