Browse Source

【东阳-主子表】表格多选及权限按钮优化开发

dev_web
安虹睿 1 year ago
parent
commit
c0454f2f23
  1. 19
      WinIn.FasterZ.Wms.Fe/src/components/tablePagination/index.vue
  2. 23
      WinIn.FasterZ.Wms.Fe/src/components/umyTable/index.vue
  3. 12
      WinIn.FasterZ.Wms.Fe/src/utils/defaultButtons.js

19
WinIn.FasterZ.Wms.Fe/src/components/tablePagination/index.vue

@ -62,6 +62,7 @@
:firstFixed="true" :firstFixed="true"
:cellStyle = "cellStyle" :cellStyle = "cellStyle"
:showOverflowTooltip="showOverflowTooltip" :showOverflowTooltip="showOverflowTooltip"
:selectionColumnHandle="selectionColumnHandle"
> >
<template> <template>
<slot></slot> <slot></slot>
@ -93,13 +94,6 @@ export default {
rowDrop rowDrop
}, },
props: { props: {
// 使
noUsePermissionBtn:{
type: Array,
default: () => {
return ['refresh','field','filterForDetail','export','filter']//
}
},
rowMaxHeight:{ rowMaxHeight:{
type:String, type:String,
default:'calc(90vh - 280px)' default:'calc(90vh - 280px)'
@ -232,6 +226,11 @@ export default {
rowSource:{ rowSource:{
type:String, type:String,
default:'list_api' default:'list_api'
},
//
selectionColumnHandle:{
type: Function,
default: null
} }
}, },
data () { data () {
@ -300,13 +299,17 @@ export default {
}) })
}, },
methods: { methods: {
// (使)
clearTableSelection(){
this.$refs.tablePaginationTableRef.clearTableSelection();
},
initButttondata(){ initButttondata(){
let _list = [] let _list = []
this.currenButtonData.forEach(item=>{ this.currenButtonData.forEach(item=>{
if(item.permission){ if(item.permission){
_list.push(item) _list.push(item)
}else{ }else{
if(this.noUsePermissionBtn.indexOf(item.name) < 0){ if(!item.isNoPermission){
let _scope = item.clientScope || localStorage.getItem('appClientScope') let _scope = item.clientScope || localStorage.getItem('appClientScope')
item.permission = [_scope + '.' +this.$route.name+'.'+(item.permissionName || item.name)] item.permission = [_scope + '.' +this.$route.name+'.'+(item.permissionName || item.name)]
}else{ }else{

23
WinIn.FasterZ.Wms.Fe/src/components/umyTable/index.vue

@ -18,7 +18,13 @@
header-row-class-name="uTableHeader" header-row-class-name="uTableHeader"
> >
<!-- :tree-props="treeProps" height 不能共存 此组件暂不支持tree的格式--> <!-- :tree-props="treeProps" height 不能共存 此组件暂不支持tree的格式-->
<u-table-column v-if="selectionTable" fixed="left" type="selection" :reserve-selection="true" /> <u-table-column
v-if="selectionTable"
fixed="left"
type="selection"
:reserve-selection="true"
:selectable="selectionHandle"
/>
<u-table-column v-if="isShowIndex" type="index" fixed="left" label="序号" width="50" /> <u-table-column v-if="isShowIndex" type="index" fixed="left" label="序号" width="50" />
<template v-for="(item, index) in TableSize"> <template v-for="(item, index) in TableSize">
<u-table-column <u-table-column
@ -333,6 +339,11 @@ export default {
default: () => { default: () => {
return 280; return 280;
} }
},
//
selectionColumnHandle:{
type: Function,
default: null
} }
}, },
data() { data() {
@ -399,6 +410,14 @@ export default {
this.setTableHeightHandle() this.setTableHeightHandle()
}, },
methods: { methods: {
//
selectionHandle(row,index){
return this.selectionColumnHandle(row,index)
},
// (使)
clearTableSelection(){
this.$refs.multipleTable.clearSelection();
},
// //
operationLeftColumnWidth(){ operationLeftColumnWidth(){
if(this.buttonOperationList_left.length == 1){return 120} if(this.buttonOperationList_left.length == 1){return 120}
@ -420,7 +439,7 @@ export default {
this.$refs.multipleTable.$forceUpdate() this.$refs.multipleTable.$forceUpdate()
}); });
}, },
// //
getTableHeight(){ getTableHeight(){
return this.uTableHeight return this.uTableHeight
}, },

12
WinIn.FasterZ.Wms.Fe/src/utils/defaultButtons.js

@ -39,6 +39,7 @@ export function defaultExportBtn(option) {
label: i18n.t('btns.export'), label: i18n.t('btns.export'),
name: "export", name: "export",
size: "mini", size: "mini",
isNoPermission:true
}) })
} }
@ -69,7 +70,8 @@ export function defaultFieldSettingBtn(option,source) {
name: "field", name: "field",
size: "mini", size: "mini",
float: 'right', float: 'right',
class: "rowDropNotHideItem" class: "rowDropNotHideItem",
isNoPermission:true
}) })
} }
@ -80,7 +82,8 @@ export function defaultFreshBtn(option) {
label: i18n.t('btns.fresh'), label: i18n.t('btns.fresh'),
name: "refresh", name: "refresh",
size: "mini", size: "mini",
float: 'right' float: 'right',
isNoPermission:true
}) })
} }
@ -92,7 +95,8 @@ export function defaultFilterBtn(option) {
label: i18n.t('btns.filter'), label: i18n.t('btns.filter'),
name: "filter", name: "filter",
size: "mini", size: "mini",
float: 'left' float: 'left',
isNoPermission:true
}) })
} }
@ -105,6 +109,7 @@ export function defaultFilterForDetailBtn(option) {
name: "filterForDetail", name: "filterForDetail",
size: "mini", size: "mini",
float: 'left', float: 'left',
isNoPermission:true
}) })
} }
@ -126,5 +131,6 @@ function __defaultBtnOption(option,specific){
permission:option && option.permission ? option.permission : null, permission:option && option.permission ? option.permission : null,
clientScope:option && option.clientScope ? option.clientScope : null, clientScope:option && option.clientScope ? option.clientScope : null,
permissionName:option && option.permissionName ? option.permissionName : specific.permissionName, permissionName:option && option.permissionName ? option.permissionName : specific.permissionName,
isNoPermission:option && option.isNoPermission ? option.isNoPermission : specific.isNoPermission
} }
} }
Loading…
Cancel
Save