|
|
@@ -11,7 +11,7 @@
|
|
|
</el-icon>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-icon style="font-size: 24px;">
|
|
|
+ <el-icon style="font-size: 24px;" @click="createNewMenu">
|
|
|
<Plus />
|
|
|
</el-icon>
|
|
|
</div>
|
|
|
@@ -20,21 +20,23 @@
|
|
|
<div
|
|
|
style="display: flex;justify-content: flex-start;align-items: flex-start;flex-wrap: wrap;height: 540px;">
|
|
|
<!-- v-for盒子 -->
|
|
|
- <div class="setBox" @click="changeFile">
|
|
|
- <el-dropdown trigger="click" class="selectChe">
|
|
|
- <span class="el-dropdown-link">
|
|
|
- ...
|
|
|
- </span>
|
|
|
- <template #dropdown>
|
|
|
- <el-dropdown-menu>
|
|
|
- <el-dropdown-item>重命名</el-dropdown-item>
|
|
|
- <el-dropdown-item>删除</el-dropdown-item>
|
|
|
- </el-dropdown-menu>
|
|
|
- </template>
|
|
|
- </el-dropdown>
|
|
|
- <img src="../../assets/images/fileStyle.png" style="width: 72px;height: 72px;">
|
|
|
- <p>xxx文件</p>
|
|
|
- </div>
|
|
|
+ <template v-for="(item, index) in fileMenu">
|
|
|
+ <div class="setBox" @click="changeFile">
|
|
|
+ <el-dropdown trigger="click" class="selectChe">
|
|
|
+ <span class="el-dropdown-link">
|
|
|
+ ...
|
|
|
+ </span>
|
|
|
+ <template #dropdown>
|
|
|
+ <el-dropdown-menu>
|
|
|
+ <el-dropdown-item>重命名</el-dropdown-item>
|
|
|
+ <el-dropdown-item @click="delBoser(item)">删除</el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </template>
|
|
|
+ </el-dropdown>
|
|
|
+ <img src="../../assets/images/fileStyle.png" style="width: 72px;height: 72px;">
|
|
|
+ <p>{{ item.dirName }}</p>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
</div>
|
|
|
<div>
|
|
|
<p>
|
|
|
@@ -100,6 +102,11 @@
|
|
|
</span>
|
|
|
<template #dropdown>
|
|
|
<el-dropdown-menu>
|
|
|
+ <el-dropdown-item @click="fileUpload">
|
|
|
+ <img src="../../assets/images/file.png" alt="">
|
|
|
+ <span id="uploadButton">上传</span>
|
|
|
+ <input id="fileInput" type="file" style="display: none;">
|
|
|
+ </el-dropdown-item>
|
|
|
<template v-for="(item, index) in arrorMenu">
|
|
|
<el-dropdown-item>
|
|
|
<img :src="item.img" alt="">
|
|
|
@@ -152,16 +159,15 @@
|
|
|
<el-collapse v-model="files" accordion class="collapse">
|
|
|
<el-collapse-item title="文件" name="2" class="">
|
|
|
<el-table :data="fileList" style="width: 100%" @row-click="handleRowClick">
|
|
|
- <el-table-column label="Image" width="100">
|
|
|
+ <!-- <el-table-column label="Image" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
- <!-- 插入固定图片 -->
|
|
|
- <span>1</span>
|
|
|
<img :src="fileBox" alt="" />
|
|
|
</template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="date" label="Date" width="180" />
|
|
|
- <el-table-column prop="name" label="Name" width="180" />
|
|
|
- <el-table-column prop="address" label="Address" />
|
|
|
+ </el-table-column> -->
|
|
|
+ <el-table-column prop="fileName" label="名称" width="180" />
|
|
|
+ <el-table-column prop="createTime" label="时间" width="180" />
|
|
|
+ <el-table-column prop="fileType" label="类型" />
|
|
|
+ <el-table-column prop="fileSize" label="大小" />
|
|
|
</el-table>
|
|
|
<div class="setCli" v-if="cliCC">
|
|
|
<template v-for="(item, index) in mouseCli">
|
|
|
@@ -225,6 +231,74 @@
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
+ <!-- 新增中栏下方菜单弹窗 -->
|
|
|
+ <div>
|
|
|
+ <el-dialog v-model="addBoser" title="Tips" width="30%">
|
|
|
+ <el-form :model="boserForm" label-width="120px">
|
|
|
+ <el-form-item label="空间id">
|
|
|
+ <el-input v-model="boserForm.spaceId" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="目录类型">
|
|
|
+ <el-input v-model="boserForm.dirType" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="目录权限">
|
|
|
+ <el-input v-model="boserForm.dirPower" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="目录名称">
|
|
|
+ <el-input v-model="boserForm.dirName" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="父目录id">
|
|
|
+ <el-input v-model="boserForm.parentId" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="备注">
|
|
|
+ <el-input v-model="boserForm.remark" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <template #footer>
|
|
|
+ <span class="dialog-footer">
|
|
|
+ <el-button @click="addBoser = false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="sureAddBoser">
|
|
|
+ 确认
|
|
|
+ </el-button>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <el-dialog v-model="addFile" title="Tips" width="30%">
|
|
|
+ <el-form :model="fileForm" label-width="120px">
|
|
|
+ <el-form-item label="空间id">
|
|
|
+ <el-input v-model="fileForm.spaceId" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="目录id">
|
|
|
+ <el-input v-model="fileForm.dirId" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="文件名称">
|
|
|
+ <el-input v-model="fileForm.fileName" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="文件id">
|
|
|
+ <el-input v-model="fileForm.fileId" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="文件大小">
|
|
|
+ <el-input v-model="fileForm.fileSize" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="文件类型">
|
|
|
+ <el-input v-model="fileForm.fileType" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="备注">
|
|
|
+ <el-input v-model="fileForm.remark" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <template #footer>
|
|
|
+ <span class="dialog-footer">
|
|
|
+ <el-button @click="addFile = false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="sureAddFile">
|
|
|
+ 确认
|
|
|
+ </el-button>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
@@ -233,6 +307,7 @@
|
|
|
import { ref } from 'vue'
|
|
|
import myfile from '../../api/myfile/myfile'
|
|
|
import space from '../../api/space/space'
|
|
|
+import documents from '../../api/document/document'
|
|
|
import { Search } from '@element-plus/icons-vue'
|
|
|
import copy from '../../assets/images/copy.png'
|
|
|
import clipboard from '../../assets/images/clipboard.png'
|
|
|
@@ -257,6 +332,7 @@ import history from '../../assets/images/history.png'
|
|
|
import fileBox from '../../assets/images/fileBox.png'
|
|
|
import user from '../../assets/images/user.png'
|
|
|
import archiveTray from '../../assets/images/archiveTray.png'
|
|
|
+import { ElMessage } from 'element-plus'
|
|
|
export default {
|
|
|
setup() {
|
|
|
let searchFire = ref('')
|
|
|
@@ -269,9 +345,29 @@ export default {
|
|
|
let askTalk = ref('')
|
|
|
let cliCC = ref(false)
|
|
|
let transferModal = ref(false)
|
|
|
+ let addBoser = ref(false)
|
|
|
+ let addFile = ref(false)
|
|
|
let anyP = ref(false)
|
|
|
+ let clickRowId = ref("")
|
|
|
let trandata = ref(generateData())
|
|
|
let tranvalue = ref([])
|
|
|
+ let boserForm = ref({
|
|
|
+ spaceId: "",//空间id
|
|
|
+ dirName: "",
|
|
|
+ dirPower: "",
|
|
|
+ dirType: "",
|
|
|
+ parentId: "",
|
|
|
+ remark: ""//备注
|
|
|
+ })
|
|
|
+ let fileForm = ref({
|
|
|
+ dirId: '',
|
|
|
+ fileId: "",
|
|
|
+ fileName: "",
|
|
|
+ fileSize: '',
|
|
|
+ fileType: "",
|
|
|
+ remark: "",
|
|
|
+ spaceId: '',
|
|
|
+ })
|
|
|
let fileList = ref([
|
|
|
{
|
|
|
date: '2016-05-03',
|
|
|
@@ -323,10 +419,10 @@ export default {
|
|
|
},
|
|
|
])
|
|
|
let arrorMenu = ref([
|
|
|
- {
|
|
|
- img: file,
|
|
|
- name: "文件"
|
|
|
- },
|
|
|
+ // {
|
|
|
+ // img: file,
|
|
|
+ // name: "文件"
|
|
|
+ // },
|
|
|
{
|
|
|
img: folder,
|
|
|
name: '文件夹'
|
|
|
@@ -390,9 +486,12 @@ export default {
|
|
|
name: "删除"
|
|
|
}
|
|
|
])
|
|
|
+ let fileMenu = ref([])
|
|
|
function getAll() {
|
|
|
- myfile.get().then(res => {
|
|
|
- console.log(res, 'eee');
|
|
|
+ myfile.getAllFileMenu({}).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ fileList.value = res.rows
|
|
|
+ }
|
|
|
})
|
|
|
}
|
|
|
function changeFile(row) {
|
|
|
@@ -408,6 +507,7 @@ export default {
|
|
|
}
|
|
|
// 文件名表格每一行点击事件
|
|
|
function handleRowClick(row) {
|
|
|
+ clickRowId.value = row.dirId
|
|
|
cliCC.value = true
|
|
|
}
|
|
|
// 申请扩容
|
|
|
@@ -419,6 +519,7 @@ export default {
|
|
|
}
|
|
|
//mouse弹框
|
|
|
function chooseSet(row, num) {
|
|
|
+ console.log(row, '1');
|
|
|
if (row.name == '在线编辑' || row.name == '协作') {
|
|
|
cliCC.value = true
|
|
|
} else {
|
|
|
@@ -434,6 +535,11 @@ export default {
|
|
|
} else {
|
|
|
anyP.value = false
|
|
|
}
|
|
|
+ if (row.name == '删除') {
|
|
|
+ myfile.delMenu(clickRowId.value).then(res => {
|
|
|
+ console.log(res, 'sss');
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
function chooseSet1() {
|
|
|
transferModal.value = true
|
|
|
@@ -463,11 +569,108 @@ export default {
|
|
|
function filterMethod(query, item) {
|
|
|
return item.initial.toLowerCase().includes(query.toLowerCase())
|
|
|
}
|
|
|
- function getSpace(){
|
|
|
- space.getSpaceOut({}).then(res=>{
|
|
|
- console.log(res,'111');
|
|
|
+ function getSpace() {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ function createNewMenu() {
|
|
|
+ addBoser.value = true
|
|
|
+ }
|
|
|
+ // 新增中栏下方数据
|
|
|
+ function sureAddBoser() {
|
|
|
+ documents.addDocument({
|
|
|
+ "dirName": boserForm.value.dirName,
|
|
|
+ "dirRole": boserForm.value.dirPower,
|
|
|
+ "dirType": boserForm.value.dirType,
|
|
|
+ "parentId": boserForm.value.parentId,
|
|
|
+ "remark": boserForm.value.remark,
|
|
|
+ "spaceId": boserForm.value.spaceId,
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ ElMessage({
|
|
|
+ message: '添加成功',
|
|
|
+ type: 'success',
|
|
|
+ })
|
|
|
+ }
|
|
|
+ addBoser.value = false
|
|
|
+ getAllText()
|
|
|
+ })
|
|
|
+ }
|
|
|
+ // 删除中栏下方数据
|
|
|
+ function delBoser(row) {
|
|
|
+ documents.delDocument(row.dirId).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ ElMessage({
|
|
|
+ message: "删除成功",
|
|
|
+ type: "success"
|
|
|
+ })
|
|
|
+ getAllText()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ function getAllText() {
|
|
|
+ documents.getALLdocument({}).then(res => {
|
|
|
+ fileMenu.value = res.data
|
|
|
})
|
|
|
}
|
|
|
+ function createNewFile() {
|
|
|
+ addFile.value = true
|
|
|
+ }
|
|
|
+ function sureAddFile() {
|
|
|
+ myfile.addNewMenu(
|
|
|
+ {
|
|
|
+ "dirId": fileForm.value.dirId - 0,
|
|
|
+ "fileId": fileForm.value.fileId - 0,
|
|
|
+ "fileName": fileForm.value.fileName,
|
|
|
+ "fileSize": fileForm.value.fileSize,
|
|
|
+ "fileType": fileForm.value.fileType,
|
|
|
+ "remark": fileForm.value.remark,
|
|
|
+ "spaceId": fileForm.value.spaceId - 0,
|
|
|
+ }
|
|
|
+ ).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ ElMessage({
|
|
|
+ message: "新增成功",
|
|
|
+ type: "success"
|
|
|
+ })
|
|
|
+ getAll()
|
|
|
+ addFile.value = false
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: "请检查错误",
|
|
|
+ type: "warning"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ function fileUpload() {
|
|
|
+ const fileInput = document.getElementById('fileInput');
|
|
|
+ const uploadButton = document.getElementById('uploadButton');
|
|
|
+ // 监听按钮点击事件
|
|
|
+ uploadButton.addEventListener('click', function () {
|
|
|
+ // 模拟点击文件上传输入框
|
|
|
+ fileInput.click();
|
|
|
+ });
|
|
|
+
|
|
|
+ // 监听文件选择事件
|
|
|
+ fileInput.addEventListener('change', function () {
|
|
|
+ const files = fileInput.files[0]; // 获取选择的文件
|
|
|
+ myfile.uploadFile({
|
|
|
+ spaceId: 1,
|
|
|
+ dirId: 1,
|
|
|
+ file: files
|
|
|
+ }).then(res => {
|
|
|
+ console.log(res, '222');
|
|
|
+ if(res.code ===200){
|
|
|
+ ElMessage({
|
|
|
+ message:"上传文件成功",
|
|
|
+ type:"success"
|
|
|
+ })
|
|
|
+ getAll()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ });
|
|
|
+ }
|
|
|
return {
|
|
|
folderList,//文件夹的数据
|
|
|
fileList,//文件夹的数据
|
|
|
@@ -513,11 +716,25 @@ export default {
|
|
|
anyP,
|
|
|
chooseSet1,
|
|
|
getSpace,//获取内存空间
|
|
|
+ fileMenu,
|
|
|
+ addBoser,
|
|
|
+ boserForm,
|
|
|
+ createNewMenu,
|
|
|
+ sureAddBoser,
|
|
|
+ delBoser,
|
|
|
+ getAllText,
|
|
|
+ clickRowId,
|
|
|
+ addFile,
|
|
|
+ createNewFile,
|
|
|
+ fileForm,
|
|
|
+ sureAddFile,
|
|
|
+ fileUpload,
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
|
this.getAll();
|
|
|
this.getSpace()
|
|
|
+ this.getAllText()
|
|
|
},
|
|
|
}
|
|
|
</script>
|