fix(knowledge): 修复查询问题,体验优化

1. 修复知识文件名称查询无法模糊
2. 现在可以使用 `enter` 键进行查询
This commit is contained in:
Huangzhe
2025-04-17 13:55:10 +08:00
parent 89447524ec
commit 17613ea2c4

View File

@@ -5,7 +5,8 @@
<div class="flex align-items-c">
<h3 class="mr20" v-if="!editKnowledge">{{ knowledgeName }}</h3>
<el-input class="mr20 w400" size="medium" v-else v-model="copyKnowledgeName">{{ knowledgeName }}</el-input>
<el-icon class="fs20 el-icon-edit cursor-pointer" @click.native="editKnowledgeName" v-if="!editKnowledge"></el-icon>
<el-icon class="fs20 el-icon-edit cursor-pointer" @click.native="editKnowledgeName"
v-if="!editKnowledge"/>
<div v-else>
<el-button type="primary" size="medium" @click="saveKnowledgeName">保存</el-button>
<el-button size="medium" @click="cancelKnowledgeName">取消</el-button>
@@ -29,14 +30,16 @@
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="知识文件名称" prop="fileName">
<el-input v-model="form.fileName" placeholder="请输入知识文件名称"></el-input>
<el-input v-model="form.knowledgeNameLike" placeholder="请输入知识文件名称"
@keydown.enter.native="search"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="知识文件来源" prop="documentSource">
<el-select v-model="form.documentSource" placeholder="请输入知识文件名称">
<el-option label="全部" value=""></el-option>
<el-option v-for="item in documentSourceOptions" :label="item.label" :value="item.value" :key="item.value"></el-option>
<el-option v-for="item in documentSourceOptions" :label="item.label" :value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
</el-col>
@@ -55,14 +58,9 @@
<el-col :span="12">
<el-form-item label="上传时间" prop="times">
<el-date-picker
style="width:100%"
v-model="form.times"
value-format="yyyy-MM-dd"
start-placeholder="开始时间"
end-placeholder="结束时间"
type="daterange"
></el-date-picker>
<el-date-picker style="width:100%" v-model="form.times" value-format="yyyy-MM-dd"
start-placeholder="开始时间" end-placeholder="结束时间"
type="daterange"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="24" class="mb20 text-center">
@@ -72,16 +70,8 @@
</el-row>
</el-form>
</div>
<r-table
:columns="columns"
:data="list"
:deletion="false"
:total="total"
@page-change="pageChange"
@current-change="currentChange"
:current-page="page"
:page-size="pageSize"
></r-table>
<r-table :columns="columns" :data="list" :deletion="false" :total="total" @page-change="pageChange"
@current-change="currentChange" :current-page="page" :page-size="pageSize"></r-table>
</div>
</div>
</el-card>
@@ -173,13 +163,8 @@
<div class="segment-split-view">
<div class="segment-list">
<div
v-for="(segment, index) in descriptions.data"
:key="index"
class="segment-list-item"
:class="{ active: activeSegment === index }"
@click="activeSegment = index"
>
<div v-for="(segment, index) in descriptions.data" :key="index" class="segment-list-item"
:class="{ active: activeSegment === index }" @click="activeSegment = index">
<div class="segment-title">
<span class="segment-number">分段{{ index + 1 }}</span>
<!-- <span class="segment-chars">{{ segment.characters || 0 }} characters</span>-->
@@ -189,11 +174,13 @@
<div class="segment-detail" v-if="descriptions.data && descriptions.data.length > 0">
<div class="segment-content" v-if="activeSegment !== null">
{{ descriptions.data[activeSegment].content }}
<div class="flex align-items-c" v-if="descriptions.data[activeSegment].keywords && descriptions.data[activeSegment].keywords.length">
<div class="flex align-items-c"
v-if="descriptions.data[activeSegment].keywords && descriptions.data[activeSegment].keywords.length">
关键词
<el-tag v-for="(item, index) in descriptions.data[activeSegment].keywords" :key="index" class="mr10" size="mini" type="primary">{{
item
}}</el-tag>
<el-tag v-for="(item, index) in descriptions.data[activeSegment].keywords" :key="index" class="mr10"
size="mini" type="primary">
{{ item }}
</el-tag>
</div>
</div>
<div v-if="activeSegment !== null"></div>
@@ -208,8 +195,16 @@
</div>
</template>
<script>
import { getDatasetById, datasetUpdate, datasetsExPages, datasetQuerySegments, datasetQueryDelete, datasetDocumentEx } from '@/api/generatedApi/index'
import {
datasetDocumentEx,
datasetQueryDelete,
datasetQuerySegments,
datasetsExPages,
datasetUpdate,
getDatasetById
} from '@/api/generatedApi/index'
import { documentSourceOptions, segmentedModeOptionsMap } from '@/assets/js/utils/utilOptions'
export default {
name: 'index',
data() {
@@ -218,7 +213,7 @@ export default {
drawer: false,
editKnowledge: false,
form: {
fileName: '',
knowledgeNameLike: '',
documentSource: '',
createdUserLike: '',
times: ''
@@ -441,7 +436,8 @@ export default {
return item ? item.label : '否'
}
},
created() {},
created() {
},
async mounted() {
this.getKnowledgeDetail()
// 获取知识库文件列表
@@ -630,6 +626,7 @@ export default {
p {
margin: 5px 0;
}
.rule-label {
font-size: 14px;
color: #606266;