Merge branch 'cherry-pick-eb611bda' into 'dev-23.06'

fix: 1、修复customize只保留最后一项点击空白处,再打开customize新增选项,上次禁用的项还存在的问题;2、表格某一列数据为空时,添加-避免界面展示空白

See merge request cyber-narrator/cn-ui!31
This commit is contained in:
陈劲松
2023-06-25 08:01:55 +00:00
6 changed files with 22 additions and 21 deletions

View File

@@ -70,8 +70,7 @@ export default {
return {
custom: [],
dragIndex: -1,
selectList: [],
lastIndex: -1
selectList: []
}
},
created () {
@@ -95,19 +94,13 @@ export default {
this.selectList = this.custom.filter(item => item.show)
// 最少保留一个选项
if (this.selectList.length === 1) {
let index = -1
this.custom.find((item, i) => {
index = i
return item.prop === this.selectList[0].prop
})
this.lastIndex = index
this.custom[index].disabled = true
} else if (this.lastIndex > -1) {
const obj = this.custom.find(item => item.prop === this.selectList[0].prop)
obj.disabled = true
} else if (this.selectList.length > 1) {
this.custom.forEach(item => {
// 该方案仅用于原始table列表无禁用的情况目前无原始列表禁用的情况后续有原始列表禁用的情况再修改
item.disabled = false
})
this.lastIndex = -1
}
this.save()
},

View File

@@ -33,7 +33,7 @@
<div class="col-resize-area"></div>
</template>
<template #default="scope" :column="item">
<span>{{scope.row[item.prop]}}</span>
<span>{{scope.row[item.prop] || '-'}}</span>
</template>
</el-table-column><template v-slot:empty >
<div class="table-no-data" v-if="isNoData">

View File

@@ -43,15 +43,15 @@
{{$t('operationLog.state.fail')}}
</template>
<template v-else>
{{scope.row[item.prop]}}
{{scope.row[item.prop] || '-'}}
</template>
</span>
<span v-else-if="item.prop === 'username'">{{formatUsername(scope.row)}}</span>
<span v-else-if="item.prop === 'ctime'">{{dateFormatByAppearance(scope.row[item.prop])}}</span>
<template v-else-if="item.prop === 'params' || item.prop === 'response'">
<span>{{scope.row[item.prop]}}</span>
<span>{{scope.row[item.prop] || '-'}}</span>
</template>
<span v-else>{{scope.row[item.prop]}}</span>
<span v-else>{{scope.row[item.prop] || '-'}}</span>
</template>
</el-table-column>
<template v-slot:empty >

View File

@@ -47,7 +47,7 @@
<span>-</span>
</template>
</template>
<span v-else>{{scope.row[item.prop]}}</span>
<span v-else>{{scope.row[item.prop] || '-'}}</span>
</template>
</el-table-column>
<template v-slot:empty >

View File

@@ -44,7 +44,7 @@
</template>
<template v-else-if="item.prop === 'lastLoginTime'">
<template v-if="scope.row[item.prop]">
{{dateFormatByAppearance(scope.row[item.prop])}}
{{dateFormatByAppearance(scope.row[item.prop]) || '-'}}
</template>
<template v-else>
<span>-</span>
@@ -60,7 +60,7 @@
@change="()=>{statusChange(scope.row)}">
</el-switch>
</template>
<span v-else>{{scope.row[item.prop]}}</span>
<span v-else>{{scope.row[item.prop] || '-'}}</span>
</template>
</el-table-column>
<template v-slot:empty >

View File

@@ -117,9 +117,7 @@
{{ handleTimeRange(scope.row) }}
</span>
<span v-else-if="item.prop === 'categoryId'">
<span v-for="(item, i) in categoryList" :key="i">
<span v-if="scope.row.categoryId === item.id">{{ item.name }}</span>
</span>
<span>{{ getCategoryName(scope.row.categoryId) }}</span>
</span>
<span v-else-if="item.prop === 'timePlan'">
<template v-if="scope.row.config && scope.row.config.isScheduler === 0">
@@ -768,6 +766,16 @@ export default {
}
}
this.configCustom = str
},
getCategoryName (id) {
let name = '-'
for (let i = 0; i < this.categoryList.length; i++) {
if (id === this.categoryList[i].id) {
name = this.categoryList[i].name
break
}
}
return name
}
},
beforeUnmount () {