@bsgoal/common 2.15.7 → 2.15.8
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.
- package/dist/index.mjs +2236 -2199
- package/dist/index.mjs.map +1 -1
- package/dist/index.umd.js +13 -13
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/components/bsgoal-base-dialog/demo.vue +11 -2
- package/src/components/bsgoal-base-dialog/index.vue +8 -3
- package/src/components/bsgoal-base-form/demo.vue +5 -1
- package/src/components/bsgoal-base-form/index.vue +5 -3
- package/src/components/bsgoal-base-search-table/demo.vue +2 -1
- package/src/components/bsgoal-base-search-table/index.vue +9 -1
- package/src/components/bsgoal-base-table/demo.vue +39 -39
- package/src/components/bsgoal-base-table/index.vue +34 -1
- package/src/components/bsgoal-base-tree-table/demo.vue +2 -1
- package/src/components/bsgoal-base-tree-table/index.vue +9 -1
- package/src/entry.js +4 -2
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-23 16:35:24
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-30 09:17:44
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-dialog\demo.vue
|
|
7
7
|
* @Description: 弹窗公共组件 演示
|
|
8
8
|
*
|
|
@@ -51,12 +51,19 @@ const tabsConfigOptions = ref([
|
|
|
51
51
|
}
|
|
52
52
|
])
|
|
53
53
|
|
|
54
|
-
const triggerConfirm = (done
|
|
54
|
+
const triggerConfirm = (done) => {
|
|
55
55
|
setTimeout(() => {
|
|
56
56
|
done(false)
|
|
57
57
|
}, 3000)
|
|
58
58
|
console.log('关闭前')
|
|
59
59
|
}
|
|
60
|
+
|
|
61
|
+
const triggerShow = (status = '') => {
|
|
62
|
+
console.log(status, '显示')
|
|
63
|
+
}
|
|
64
|
+
const triggerHide = (status = '') => {
|
|
65
|
+
console.log(status, '关闭')
|
|
66
|
+
}
|
|
60
67
|
</script>
|
|
61
68
|
<template>
|
|
62
69
|
<div class="bsgoal-base-dialog-demo">
|
|
@@ -72,6 +79,8 @@ const triggerConfirm = (done ) => {
|
|
|
72
79
|
size="max"
|
|
73
80
|
type="blank"
|
|
74
81
|
@on-confirm="triggerConfirm"
|
|
82
|
+
@on-show="triggerShow"
|
|
83
|
+
@on-hide="triggerHide"
|
|
75
84
|
>
|
|
76
85
|
<BsgoalBaseTabs v-memo="activeTabName" :config-options="tabsConfigOptions" />
|
|
77
86
|
</BsgoalBaseDialog>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-23 16:35:19
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-30 09:13:34
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-dialog\index.vue
|
|
7
7
|
* @Description: 弹窗公共组件
|
|
8
8
|
*
|
|
@@ -78,7 +78,7 @@ const props = defineProps({
|
|
|
78
78
|
}
|
|
79
79
|
})
|
|
80
80
|
|
|
81
|
-
const emits = defineEmits(['update:modelValue', 'on-confirm'])
|
|
81
|
+
const emits = defineEmits(['update:modelValue', 'on-confirm','on-show','on-hide'])
|
|
82
82
|
const dialogVisible = ref(props.modelValue.value)
|
|
83
83
|
|
|
84
84
|
/**
|
|
@@ -98,7 +98,7 @@ const cancel = () => {
|
|
|
98
98
|
*/
|
|
99
99
|
const confirm = (done = () => {}) => {
|
|
100
100
|
emits('on-confirm', (close = true) => {
|
|
101
|
-
if(close){
|
|
101
|
+
if (close) {
|
|
102
102
|
dialogVisible.value = false
|
|
103
103
|
}
|
|
104
104
|
done()
|
|
@@ -114,6 +114,11 @@ watch(
|
|
|
114
114
|
|
|
115
115
|
watch(dialogVisible, (v) => {
|
|
116
116
|
emits('update:modelValue', v)
|
|
117
|
+
if (v) {
|
|
118
|
+
emits('on-show', v)
|
|
119
|
+
} else {
|
|
120
|
+
emits('on-hide', v)
|
|
121
|
+
}
|
|
117
122
|
})
|
|
118
123
|
|
|
119
124
|
// 设置不同尺寸
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-10 15:00:00
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-30 08:59:19
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-form\demo.vue
|
|
7
7
|
* @Description: 表单公共组件演示组件
|
|
8
8
|
*
|
|
@@ -32,6 +32,9 @@ const confirm = () => {
|
|
|
32
32
|
console.log('res', res)
|
|
33
33
|
})
|
|
34
34
|
}
|
|
35
|
+
const resetFields = () => {
|
|
36
|
+
BSGOAL_BASE_FORM_REF.value.resetFields()
|
|
37
|
+
}
|
|
35
38
|
|
|
36
39
|
const bindModel = ref({ prop1: '111', prop99: 1, prop101: '否', prop102: '0', _prop104: '' })
|
|
37
40
|
|
|
@@ -265,6 +268,7 @@ const configOptions = ref([
|
|
|
265
268
|
<template #_prop104> 6666 </template>
|
|
266
269
|
</BsgoalBaseForm>
|
|
267
270
|
<el-button type="primary" @click="confirm">提交</el-button>
|
|
271
|
+
<el-button type="primary" @click="resetFields">重置</el-button>
|
|
268
272
|
</div>
|
|
269
273
|
</template>
|
|
270
274
|
<style lang="scss" scoped>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-17 11:44:29
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-30 09:19:56
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-form\index.vue
|
|
7
7
|
* @Description: 表单公共组件
|
|
8
8
|
*
|
|
@@ -341,7 +341,8 @@ const filterSlotProps = (model = {}) => {
|
|
|
341
341
|
for (const prop of Object.keys(model)) {
|
|
342
342
|
if (!prop.startsWith('_')) {
|
|
343
343
|
const value = model[prop]
|
|
344
|
-
|
|
344
|
+
const valueInt = Number.parseInt(value);
|
|
345
|
+
rebuildModel[prop] = valueInt || ['0', 0].includes(value) ? valueInt : value;
|
|
345
346
|
}
|
|
346
347
|
}
|
|
347
348
|
return rebuildModel
|
|
@@ -407,7 +408,8 @@ const setActiveValueText = (range = [], type = '') => {
|
|
|
407
408
|
defineExpose({
|
|
408
409
|
triggerOperationClear,
|
|
409
410
|
triggerOperationForm,
|
|
410
|
-
validateForm
|
|
411
|
+
validateForm,
|
|
412
|
+
resetFields:triggerOperationClear
|
|
411
413
|
})
|
|
412
414
|
</script>
|
|
413
415
|
<template>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-18 17:04:53
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-29 14:43:56
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-search-table\demo.vue
|
|
7
7
|
* @Description: 查询 + 表格 组合公共组件
|
|
8
8
|
*
|
|
@@ -743,6 +743,7 @@ const task = (done = () => {}, rows = {}) => {
|
|
|
743
743
|
ref="BSGOAL_BASE_SEARCH_TABLE_REF"
|
|
744
744
|
selection
|
|
745
745
|
operation
|
|
746
|
+
:show-summary="true"
|
|
746
747
|
:call="call"
|
|
747
748
|
:fetch="fetch"
|
|
748
749
|
:config-options="configOptions"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-18 17:04:47
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-29 14:35:56
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-search-table\index.vue
|
|
7
7
|
* @Description: 查询+表格 基础组件
|
|
8
8
|
*
|
|
@@ -130,6 +130,13 @@ const props = defineProps({
|
|
|
130
130
|
pageSize: {
|
|
131
131
|
type: [Number],
|
|
132
132
|
default: 20
|
|
133
|
+
},
|
|
134
|
+
/**
|
|
135
|
+
* 是否显示合计
|
|
136
|
+
*/
|
|
137
|
+
showSummary: {
|
|
138
|
+
type: [Boolean],
|
|
139
|
+
default: false
|
|
133
140
|
}
|
|
134
141
|
})
|
|
135
142
|
|
|
@@ -234,6 +241,7 @@ defineExpose({
|
|
|
234
241
|
<!-- S 表格 -->
|
|
235
242
|
<BsgoalBaseTable
|
|
236
243
|
ref="BSGOAL_BASE_TABLE_REF"
|
|
244
|
+
:show-summary="showSummary"
|
|
237
245
|
:page-size="pageSize"
|
|
238
246
|
:map-props="mapProps"
|
|
239
247
|
:operationWidth="operationWidth"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-10 14:26:44
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-29 17:34:31
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-table\demo.vue
|
|
7
7
|
* @Description: 表格公共组件演示页面
|
|
8
8
|
*
|
|
@@ -163,52 +163,52 @@ const data = ref([])
|
|
|
163
163
|
setTimeout(() => {
|
|
164
164
|
data.value = [
|
|
165
165
|
{
|
|
166
|
-
prop1:
|
|
167
|
-
prop2:
|
|
168
|
-
prop3:
|
|
169
|
-
prop4:
|
|
170
|
-
prop5:
|
|
171
|
-
prop6:
|
|
166
|
+
prop1: 1,
|
|
167
|
+
prop2: 2,
|
|
168
|
+
prop3: 3,
|
|
169
|
+
prop4: 4,
|
|
170
|
+
prop5: 5,
|
|
171
|
+
prop6: 6
|
|
172
172
|
},
|
|
173
173
|
{
|
|
174
|
-
prop1:
|
|
175
|
-
prop2:
|
|
176
|
-
prop3:
|
|
177
|
-
prop4:
|
|
178
|
-
prop5:
|
|
179
|
-
prop6:
|
|
174
|
+
prop1: 1,
|
|
175
|
+
prop2: 2,
|
|
176
|
+
prop3: 3,
|
|
177
|
+
prop4: 4,
|
|
178
|
+
prop5: 5,
|
|
179
|
+
prop6: 6
|
|
180
180
|
},
|
|
181
181
|
{
|
|
182
|
-
prop1:
|
|
183
|
-
prop2:
|
|
184
|
-
prop3:
|
|
185
|
-
prop4:
|
|
186
|
-
prop5:
|
|
187
|
-
prop6:
|
|
182
|
+
prop1: 1,
|
|
183
|
+
prop2: 2,
|
|
184
|
+
prop3: 3,
|
|
185
|
+
prop4: 4,
|
|
186
|
+
prop5: 5,
|
|
187
|
+
prop6: 6
|
|
188
188
|
},
|
|
189
189
|
{
|
|
190
|
-
prop1:
|
|
191
|
-
prop2:
|
|
192
|
-
prop3:
|
|
193
|
-
prop4:
|
|
194
|
-
prop5:
|
|
195
|
-
prop6:
|
|
190
|
+
prop1: 1,
|
|
191
|
+
prop2: 2,
|
|
192
|
+
prop3: 3,
|
|
193
|
+
prop4: 4,
|
|
194
|
+
prop5: 5,
|
|
195
|
+
prop6: 6
|
|
196
196
|
},
|
|
197
197
|
{
|
|
198
|
-
prop1:
|
|
199
|
-
prop2:
|
|
200
|
-
prop3:
|
|
201
|
-
prop4:
|
|
202
|
-
prop5:
|
|
203
|
-
prop6:
|
|
198
|
+
prop1: 1,
|
|
199
|
+
prop2: 2,
|
|
200
|
+
prop3: 3,
|
|
201
|
+
prop4: 4,
|
|
202
|
+
prop5: 5,
|
|
203
|
+
prop6: 6
|
|
204
204
|
},
|
|
205
205
|
{
|
|
206
|
-
prop1:
|
|
207
|
-
prop2:
|
|
208
|
-
prop3:
|
|
209
|
-
prop4:
|
|
210
|
-
prop5:
|
|
211
|
-
prop6:
|
|
206
|
+
prop1: 1,
|
|
207
|
+
prop2: 2,
|
|
208
|
+
prop3: 3,
|
|
209
|
+
prop4: 4,
|
|
210
|
+
prop5: 5,
|
|
211
|
+
prop6: 6
|
|
212
212
|
}
|
|
213
213
|
]
|
|
214
214
|
}, 3000)
|
|
@@ -271,7 +271,7 @@ const clearSelection = () => {
|
|
|
271
271
|
ref="BSGOAL_EL_TABLE_REF"
|
|
272
272
|
operation-width="200"
|
|
273
273
|
operation
|
|
274
|
-
|
|
274
|
+
:showSummary="true"
|
|
275
275
|
:has-page="false"
|
|
276
276
|
:config-options="configOptionsTable"
|
|
277
277
|
:data="data"
|
|
@@ -283,7 +283,7 @@ const clearSelection = () => {
|
|
|
283
283
|
<!-- S 操作项 -->
|
|
284
284
|
<template v-slot:operation="{ row }">
|
|
285
285
|
<div>
|
|
286
|
-
{{ row }}
|
|
286
|
+
<!-- {{ row }} -->
|
|
287
287
|
</div>
|
|
288
288
|
</template>
|
|
289
289
|
<!-- E 操作项 -->
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-04-10 11:29:04
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-30 08:40:07
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-table\index.vue
|
|
7
7
|
* @Description:
|
|
8
8
|
*
|
|
@@ -133,6 +133,13 @@ const props = defineProps({
|
|
|
133
133
|
pageSize: {
|
|
134
134
|
type: [Number],
|
|
135
135
|
default: 20
|
|
136
|
+
},
|
|
137
|
+
/**
|
|
138
|
+
* 是否显示合计
|
|
139
|
+
*/
|
|
140
|
+
showSummary: {
|
|
141
|
+
type: [Boolean],
|
|
142
|
+
default: false
|
|
136
143
|
}
|
|
137
144
|
})
|
|
138
145
|
|
|
@@ -268,6 +275,29 @@ const clearSelection = () => {
|
|
|
268
275
|
|
|
269
276
|
// ---> E 暴露事件 <---
|
|
270
277
|
|
|
278
|
+
// ---> S 表格绑定的方法 <---
|
|
279
|
+
|
|
280
|
+
const summaryMethod = (columns = '') => {
|
|
281
|
+
const dataList = columns.data
|
|
282
|
+
const calcResultList = []
|
|
283
|
+
|
|
284
|
+
dataList.forEach((fi = {}) => {
|
|
285
|
+
let calcIndex = 0
|
|
286
|
+
for (const [prop, value] of Object.entries(fi)) {
|
|
287
|
+
const cellValue = calcResultList[calcIndex]
|
|
288
|
+
const cellValueInt = parseInt(cellValue) || 0
|
|
289
|
+
const valueInt = parseInt(value) || 0
|
|
290
|
+
calcResultList[calcIndex] = cellValueInt + valueInt
|
|
291
|
+
calcIndex++
|
|
292
|
+
}
|
|
293
|
+
})
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
return ['合计', ...calcResultList.slice(1)]
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
// ---> E 表格绑定的方法 <---
|
|
300
|
+
|
|
271
301
|
// ---> S 兼容微前端 <---
|
|
272
302
|
const isMicroApp = window.__MICRO_APP_ENVIRONMENT__
|
|
273
303
|
// ---> E 兼容微前端 <---
|
|
@@ -299,6 +329,9 @@ defineExpose({
|
|
|
299
329
|
highlight-current-row
|
|
300
330
|
style="width: 100%"
|
|
301
331
|
v-loading="tableLoading"
|
|
332
|
+
sum-text="合计"
|
|
333
|
+
:summary-method="summaryMethod"
|
|
334
|
+
:show-summary="showSummary"
|
|
302
335
|
:data="tableData"
|
|
303
336
|
:header-cell-style="{
|
|
304
337
|
fontWeight: 'bold',
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-06-20 09:20:51
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-30 08:42:21
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-tree-table\demo.vue
|
|
7
7
|
* @Description: 树 + 列表 + 演示
|
|
8
8
|
*
|
|
@@ -826,6 +826,7 @@ const clearSelection = () => {
|
|
|
826
826
|
ref="BSGOAL_BASE_TREE_TABLE_REF"
|
|
827
827
|
selection
|
|
828
828
|
operation
|
|
829
|
+
showSummary
|
|
829
830
|
:expandedKeys="expandedKeys"
|
|
830
831
|
:tree-data="treeData"
|
|
831
832
|
:page-size="40"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-06-20 09:20:44
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-29 14:37:18
|
|
6
6
|
* @FilePath: \common\src\components\bsgoal-base-tree-table\index.vue
|
|
7
7
|
* @Description: 树结构 + 列表
|
|
8
8
|
*
|
|
@@ -168,6 +168,13 @@ const props = defineProps({
|
|
|
168
168
|
expandedKeys: {
|
|
169
169
|
type: [Array],
|
|
170
170
|
default: () => []
|
|
171
|
+
},
|
|
172
|
+
/**
|
|
173
|
+
* 是否显示合计
|
|
174
|
+
*/
|
|
175
|
+
showSummary: {
|
|
176
|
+
type: [Boolean],
|
|
177
|
+
default: false
|
|
171
178
|
}
|
|
172
179
|
})
|
|
173
180
|
|
|
@@ -295,6 +302,7 @@ const tableStyler = computed(() => {
|
|
|
295
302
|
<BsgoalBaseSearchTable
|
|
296
303
|
ref="BSGOAL_BASE_SEARCH_TABLE_REF"
|
|
297
304
|
v-bind="$props"
|
|
305
|
+
:show-summary="showSummary"
|
|
298
306
|
@select="triggerSelect"
|
|
299
307
|
@select-all="triggerSelectAll"
|
|
300
308
|
@selection-change="triggerSelectionChange"
|
package/src/entry.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: canlong.shen
|
|
3
3
|
* @Date: 2023-05-11 18:31:55
|
|
4
4
|
* @LastEditors: canlong.shen
|
|
5
|
-
* @LastEditTime: 2023-06-
|
|
5
|
+
* @LastEditTime: 2023-06-29 13:42:31
|
|
6
6
|
* @FilePath: \common\src\entry.js
|
|
7
7
|
* @Description: 打包 入口文件
|
|
8
8
|
*
|
|
@@ -30,6 +30,7 @@ import BsgoalBaseInput from '@/components/bsgoal-base-input/index.vue'
|
|
|
30
30
|
import BsgoalBaseTreeTable from '@/components/bsgoal-base-tree-table/index.vue'
|
|
31
31
|
import BsgoalBaesPopover from '@/components/bsgoal-baes-popover/index.vue'
|
|
32
32
|
import BsgoalBaseViewer from '@/components/bsgoal-base-viewer/index.vue'
|
|
33
|
+
import BsgoalBaseTooltip from '@/components/bsgoal-base-tooltip/index.vue'
|
|
33
34
|
import componentTypeEnums from '@/enums/componentTypeEnums.js'
|
|
34
35
|
import { useFetch } from '@/combines/useFetchs.js'
|
|
35
36
|
|
|
@@ -61,7 +62,8 @@ export default {
|
|
|
61
62
|
BsgoalBaseInput,
|
|
62
63
|
BsgoalBaseTreeTable,
|
|
63
64
|
BsgoalBaesPopover,
|
|
64
|
-
BsgoalBaseViewer
|
|
65
|
+
BsgoalBaseViewer,
|
|
66
|
+
BsgoalBaseTooltip
|
|
65
67
|
}
|
|
66
68
|
|
|
67
69
|
for (const [name, component] of Object.entries(componentsMap)) {
|