diff --git a/src/views/rules/Index.vue b/src/views/rules/Index.vue
index c9cfb0a..7f16a41 100644
--- a/src/views/rules/Index.vue
+++ b/src/views/rules/Index.vue
@@ -12,15 +12,20 @@ export default {
// 表格配置项
tableConfig: {
ruleType: {
- 1: '提词规则',
- 2: '知识拆分规则'
+ 1: '知识拆分规则',
+ 2: '知识题词规则'
},
total: 0,
currentPage: 1,
pageSize: 10,
columns: [
{ prop: 'ruleName', key: '规则名称' },
- { prop: 'ruleType', key: '规则类型' },
+ {
+ prop: 'ruleType', key: '规则类型',
+ render: (h, params) => {
+ return h('span', this.tableConfig.ruleType[params.row.ruleType])
+ }
+ },
{ prop: 'createdDate', key: '创建时间' },
{
key: '操作',
@@ -45,7 +50,7 @@ export default {
h(
'el-button',
{
- props: { type: 'text', size: 'mini' },
+ props: { type: 'danger', size: 'mini' },
on: { click: () => this.handleDelete(params.row, params.index) }
},
'删除'
@@ -66,7 +71,6 @@ export default {
tableData: [],
// 查询表单
form: {
- query: true,
pickerOptions: void 0,
ruleType: '',
ruleName: '',
@@ -87,61 +91,20 @@ export default {
Info
},
computed: {
- // 当前的分页数据
- currentTableDate() {
- let filteredData
- // 过滤 table 列表,如果 form 相关项是空的,就不过滤
- if (this.form.query) {
- // 过滤 ruleType
- const map = {
- 1: '知识拆分规则',
- 2: '提词规则'
- }
- filteredData = this.tableData.filter(item => {
- if (!this.form.ruleType) return true
- return map[item.ruleType] === this.form.ruleType
- })
+ // 处理后的日期内容, 只保留 年月日, 日期格式是 年-月-日
+ formattedDate() {
+ // 如果没有日期,返回空字符串
+ if (!this.form.createdDate.length) return ''
- // 过滤 ruleName
- filteredData = filteredData.filter(item => {
- if (!this.form.ruleName) return true
- return item.ruleName === this.form.ruleName
- })
-
- // 过滤 createdDate
- filteredData = filteredData.filter(item => {
- if (!this.form.createdDate.length) return true
- return item.createdDate >= this.form.createdDate[0] && item.createdDate <= this.form.createdDate[1]
- })
- } else {
- filteredData = this.tableData
- }
- return filteredData
- },
-
- // 获取表格数据
- getCurrentTableData() {
- // 需要处理 规则类型, 因为规则类型都是数字,需要转换成中文
- return this.currentTableDate.map(item => ({
- ...item,
- ruleType: item.ruleType === 1 ? '知识拆分规则' : '提词规则'
- }))
- },
-
- // 查询表单的 ruleTypeOptions
- ruleTypeOptions() {
- // 去重所有 ruleType, 然后映射成 option
- return [...new Set(this.tableData.map(item => item.ruleType))].map(type => this.tableConfig.ruleType[type])
- },
- // 查询表单的 ruleNameOptions
- ruleNameOptions() {
- const res = [...new Set(this.tableData.map(item => item.ruleName))]
- return res
+ return this.form.createdDate.map(date => {
+ return `${new Date(date).getFullYear()}-${new Date(date).getMonth() + 1}-${new Date(date).getDate()}`
+ })
}
},
watch: {
form: {
- handler() {},
+ handler() {
+ },
deep: true
}
},
@@ -149,11 +112,22 @@ export default {
this.getTableData()
},
methods: {
+ // 反转 ruleType ,获取 key 值
+ reverseRuleType(value) {
+ // const keys = Object.keys(this.tableConfig.ruleType)
+ const values = Object.values(this.tableConfig.ruleType)
+ const res = values.indexOf(value) + 1
+ // 如果没有找到,默认查询所有内容
+ if (res === -1) return ''
+ return res
+ },
getTableData() {
const payload = {
page: this.tableConfig.currentPage,
- pageSize: this.tableConfig.pageSize
- // docId: ''
+ pageSize: this.tableConfig.pageSize,
+ ruleType: this.form.ruleType,
+ ruleNameLike: this.form.ruleName,
+ times: this.formattedDate
}
getRuleList(payload).then(res => {
@@ -181,35 +155,45 @@ export default {
this.dialogOptions.currentRow = row
},
// 处理修改规则
- handleEdit(row, index) {
+ handleEdit(row) {
this.dialogOptions.title = '修改规则'
- this.dialogOptions.currentComponent = row.ruleType === '知识拆分规则' ? 'EditSplitRule' : 'EditPromptRule'
+ this.dialogOptions.currentComponent = row.ruleType === 1 ? 'EditSplitRule' : 'EditPromptRule'
this.dialogOptions.visible = true
this.dialogOptions.currentRow = row
},
// 处理删除规则
handleDelete(row, index) {
- deleteRule([row.id])
- .then(() => {
- // 删除当前行
- this.tableData.splice(index, 1)
- this.getTableData()
- })
- .catch(err => {
- this.$notify.error({
- title: '删除失败',
- message: h('i', { style: 'color: teal' }, '删除时出现错误,稍后再试' + err)
+ this.$confirm('此操作将永久删除该规则, 是否继续?', '提示', {
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(() => {
+ deleteRule([row.id])
+ .then(() => {
+ // 删除当前行
+ this.tableData.splice(index, 1)
+ this.getTableData()
+ this.$notify.success({
+ title: '删除成功',
+ message: '删除成功',
+ duration: 2000
+ })
})
- })
+ .catch(err => {
+ this.$notify.error({
+ title: '删除失败',
+ message: h('i', { style: 'color: teal' }, '删除时出现错误,稍后再试' + err)
+ })
+ })
+ })
},
// 处理查询
handleQuery() {
- this.form.query = true
+ this.getTableData()
},
// 处理重置
handleReset() {
this.form = {
- query: true,
pickerOptions: void 0,
ruleType: '',
ruleName: '',
@@ -242,30 +226,24 @@ export default {
-
+ 全部规则
+
-
-
-
+
-
+
@@ -273,7 +251,7 @@ export default {
-
+ 查询
重置
新增规则
@@ -285,7 +263,7 @@ export default {
-import { datasetsExPages } from '@/api/generatedApi'
+import { datasetsExTaskPages as datasetsExPages, docManageDataset } from '@/api/generatedApi'
import KnowledgeInfo from '@/views/track/views/knowledge-info/Index.vue'
export default {
@@ -10,15 +10,23 @@ export default {
return {
infoDialogVisible: false,
activeForm: {},
- tabList: [],
+ tableData: [],
form: {
- knowledge: '',
- knowledgeName: '',
+ datasetId: '',
+ datasetValue: '',
+ datasetList: [],
+ fileName: '',
uploadUser: '',
documentStatus: '',
taskTime: []
},
tableConfig: {
+
+ uploadStatusType: {
+ '1': '成功',
+ '0': '上传中',
+ '-1': '失败'
+ },
total: 0,
currentPage: 1,
pageSize: 10,
@@ -26,7 +34,13 @@ export default {
{ prop: 'id', key: '任务号', width: '180' },
{ prop: 'datasetName', key: '知识库', width: '180' },
{ prop: 'fileName', key: '知识文件名称' },
- { prop: 'documentStatus', key: '上传状态', width: '100' },
+ {
+ prop: 'documentStatus', key: '上传状态', width: '100',
+ render: (h, params) => {
+ return h('span', this.tableConfig.uploadStatusType[params.row.documentStatus])
+ }
+ },
+ // 上传用户 现在只有 admin . 后面需要自己添加
{ prop: 'userName', key: '上传用户', width: '100' },
{ prop: 'createdDate', key: '上传时间', width: '200' },
{
@@ -49,80 +63,12 @@ export default {
}
},
computed: {
- /**
- * 获取筛选后的列表数据
- */
- getFilterTableData() {
- let filteredList = this.tabList
-
- // 按照顺序进行筛选,先按照知识库进行筛选
- filteredList = this.form.knowledge
- ? filteredList.filter(item => {
- return item.datasetName === this.form.knowledge
- })
- : filteredList
-
- // 按照知识文件名称进行筛选
- filteredList = this.form.knowledgeName
- ? filteredList.filter(item => {
- return item.fileName === this.form.knowledgeName
- })
- : filteredList
-
- // 按照上传用户进行筛选
- filteredList = this.form.uploadUser
- ? filteredList.filter(item => {
- return item.userName === this.form.uploadUser
- })
- : filteredList
-
- // 按照任务状态进行筛选
- filteredList = this.form.documentStatus
- ? filteredList.filter(item => {
- return item.documentStatus === this.form.documentStatus
- })
- : filteredList
-
- // 处理的状态格式化
- filteredList = filteredList.map(item => {
- if (item.documentStatus === 0 || item.documentStatus === '上传中') {
- item.documentStatus = '上传中'
- } else if (item.documentStatus === 1 || item.documentStatus === '成功') {
- item.documentStatus = '成功'
- } else if (item.documentStatus === -1 || item.documentStatus === '失败') {
- item.documentStatus = '失败'
- }
- return item
- })
-
- // 按照任务时间进行筛选
- 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()
- )
- })
- : filteredList
-
- // 默认返回所有列表
- return filteredList
- },
- /**
- * 获取知识库列表
- */
- getKnowledgeList() {
- // 进行去重处理
- const knowledgeList = [...new Set(this.tabList.map(item => item.datasetName))]
- return knowledgeList
- },
/**
* 获取知识文件名称列表
*/
getKnowledgeNameList() {
// 进行去重处理
- const knowledgeNameList = [...new Set(this.tabList.map(item => item.fileName))]
+ const knowledgeNameList = [...new Set(this.tableData.map(item => item.fileName))]
return knowledgeNameList
},
/**
@@ -130,7 +76,7 @@ export default {
*/
getUploadUserList() {
// 进行去重处理
- const uploadUserList = [...new Set(this.tabList.map(item => item.userName))]
+ const uploadUserList = [...new Set(this.tableData.map(item => item.userName))]
return uploadUserList
},
/**
@@ -138,12 +84,37 @@ export default {
*/
getTaskStatusList() {
// 进行去重处理
- const taskStatusList = [...new Set(this.tabList.map(item => item.documentStatus))]
+ const taskStatusList = [...new Set(this.tableData.map(item => item.documentStatus))]
return taskStatusList
+ },
+ /**
+ * 格式化上传时间
+ * @returns {string} 格式化后的日期字符串 格式是 年-月-日
+ */
+ formattedDate() {
+ if (!this.form.taskTime || this.form.taskTime.length !== 2) return ''
+
+ return [`${this.form.taskTime[0].getFullYear()}-${this.form.taskTime[0].getMonth() + 1}-${this.form.taskTime[0].getDate()}`, `${this.form.taskTime[1].getFullYear()}-${this.form.taskTime[1].getMonth() + 1}-${this.form.taskTime[1].getDate()}`]
}
},
methods: {
+ // 搜索
+ handleSearch() {
+ // 重置页码
+ this.tableConfig.currentPage = 1
+
+ this.getTableData()
+ },
+ // 反转 uploadStatusType ,获取 key 值
+ reverseUploadStatusType(value) {
+ const values = Object.values(this.tableConfig.uploadStatusType)
+ const res = values.indexOf(value) + 1
+ // 如果没有找到,默认查询所有内容
+ if (res === -1) return ''
+ return res
+ },
handleCurrentChange(current) {
+ // 重置页码
this.tableConfig.currentPage = current
this.getTableData()
},
@@ -153,26 +124,60 @@ export default {
},
getTableData() {
const payload = {
+ // 分页参数
page: this.tableConfig.currentPage,
pageSize: this.tableConfig.pageSize,
- docId: ''
+ // // 知识库名称
+ datasetId: this.form.datasetId,
+ // // 知识文件名称
+ // fileName: this.form.knowledgeName,
+ // // 上传用户
+ // userName: this.form.uploadUser,
+ // // 上传状态
+ // documentStatus: this.form.documentStatus,
+ // // 任务时间
+ times: this.formattedDate,
+ fileNameLike: this.form.fileName,
+ documentStatus: this.form.documentStatus
}
datasetsExPages(payload).then(res => {
- this.tabList = res.content.content.list ? res.content.content.list : []
+ this.tableData = res.content.content.list ? res.content.content.list : []
this.tableConfig.total = res.content.content.total
- console.log(`res:`, res.content.content.list)
})
},
+ // 远程搜索知识库内容
+ remoteSearchDataset(query) {
+ this.form.datasetValue = query
+
+ if (query !== '') {
+ this.getKnowledgeList()
+ }
+ },
+ // 获取知识库列表
+ getKnowledgeList() {
+ docManageDataset({
+ // 对搜索的内容不做限制,主要获取所有的内容, 后续再添加参数
+ // page: this.tableConfig.currentPage,
+ // pageSize: this.tableConfig.pageSize,
+ nameLike: this.form.datasetValue
+ }).then(res => {
+ this.form.datasetList = res.content.content ? res.content.content : []
+ })
+ },
+ // 重置 form 表单状态
handleReset() {
this.form = {
- knowledge: '',
- knowledgeName: '',
+ datasetId: '',
+ datasetValue: '',
+ datasetList: [],
+ fileName: '',
uploadUser: '',
documentStatus: '',
taskTime: []
}
},
+ // 处理查看详情
handleActiveInfo(scope) {
this.infoDialogVisible = true
this.activeForm = scope.row
@@ -187,33 +192,30 @@ export default {
-
-
-
+
+
+
+
-
-
-
+
+ 全部上传用户
@@ -222,7 +224,9 @@ export default {
-
+
+
@@ -240,6 +244,9 @@ export default {
+
+ 搜索
+
重置筛选
@@ -249,7 +256,7 @@ export default {
-
+
-
-