feat[track]: 任务轨迹内容更改

1. 添加原文内容展示
2. 对接接口内容
3. 调整规则管理页面修改的ui
This commit is contained in:
Huangzhe
2025-04-15 20:13:42 +08:00
parent 28e3f7b074
commit 975ed08bad
5 changed files with 115 additions and 69 deletions

View File

@@ -42,6 +42,7 @@ export function datasetDelete(data) {
}
export function datasetsExPages(data) {
return request({
// url: getUrl(`/datasetDocumentEx/taskPage`),
url: getUrl(`/datasetDocumentEx/page`),
method: 'post',
data
@@ -204,11 +205,20 @@ export function uploadFileByTemplate(data) {
// 知识库文件详情
export function datasetQuerySegments(data) {
return request({
url: getUrl(`/datasetDocumentEx/querySegments`),
url: getUrl(`/datasetDocumentEx/querySegments`, "jifen"),
method: 'get',
params: data
})
}
// 任务轨迹查看详情
export function getTaskDetail(params) {
return request({
url: getUrl(`/datasetDocumentEx/query`),
method: 'get',
params
})
}
// 知识库文件删除
export function datasetQueryDelete(data) {
return request({
@@ -216,3 +226,11 @@ export function datasetQueryDelete(data) {
method: 'delete'
})
}
export function queryTask(params) {
return request({
url: getUrl(`/datasetDocumentEx/queryTask`),
method: 'get',
params
})
}

View File

@@ -272,7 +272,7 @@ export default {
<!-- 功能按钮组 查询重置新增规则 -->
<el-row class="p25">
<el-col :span="16">
<el-button size="mini" type="primary" @click="handleQuery">查询</el-button>
<!-- <el-button size="mini" type="primary" @click="handleQuery">查询</el-button>-->
<el-button size="mini" type="info" @click="handleReset">重置</el-button>
<el-button size="mini" type="primary" @click="handleAdd">新增规则</el-button>
</el-col>

View File

@@ -130,7 +130,7 @@ export default {
<el-form-item label="规则名称">
<el-input v-model="form.ruleName"></el-input>
</el-form-item>
<el-card shadow="hover">
<el-card shadow="hover" v-if="form.ruleList.length > 0">
<el-tabs closable @tab-remove="handleDelete">
<el-tab-pane
v-for="(item, index) in form.ruleList"

View File

@@ -1,5 +1,5 @@
<script>
import { getDocByPage } from '@/api/knowledge/task-page'
import { datasetsExPages } from '@/api/generatedApi'
import KnowledgeInfo from '@/views/track/views/knowledge-info/Index.vue'
export default {
@@ -23,11 +23,11 @@ export default {
currentPage: 1,
pageSize: 10,
columns: [
{ prop: 'taskCode', key: '任务号', width: '180' },
{ prop: 'docTypeName', key: '知识库', width: '180' },
{ prop: 'id', key: '任务号', width: '180' },
{ prop: 'datasetName', key: '知识库', width: '180' },
{ prop: 'fileName', key: '知识文件名称' },
{ prop: 'documentStatus', key: '上传状态', width: '100' },
{ prop: 'createdUser', key: '上传用户', width: '100' },
{ prop: 'userName', key: '上传用户', width: '100' },
{ prop: 'createdDate', key: '上传时间', width: '200' },
{
key: '操作',
@@ -58,29 +58,29 @@ export default {
// 按照顺序进行筛选,先按照知识库进行筛选
filteredList = this.form.knowledge
? filteredList.filter(item => {
return item.docTypeName === this.form.knowledge
})
return item.datasetName === this.form.knowledge
})
: filteredList
// 按照知识文件名称进行筛选
filteredList = this.form.knowledgeName
? filteredList.filter(item => {
return item.fileName === this.form.knowledgeName
})
return item.fileName === this.form.knowledgeName
})
: filteredList
// 按照上传用户进行筛选
filteredList = this.form.uploadUser
? filteredList.filter(item => {
return item.createdUser === this.form.uploadUser
})
return item.userName === this.form.uploadUser
})
: filteredList
// 按照任务状态进行筛选
filteredList = this.form.documentStatus
? filteredList.filter(item => {
return item.documentStatus === this.form.documentStatus
})
return item.documentStatus === this.form.documentStatus
})
: filteredList
// 处理的状态格式化
@@ -99,11 +99,11 @@ export default {
filteredList =
this.form.taskTime.length > 0
? filteredList.filter(item => {
return (
new Date(item.uploadDate).getTime() >= new Date(this.form.taskTime[0]).getTime() &&
new Date(item.uploadDate).getTime() <= new Date(this.form.taskTime[1]).getTime()
)
})
return (
new Date(item.uploadDate).getTime() >= new Date(this.form.taskTime[0]).getTime() &&
new Date(item.uploadDate).getTime() <= new Date(this.form.taskTime[1]).getTime()
)
})
: filteredList
// 默认返回所有列表
@@ -114,7 +114,7 @@ export default {
*/
getKnowledgeList() {
// 进行去重处理
const knowledgeList = [...new Set(this.tabList.map(item => item.docTypeName))]
const knowledgeList = [...new Set(this.tabList.map(item => item.datasetName))]
return knowledgeList
},
/**
@@ -130,7 +130,7 @@ export default {
*/
getUploadUserList() {
// 进行去重处理
const uploadUserList = [...new Set(this.tabList.map(item => item.createdUser))]
const uploadUserList = [...new Set(this.tabList.map(item => item.userName))]
return uploadUserList
},
/**
@@ -158,7 +158,7 @@ export default {
docId: ''
}
getDocByPage(payload).then(res => {
datasetsExPages(payload).then(res => {
this.tabList = res.content.content.list ? res.content.content.list : []
this.tableConfig.total = res.content.content.total
console.log(`res:`, res.content.content.list)
@@ -228,18 +228,12 @@ export default {
</el-col>
<el-col :span="8">
<el-form-item label="任务时间">
<el-date-picker
v-model="form.taskTime"
type="daterange"
unlink-panels
range-separator=""
start-placeholder="开始日期"
end-placeholder="结束日期"
>
<el-date-picker v-model="form.taskTime" type="daterange" unlink-panels range-separator="至"
start-placeholder="开始日期" end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="9">
<el-col :span="9" :offset="11" class="mb20">
<el-button type="primary" size="small" @click="handleReset">重置筛选</el-button>
</el-col>
</el-row>
@@ -247,17 +241,12 @@ export default {
<!-- 任务列表 -->
<div>
<r-table
:columns="tableConfig.columns"
:data="getFilterTableData"
:deletion="false"
:total="tableConfig.total"
@currentChange="handleCurrentChange"
@sizeChange="handleSizeChange"
/>
<r-table :columns="tableConfig.columns" :data="getFilterTableData" :deletion="false" :total="tableConfig.total"
@currentChange="handleCurrentChange" @sizeChange="handleSizeChange" />
<!-- 弹出提示框 里面是各种详情内容 -->
<el-drawer title="上传任务详情" :visible.sync="infoDialogVisible" size="80%" :before-close="() => (infoDialogVisible = false)">
<el-drawer title="上传任务详情" :visible.sync="infoDialogVisible" size="80%"
:before-close="() => (infoDialogVisible = false)">
<knowledge-info :form="activeForm" v-if="infoDialogVisible"></knowledge-info>
</el-drawer>
</div>

View File

@@ -1,10 +1,18 @@
<script>
import { datasetQuerySegments, getPdfUrl, queryTask } from '@/api/generatedApi'
export default {
name: 'index',
data() {
return {}
return {
iframeSrc: window.location.origin
}
},
props: {
knowledgeContent: {
type: Array,
default: () => []
},
form: {
type: Object,
default: () => ({
@@ -23,8 +31,50 @@ export default {
})
}
},
created() {},
methods: {}
computed: {
documentStatus() {
if (this.form.documentStatus === 0 || this.form.documentStatus === '上传中') {
return '上传中'
} else if (this.form.documentStatus === 1 || this.form.documentStatus === '成功') {
return '成功'
} else if (this.form.documentStatus === -1 || this.form.documentStatus === '失败') {
return '失败'
}
return this.form.documentStatus
},
useMineru() {
if (this.form.splitMode === 1) {
return '是'
} else {
return '否'
}
}
},
methods: {
getPdfUrl,
_getTaskDetail() {
queryTask({ id: this.form.id }).then(res => {
const { content } = res.content
this.form = content
})
},
_getSplitResultPreview() {
console.log(this.form)
datasetQuerySegments({ documentId: '1361713754874679296' }).then(res => {
const { content } = res.content
console.log(`datasetQuerySegments`, res)
// this.form.knowledgeContent = content
})
}
},
created() {
this._getTaskDetail()
this._getSplitResultPreview()
}
}
</script>
@@ -35,7 +85,7 @@ export default {
<el-row>
<el-col :span="24">
<el-form-item label="知识库">
<el-input v-model="form.docTypeName" placeholder="" disabled></el-input>
<el-input v-model="form.datasetName" placeholder="" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
@@ -48,7 +98,7 @@ export default {
<el-row>
<el-col :span="12">
<el-form-item label="上传用户">
<el-input v-model="form.createdUser" placeholder="" disabled></el-input>
<el-input v-model="form.userName" placeholder="" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -61,39 +111,27 @@ export default {
<el-row>
<el-col :span="12">
<el-form-item label="任务号">
<el-input v-model="form.taskCode" placeholder="" disabled></el-input>
<el-input v-model="form.id" placeholder="" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="分段模式">
<el-input v-model="form.segmentMode" placeholder="" disabled></el-input>
<el-input v-model="form.segmentedMode" placeholder="null" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="拆分模式">
<el-input v-model="form.splitMode" placeholder="" disabled></el-input>
<el-form-item label="高级模式">
<el-input v-model="useMineru" placeholder="" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<el-form-item label="任务状态">
<el-input v-model="form.documentStatus" placeholder=""></el-input>
<el-input v-model="documentStatus" placeholder="" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-button
type="primary"
size="small"
@click="
() => {
form.documentStatus = form.documentStatus === 1 ? 2 : 1
}
"
>switch status</el-button
>
</el-col>
</el-row>
<el-row>
@@ -107,14 +145,15 @@ export default {
<el-row>
<el-col :span="12">
<el-form-item label="知识内容">
<el-input type="textarea" :rows="8" v-model="form.knowledgeContent"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="原文内容">
<el-input type="textarea" :rows="8" v-model="form.originalContent"></el-input>
</el-form-item>
<el-col :span="24">
<el-form-item label="原文内容" />
<iframe id="iframe"
:src="`${iframeSrc}/pdfjs-dist/web/viewer.html?file=${encodeURIComponent(getPdfUrl({ documentId: form.id }))}`"
class="miner-u el-card is-always-shadow ml20" style="width: 98%; height: 800px;"></iframe>
</el-col>
</el-row>
</el-form>