|
@@ -3,78 +3,87 @@
|
|
|
<div class="flex items-center">
|
|
|
<div class="bm-main-box-title">文档</div>
|
|
|
</div>
|
|
|
- <CzrContent
|
|
|
- v-model:tableHead="state.query.tableHead"
|
|
|
- @handleReset="onReset"
|
|
|
- @handleSearch="onSearch"
|
|
|
- v-model:full="state.query.isFull"
|
|
|
- >
|
|
|
- <template #tableTitle>
|
|
|
- <div class="flex gap-[var(--czr-gap)]">
|
|
|
- <CzrButton type="add" title="添加文件" @click="$router.push({
|
|
|
+ <template v-if="!state.stage.show">
|
|
|
+ <CzrContent
|
|
|
+ v-model:tableHead="state.query.tableHead"
|
|
|
+ @handleReset="onReset"
|
|
|
+ @handleSearch="onSearch"
|
|
|
+ v-model:full="state.query.isFull"
|
|
|
+ >
|
|
|
+ <template #tableTitle>
|
|
|
+ <div class="flex gap-[var(--czr-gap)]">
|
|
|
+ <CzrButton type="add" title="添加文件" @click="$router.push({
|
|
|
name: '18e6009c-a72c-4359-864b-e7725fccca69',
|
|
|
params: {
|
|
|
id: ID
|
|
|
}
|
|
|
})"/>
|
|
|
- <CzrButton title="迁移" icon="move" @click="onKnowledge()"/>
|
|
|
- <CzrButton title="归档" icon="cloud"/>
|
|
|
- <CzrButton type="del" title="删除" icon="czr_del" @click="onDel()"/>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- <template #buttons>
|
|
|
- <div class="flex items-center gap-[var(--czr-gap)]">
|
|
|
- <CzrForm class="bm-filter" label-width="0px" @handleEnter="onSearch">
|
|
|
- <CzrFormColumn
|
|
|
- width="6.68rem"
|
|
|
- class="__czr-table-form-column"
|
|
|
- :span="24"
|
|
|
- label-width="0px"
|
|
|
- v-model:param="state.query.form.tag"
|
|
|
- link="select"
|
|
|
- :options="DictionaryStore.knowledgeTags.list"
|
|
|
- placeholder="审核状态"
|
|
|
- />
|
|
|
- <CzrFormColumn
|
|
|
- width="15.63rem"
|
|
|
- class="__czr-table-form-column"
|
|
|
- :span="24"
|
|
|
- label-width="0px"
|
|
|
- v-model:param="state.text"
|
|
|
- placeholder="按文档名称搜索"
|
|
|
- :prefix-icon="Search"
|
|
|
- />
|
|
|
- </CzrForm>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- <template #table>
|
|
|
- <CzrTable
|
|
|
- v-loading="state.query.loading"
|
|
|
- ref="ref_cusTable"
|
|
|
- :data="state.query.result.data"
|
|
|
- :head="state.query.head"
|
|
|
- :total="state.query.result.total"
|
|
|
- :page="state.query.page.pageNum"
|
|
|
- :pageSize="state.query.page.pageSize"
|
|
|
- @handlePage="onPage"
|
|
|
- v-model:selected="state.query.selected"
|
|
|
- >
|
|
|
- <template #importAndExportType-column-value="{ scope }">
|
|
|
-<!-- <dict-tag :options="import_and_export_type" :value="scope.row.importAndExportType"/>-->
|
|
|
- </template>
|
|
|
- <template #caozuo-column-value="{ scope }">
|
|
|
- <div class="__czr-table-operations">
|
|
|
- <CzrButton type="table" title="重命名" @click="onRename(scope.row)"/>
|
|
|
- <CzrButton type="table" title="迁移" @click="onKnowledge(scope.row)"/>
|
|
|
- <CzrButton type="table" title="归档"/>
|
|
|
- <CzrButton type="table-del" @click="onDel(scope.row)"/>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </CzrTable>
|
|
|
- </template>
|
|
|
- </CzrContent>
|
|
|
- <renameCom v-model:show="state.rename.show" :transfer="state.rename.transfer" @refresh="onSearch"/>
|
|
|
- <knowledgeSelectCom v-model:show="state.knowledge.show" :transfer="state.knowledge.transfer" @refresh="onSearch"/>
|
|
|
+ <CzrButton type="add" title="添加分段" @click="state.detail.show = true"/>
|
|
|
+ <CzrButton title="迁移" icon="move" @click="onKnowledge()"/>
|
|
|
+ <CzrButton title="归档" icon="cloud"/>
|
|
|
+ <CzrButton type="del" title="删除" icon="czr_del" @click="onDel()"/>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template #buttons>
|
|
|
+ <div class="flex items-center gap-[var(--czr-gap)]">
|
|
|
+ <CzrForm class="bm-filter" label-width="0px" @handleEnter="onSearch">
|
|
|
+ <CzrFormColumn
|
|
|
+ width="6.68rem"
|
|
|
+ class="__czr-table-form-column"
|
|
|
+ :span="24"
|
|
|
+ label-width="0px"
|
|
|
+ v-model:param="state.query.form.tag"
|
|
|
+ link="select"
|
|
|
+ :options="DictionaryStore.knowledgeTags.list"
|
|
|
+ placeholder="审核状态"
|
|
|
+ />
|
|
|
+ <CzrFormColumn
|
|
|
+ width="15.63rem"
|
|
|
+ class="__czr-table-form-column"
|
|
|
+ :span="24"
|
|
|
+ label-width="0px"
|
|
|
+ v-model:param="state.text"
|
|
|
+ placeholder="按文档名称搜索"
|
|
|
+ :prefix-icon="Search"
|
|
|
+ />
|
|
|
+ </CzrForm>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template #table>
|
|
|
+ <CzrTable
|
|
|
+ v-loading="state.query.loading"
|
|
|
+ ref="ref_cusTable"
|
|
|
+ :data="state.query.result.data"
|
|
|
+ :head="state.query.head"
|
|
|
+ :total="state.query.result.total"
|
|
|
+ :page="state.query.page.pageNum"
|
|
|
+ :pageSize="state.query.page.pageSize"
|
|
|
+ @handlePage="onPage"
|
|
|
+ v-model:selected="state.query.selected"
|
|
|
+ >
|
|
|
+ <template #name-column-value="{ scope }">
|
|
|
+ <div class="flex justify-center">
|
|
|
+ <CzrButton type="table" :title="scope.row.p1" @click="onStage(scope.row)"/>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template #caozuo-column-value="{ scope }">
|
|
|
+ <div class="__czr-table-operations">
|
|
|
+ <CzrButton type="table" title="重命名" @click="onRename(scope.row)"/>
|
|
|
+ <CzrButton type="table" title="迁移" @click="onKnowledge(scope.row)"/>
|
|
|
+ <CzrButton type="table" title="归档"/>
|
|
|
+ <CzrButton type="table-del" @click="onDel(scope.row)"/>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </CzrTable>
|
|
|
+ </template>
|
|
|
+ </CzrContent>
|
|
|
+ <detailCom v-model:show="state.detail.show" :transfer="state.detail.transfer" @refresh="onSearch"/>
|
|
|
+ <renameCom v-model:show="state.rename.show" :transfer="state.rename.transfer" @refresh="onSearch"/>
|
|
|
+ <knowledgeSelectCom v-model:show="state.knowledgeSelect.show" :transfer="state.knowledgeSelect.transfer" @refresh="onSearch"/>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <stageIndexCom v-model:show="state.stage.show" :document="state.stage.document"/>
|
|
|
+ </template>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -84,12 +93,14 @@ import { Search } from '@element-plus/icons-vue'
|
|
|
import {debounce} from "lodash";
|
|
|
import {useDialogStore, useDictionaryStore} from "@/stores";
|
|
|
import {ElMessage} from "element-plus";
|
|
|
+import detailCom from './detail.vue'
|
|
|
import renameCom from './rename.vue'
|
|
|
import knowledgeSelectCom from './knowledge-select.vue'
|
|
|
+import stageIndexCom from './stage-index.vue'
|
|
|
|
|
|
const DialogStore = useDialogStore();
|
|
|
const DictionaryStore = useDictionaryStore();
|
|
|
-const emits = defineEmits([])
|
|
|
+const emit = defineEmits([])
|
|
|
const props = defineProps({
|
|
|
knowledge: <any>{}
|
|
|
})
|
|
@@ -100,7 +111,7 @@ const state: any = reactive({
|
|
|
query: {
|
|
|
loading: false,
|
|
|
head: [
|
|
|
- {value: 'p1', label: '文件名称', show: true},
|
|
|
+ {value: 'name', label: '文件名称', show: true},
|
|
|
{value: 'p1', label: '字符数', show: true},
|
|
|
{value: 'p1', label: '状态', show: true},
|
|
|
{value: 'p1', label: '召回次数', show: true},
|
|
@@ -123,14 +134,24 @@ const state: any = reactive({
|
|
|
},
|
|
|
selected: []
|
|
|
},
|
|
|
+ detail: {
|
|
|
+ show: false,
|
|
|
+ transfer: {
|
|
|
+ ID: ID
|
|
|
+ }
|
|
|
+ },
|
|
|
rename: {
|
|
|
show: false,
|
|
|
transfer: {}
|
|
|
},
|
|
|
- knowledge: {
|
|
|
+ knowledgeSelect: {
|
|
|
show: false,
|
|
|
transfer: {}
|
|
|
},
|
|
|
+ stage: {
|
|
|
+ show: false,
|
|
|
+ document: {}
|
|
|
+ },
|
|
|
})
|
|
|
const setText = debounce((v) => {
|
|
|
state.query.form.name = v
|
|
@@ -232,23 +253,27 @@ const onRename = (row) => {
|
|
|
}
|
|
|
const onKnowledge = (row: any = null) => {
|
|
|
if (row) {
|
|
|
- state.knowledge.transfer = {
|
|
|
+ state.knowledgeSelect.transfer = {
|
|
|
row: JSON.parse(JSON.stringify(row)),
|
|
|
type: 'text',
|
|
|
}
|
|
|
- state.knowledge.show = true
|
|
|
+ state.knowledgeSelect.show = true
|
|
|
} else {
|
|
|
if (state.query.selected.length === 0) {
|
|
|
ElMessage.warning('请至少选择一条记录!')
|
|
|
return
|
|
|
}
|
|
|
- state.knowledge.transfer = {
|
|
|
+ state.knowledgeSelect.transfer = {
|
|
|
list: [...state.query.selected],
|
|
|
type: 'text',
|
|
|
}
|
|
|
- state.knowledge.show = true
|
|
|
+ state.knowledgeSelect.show = true
|
|
|
}
|
|
|
}
|
|
|
+const onStage = (row) => {
|
|
|
+ state.stage.document = JSON.parse(JSON.stringify(row))
|
|
|
+ state.stage.show = true
|
|
|
+}
|
|
|
onMounted(() => {
|
|
|
initDictionary()
|
|
|
onReset()
|