文件编辑相关 上传 获取列表 下载

This commit is contained in:
XaoLi717 2024-09-23 11:33:06 +08:00
parent f4a887c4a1
commit af3e24ec48
4 changed files with 71 additions and 81 deletions

View File

@ -14,13 +14,12 @@ export interface onlyofVO {
// 文件编辑 API
export const onlyofApi = {
// 文件编辑
getonlyofedit: async (editvo) => {
console.log("getonlyofedit",editvo)
return await request.get({ url: `/only/onlyof/edit`,params: editvo})
getOnlyOfList: async () => {
console.log('getOnlyOfList',await request.get({ url: `/only/onlyof/filelist`}))
return await request.get({ url: `/only/onlyof/filelist`})
},
// 新增文件编辑
uploadFile: async (data) => {
console.log("4567890",data)
return await request.post({ url: `/only/onlyof/update`, data })
},
// 查询文件编辑分页

View File

@ -5,7 +5,7 @@
<el-row :gutter="20">
<el-col :span="4">
<input type="file" ref="myfile"/>
<el-button @click="upload" type="success" size="mini" icon="el-icon-upload2">上传文件</el-button>
<el-button @click="upload" type="success" size="small" icon="el-icon-upload2">上传文件</el-button>
</el-col>
</el-row>
<!-- 用户列表区域-->
@ -13,7 +13,7 @@
<!-- stripe: 斑马条纹
border边框-->
<el-table-column type="index" label="#"/>
<el-table-column prop="file_name" label="文件名称"/>
<el-table-column prop="fileName" label="文件名称"/>
<el-table-column label="操作">
<template v-slot="scope">
<el-button
@ -48,7 +48,7 @@
import { ref, onMounted } from 'vue';
import axios from 'axios';
import { getAccessToken } from '@/utils/auth'
import {onlyofApi} from "@/api/only/only";
// import {onlyofApi} from "@/api/only/only";
//
const fileList = ref([]);
@ -56,10 +56,10 @@ const myfile = ref(null);
//
const getFileList = async () => {
console.log("123456789")
const token = getAccessToken();
try {
const response = await axios.get('http://192.168.1.3:20053/filelist');
console.log("response",response)
const response = await axios.get(`http://192.168.1.3:48080/admin-api/only/onlyof/filelist?token=${token}`);
// const response = await onlyofApi.getOnlyOfList();
fileList.value = response.data;
} catch (error) {
console.error('Failed to fetch file list:', error);
@ -70,20 +70,15 @@ const getFileList = async () => {
const upload = async () => {
const fileInput = myfile.value;
const file = fileInput.files[0];
console.log("222",file)
const formData = new FormData();
const token = getAccessToken();
console.log("token",token)
const configs = {
headers: { 'Authorization': `Bearer ${token}`,'Content-Type': 'multipart/form-data' }
}
formData.append('file', file);
console.log("6789",formData)
try {
// const response = await axios.post('http://192.168.1.3:48080/upload', formData, configs);
const response = await axios.post('http://192.168.1.3:48080/admin-api/only/onlyof/update', formData, configs);
// const response = await onlyofApi.uploadFile(file)
console.log(response);
} catch (error) {
console.error('Upload failed:', error);
@ -98,32 +93,28 @@ const editvo = ({
//
const edit = async (row) => {
const token = getAccessToken();
console.log("row", token)
editvo.name=row.file_name
editvo.name=row.fileName
editvo.username="admin"
editvo.userid="1"
console.log("editvo", editvo)
// const response = await onlyofApi.getonlyofedit(editvo);
window.open(`http://192.168.1.3:48080/admin-api/only/onlyof/edit?name=${row.file_name}&userName=admin&userId=1&token=${token} `);
window.open(`http://192.168.1.3:48080/admin-api/only/onlyof/edit?name=${row.fileName}&userName=admin&userId=1&token=${token}`);
};
//
const review = (row) => {
// Implement review functionality here
const review = () => {
};
//
const download = async (row) => {
try {
const response = await axios.get(`http://192.168.1.3:20053/editStatus?name=${row.file_name}`);
const token = getAccessToken();
const response = await axios.get(`http://192.168.1.3:48080/admin-api/only/onlyof/editStatus?name=${row.fileName}&token=${token}`);
if (response.data.error === 0) {
alert('文档正在编辑5秒后开始下载最新版');
setTimeout(() => {
window.location.href = `http://192.168.1.3:20053/download?name=v1${row.file_name}`;
window.location.href = `http://192.168.1.3:48080/admin-api/only/onlyof/download?name=v1${row.fileName}&token=${token}`;
}, 5000);
} else {
alert('文档未编辑,开始下载!');
window.location.href = `http://192.168.0.58:20053/download?name=${row.file_name}`;
window.location.href = `http://192.168.1.3:48080/admin-api/only/onlyof/download?name=${row.fileName}&token=${token}`;
}
} catch (error) {
console.error('Download failed:', error);

View File

@ -17,55 +17,55 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="文件大小" prop="fileSize">
<el-input
v-model="queryParams.fileSize"
placeholder="请输入文件大小"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="文件类型" prop="fileType">
<el-select
v-model="queryParams.fileType"
placeholder="请选择文件类型"
clearable
class="!w-240px"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="文件路径" prop="filePath">
<el-input
v-model="queryParams.filePath"
placeholder="请输入文件路径"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="更新时间" prop="uploadDate">
<el-date-picker
v-model="queryParams.uploadDate"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="知识状态0正常 1停用" prop="status">
<el-select
v-model="queryParams.status"
placeholder="请选择知识状态0正常 1停用"
clearable
class="!w-240px"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<!-- <el-form-item label="文件大小" prop="fileSize">-->
<!-- <el-input-->
<!-- v-model="queryParams.fileSize"-->
<!-- placeholder="请输入文件大小"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery"-->
<!-- class="!w-240px"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件类型" prop="fileType">-->
<!-- <el-select-->
<!-- v-model="queryParams.fileType"-->
<!-- placeholder="请选择文件类型"-->
<!-- clearable-->
<!-- class="!w-240px"-->
<!-- >-->
<!-- <el-option label="请选择字典生成" value="" />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件路径" prop="filePath">-->
<!-- <el-input-->
<!-- v-model="queryParams.filePath"-->
<!-- placeholder="请输入文件路径"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery"-->
<!-- class="!w-240px"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="更新时间" prop="uploadDate">-->
<!-- <el-date-picker-->
<!-- v-model="queryParams.uploadDate"-->
<!-- value-format="YYYY-MM-DD HH:mm:ss"-->
<!-- type="daterange"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"-->
<!-- class="!w-240px"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="知识状态0正常 1停用" prop="status">-->
<!-- <el-select-->
<!-- v-model="queryParams.status"-->
<!-- placeholder="请选择知识状态0正常 1停用"-->
<!-- clearable-->
<!-- class="!w-240px"-->
<!-- >-->
<!-- <el-option label="请选择字典生成" value="" />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="创建时间" prop="createTime">
<el-date-picker
v-model="queryParams.createTime"
@ -104,13 +104,13 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="id" align="center" prop="id" />
<!-- <el-table-column label="id" align="center" prop="id" />-->
<el-table-column label="文件名" align="center" prop="fileName" />
<el-table-column label="文件大小" align="center" prop="fileSize" />
<el-table-column label="文件类型" align="center" prop="fileType" />
<el-table-column label="文件路径" align="center" prop="filePath" />
<el-table-column label="更新时间" align="center" prop="uploadDate" />
<el-table-column label="知识状态0正常 1停用" align="center" prop="status" />
<!-- <el-table-column label="更新时间" align="center" prop="uploadDate" />-->
<el-table-column label="知识状态" align="center" prop="status" />
<el-table-column
label="创建时间"
align="center"
@ -243,4 +243,4 @@ const handleExport = async () => {
onMounted(() => {
getList()
})
</script>
</script>

View File

@ -29,7 +29,7 @@
placeholder="选择更新时间"
/>
</el-form-item>
<el-form-item label="知识状态0正常 1停用" prop="status">
<el-form-item label="知识状态" prop="status">
<el-radio-group v-model="formData.status">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
@ -124,4 +124,4 @@ const resetForm = () => {
}
formRef.value?.resetFields()
}
</script>
</script>