CN-1062 fix:左侧filter,type有半选的category,点击disable 报错;内置数据选择框需要禁用;左侧去掉一些勾选的,右侧删除一个,勾选又自动勾上了,但是右侧列表没变化;
This commit is contained in:
@@ -13,6 +13,7 @@
|
|||||||
:resizable="false"
|
:resizable="false"
|
||||||
align="center"
|
align="center"
|
||||||
type="selection"
|
type="selection"
|
||||||
|
:selectable="selectable"
|
||||||
width="55">
|
width="55">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
@@ -5,12 +5,12 @@
|
|||||||
<div class="card-title">
|
<div class="card-title">
|
||||||
<div class="card-title-name" :title="data.name">{{data.name}}</div>
|
<div class="card-title-name" :title="data.name">{{data.name}}</div>
|
||||||
<div class="card-title-more">
|
<div class="card-title-more">
|
||||||
<span v-show="!isSelectedStatus && data.showMore"><i class="cn-icon cn-icon-more-dark" @mouseenter="mouseenterMore(data)" test-id="mouseenter-dark"></i></span>
|
<span v-show="!isSelectedStatus && data.showMore && data.isBuiltIn !== 1"><i class="cn-icon cn-icon-more-dark" @mouseenter="mouseenterMore(data)" test-id="mouseenter-dark"></i></span>
|
||||||
<div class="card-operate" v-show="!isSelectedStatus && data.moreOptions" @mouseleave="mouseleaveMore(data)">
|
<div class="card-operate" v-show="!isSelectedStatus && data.moreOptions" @mouseleave="mouseleaveMore(data)">
|
||||||
<div class="card-title-more-edit" @click="edit(data.knowledgeId)" >{{$t('overall.edit')}}</div>
|
<div class="card-title-more-edit" @click="edit(data.knowledgeId)" >{{$t('overall.edit')}}</div>
|
||||||
<div class="card-title-more-delete" @click="del(data)" >{{$t('overall.delete')}}</div>
|
<div class="card-title-more-delete" @click="del(data)" >{{$t('overall.delete')}}</div>
|
||||||
</div>
|
</div>
|
||||||
<el-checkbox @click.stop="" @change="(val) => {checkboxStatusChange(val,data)}" style="position: absolute;right: -12px;" v-if="isSelectedStatus" :key="data.knowledgeId" :label="data"><br></el-checkbox>
|
<el-checkbox @click.stop="" :disabled="data.isBuiltIn === 1" @change="(val) => {checkboxStatusChange(val,data)}" style="position: absolute;right: -12px;" v-if="isSelectedStatus" :key="data.knowledgeId" :label="data"><br></el-checkbox>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -109,6 +109,9 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
init () {
|
||||||
|
this.isInit = true
|
||||||
|
},
|
||||||
changeStatus (status, id) {
|
changeStatus (status, id) {
|
||||||
if (!this.isInit) {
|
if (!this.isInit) {
|
||||||
patch(api.knowledgeBaseEnable, { list: [{ knowledgeId: id, status: status }] }).then(response => {
|
patch(api.knowledgeBaseEnable, { list: [{ knowledgeId: id, status: status }] }).then(response => {
|
||||||
@@ -126,6 +129,13 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
selectable (row, rowIndex) {
|
||||||
|
if (row.isBuiltIn === 1) {
|
||||||
|
return false
|
||||||
|
} else {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
},
|
||||||
tableOperation ([command, row]) {
|
tableOperation ([command, row]) {
|
||||||
switch (command) {
|
switch (command) {
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -253,6 +253,8 @@ export default {
|
|||||||
this.$refs.knowledgeFilter.reloadFilter()
|
this.$refs.knowledgeFilter.reloadFilter()
|
||||||
this.secondBatchDeleteObjs = []
|
this.secondBatchDeleteObjs = []
|
||||||
this.batchDeleteObjs = []
|
this.batchDeleteObjs = []
|
||||||
|
delete this.searchLabel.category
|
||||||
|
delete this.searchLabel.source
|
||||||
this.getTableData()
|
this.getTableData()
|
||||||
} else {
|
} else {
|
||||||
this.$message.error(response.data.message)
|
this.$message.error(response.data.message)
|
||||||
@@ -347,6 +349,8 @@ export default {
|
|||||||
this.batchDeleteObjs = []
|
this.batchDeleteObjs = []
|
||||||
this.secondBatchDeleteObjs = []
|
this.secondBatchDeleteObjs = []
|
||||||
this.listMode = mode
|
this.listMode = mode
|
||||||
|
// this.$refs.dataTable.init()
|
||||||
|
// this.$refs.dataTableCard.init()
|
||||||
const { query } = this.$route
|
const { query } = this.$route
|
||||||
const newUrl = urlParamsHandler(window.location.href, query, { listMode: mode })
|
const newUrl = urlParamsHandler(window.location.href, query, { listMode: mode })
|
||||||
overwriteUrl(newUrl)
|
overwriteUrl(newUrl)
|
||||||
@@ -362,6 +366,8 @@ export default {
|
|||||||
if (response.data.code === 200) {
|
if (response.data.code === 200) {
|
||||||
this.delFlag = true
|
this.delFlag = true
|
||||||
this.$message({ duration: 2000, type: 'success', message: this.$t('tip.deleteSuccess') })
|
this.$message({ duration: 2000, type: 'success', message: this.$t('tip.deleteSuccess') })
|
||||||
|
delete this.searchLabel.category
|
||||||
|
delete this.searchLabel.source
|
||||||
this.getTableData()
|
this.getTableData()
|
||||||
} else {
|
} else {
|
||||||
this.$message.error(response.data.message)
|
this.$message.error(response.data.message)
|
||||||
|
|||||||
@@ -121,18 +121,20 @@ export default {
|
|||||||
},
|
},
|
||||||
handleCheckedItemChange (data, checkinfo) {
|
handleCheckedItemChange (data, checkinfo) {
|
||||||
let typeCheckedNodes = []
|
let typeCheckedNodes = []
|
||||||
|
let typeHalfCheckedNodes = []
|
||||||
if (this.$refs.knowledgeTreeTypeFilter) {
|
if (this.$refs.knowledgeTreeTypeFilter) {
|
||||||
if (this.$refs.knowledgeTreeTypeFilter instanceof Array) {
|
if (this.$refs.knowledgeTreeTypeFilter instanceof Array) {
|
||||||
typeCheckedNodes = this.$refs.knowledgeTreeTypeFilter[0].getCheckedNodes()
|
typeCheckedNodes = this.$refs.knowledgeTreeTypeFilter[0].getCheckedNodes()
|
||||||
|
typeHalfCheckedNodes = this.$refs.knowledgeTreeTypeFilter[0].getHalfCheckedNodes()
|
||||||
} else {
|
} else {
|
||||||
typeCheckedNodes = this.$refs.knowledgeTreeTypeFilter.getCheckedNodes()
|
typeCheckedNodes = this.$refs.knowledgeTreeTypeFilter.getCheckedNodes()
|
||||||
|
typeHalfCheckedNodes = this.$refs.knowledgeTreeTypeFilter.getHalfCheckedNodes()
|
||||||
}
|
}
|
||||||
const categoryIds = []
|
const categoryIds = []
|
||||||
typeCheckedNodes.forEach(item => {
|
typeCheckedNodes.forEach(item => {
|
||||||
categoryIds.push(item.id)
|
categoryIds.push(item.id)
|
||||||
})
|
})
|
||||||
this.defaultCheckedCategory = categoryIds
|
this.defaultCheckedCategory = categoryIds
|
||||||
const typeHalfCheckedNodes = checkinfo.halfCheckedNodes
|
|
||||||
typeCheckedNodes = typeCheckedNodes.concat(typeHalfCheckedNodes)
|
typeCheckedNodes = typeCheckedNodes.concat(typeHalfCheckedNodes)
|
||||||
}
|
}
|
||||||
let statusCheckedNodes = []
|
let statusCheckedNodes = []
|
||||||
@@ -214,8 +216,12 @@ export default {
|
|||||||
this.initStatusData()
|
this.initStatusData()
|
||||||
const self = this
|
const self = this
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
self.$refs.knowledgeTreeTypeFilter.setCheckedKeys(this.defaultCheckedCategory)
|
if (self.$refs.knowledgeTreeTypeFilter) {
|
||||||
self.$refs.knowledgeTreeStatusFilter.setCheckedKeys(this.defaultCheckedStatus)
|
self.$refs.knowledgeTreeTypeFilter.setCheckedKeys(this.defaultCheckedCategory)
|
||||||
|
}
|
||||||
|
if (self.$refs.knowledgeTreeStatusFilter) {
|
||||||
|
self.$refs.knowledgeTreeStatusFilter.setCheckedKeys(this.defaultCheckedStatus)
|
||||||
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user