|
@@ -37,7 +37,12 @@
|
|
|
</draggable>
|
|
|
</el-tabs> -->
|
|
|
|
|
|
- <el-tabs v-model="clickCollect" class="tabSign" ref="tabs">
|
|
|
+ <el-tabs
|
|
|
+ v-model="clickCollect"
|
|
|
+ class="tabSign"
|
|
|
+ @tab-change="tabchange"
|
|
|
+ ref="tabs"
|
|
|
+ >
|
|
|
<el-tab-pane label="常用" name="first"></el-tab-pane>
|
|
|
<el-tab-pane label="默认" name="second"></el-tab-pane>
|
|
|
<el-tab-pane
|
|
@@ -91,7 +96,7 @@
|
|
|
</template>
|
|
|
<!-- 表格 -->
|
|
|
<el-table
|
|
|
- :data="tableData"
|
|
|
+ :data="folderArr"
|
|
|
style="width: 100%"
|
|
|
height="250"
|
|
|
:scrollbar-always-on="true"
|
|
@@ -105,13 +110,13 @@
|
|
|
alt=""
|
|
|
style=""
|
|
|
/>
|
|
|
- {{ scope.row.date }}
|
|
|
+ {{ scope.row.docInfo.fileName }}
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="name" label="时间" width="200" />
|
|
|
- <el-table-column prop="state" label="类型" width="180" />
|
|
|
- <el-table-column prop="city" label="大小" width="160" />
|
|
|
+ <el-table-column prop="createTime" label="时间" width="200" />
|
|
|
+ <el-table-column prop="docInfo.fileType" label="类型" width="180" />
|
|
|
+ <el-table-column prop="docInfo.fileSize" label="大小" width="160" />
|
|
|
</el-table>
|
|
|
</el-collapse-item>
|
|
|
<el-collapse-item name="file">
|
|
@@ -120,7 +125,7 @@
|
|
|
</template>
|
|
|
<!-- 表格 -->
|
|
|
<el-table
|
|
|
- :data="tableData"
|
|
|
+ :data="fileArr"
|
|
|
style="width: 100%"
|
|
|
height="250"
|
|
|
:scrollbar-always-on="true"
|
|
@@ -130,17 +135,17 @@
|
|
|
<div>
|
|
|
<img
|
|
|
class="table_icon"
|
|
|
- src="@/assets/images/fileBox.png"
|
|
|
+ :src="setIcon(scope.row.docInfo.fileType)"
|
|
|
alt=""
|
|
|
style=""
|
|
|
/>
|
|
|
- {{ scope.row.date }}
|
|
|
+ {{ scope.row.docInfo.fileName }}
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="name" label="时间" width="200" />
|
|
|
- <el-table-column prop="state" label="类型" width="180" />
|
|
|
- <el-table-column prop="city" label="大小" width="160" />
|
|
|
+ <el-table-column prop="createTime" label="时间" width="200" />
|
|
|
+ <el-table-column prop="docInfo.fileType" label="类型" width="180" />
|
|
|
+ <el-table-column prop="docInfo.fileSize" label="大小" width="160" />
|
|
|
</el-table>
|
|
|
</el-collapse-item>
|
|
|
</div>
|
|
@@ -152,13 +157,13 @@
|
|
|
<!-- 平铺 -->
|
|
|
<el-scrollbar height="360px">
|
|
|
<div class="tile_box">
|
|
|
- <div class="file_box" v-for="item in 20" :key="item">
|
|
|
+ <div class="file_box" v-for="item in folderArr" :key="item">
|
|
|
<img
|
|
|
class="big_file_img"
|
|
|
src="@/assets/images/fileBox.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
- <span>Inceptos</span>
|
|
|
+ <span>{{item.docInfo.fileName}}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-scrollbar>
|
|
@@ -170,13 +175,13 @@
|
|
|
<!-- 平铺 -->
|
|
|
<el-scrollbar height="360px">
|
|
|
<div class="tile_box">
|
|
|
- <div class="file_box" v-for="item in 20" :key="item">
|
|
|
+ <div class="file_box" v-for="item in fileArr" :key="item">
|
|
|
<img
|
|
|
class="big_file_img"
|
|
|
- src="@/assets/images/fileType//file_DOC.png"
|
|
|
+ :src="setIcon(item.docInfo.fileType)"
|
|
|
alt=""
|
|
|
/>
|
|
|
- <span>Inceptos</span>
|
|
|
+ <span>{{item.docInfo.fileName}}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-scrollbar>
|
|
@@ -203,6 +208,7 @@
|
|
|
|
|
|
<script setup>
|
|
|
import Sortable from "sortablejs";
|
|
|
+import { setIcon } from "@/utils/index.js"
|
|
|
import draggable from "vuedraggable";
|
|
|
import { onMounted, ref, watch, nextTick } from "vue";
|
|
|
import { toRaw } from "@vue/reactivity";
|
|
@@ -213,7 +219,7 @@ import {
|
|
|
updateLabel,
|
|
|
sortLabel,
|
|
|
} from "@/api/biz/label.js";
|
|
|
-import { listFavorite ,listFavoriteById} from "@/api/biz/favorite.js";
|
|
|
+import { listFavorite, listFavoriteById } from "@/api/biz/favorite.js";
|
|
|
const activeNames = ref(["folder", "file"]);
|
|
|
const clickCollect = ref("first"); //当前标签
|
|
|
const isAddCollect = ref(false); //是否在添加标签
|
|
@@ -283,6 +289,9 @@ const top = ref(0);
|
|
|
const left = ref(0);
|
|
|
const thisTab = ref({}); //当前右键的标签
|
|
|
const isChangeTabName = ref(0); //存放修改状标签的id
|
|
|
+const folderArr = ref(); //文件夹数组
|
|
|
+const fileArr = ref(); //文件数组
|
|
|
+const isList = ref(true) //控制显示方式
|
|
|
onMounted(async () => {
|
|
|
await getList();
|
|
|
await getCollectList();
|
|
@@ -352,10 +361,11 @@ const delTabs = async () => {
|
|
|
// console.log("delres = ", res);
|
|
|
getList();
|
|
|
};
|
|
|
+// TODO 按标签获取收藏数据,实现文件夹收藏功能,文件夹右键菜单和文件右键菜单样式统一
|
|
|
//获取收藏数据
|
|
|
const getCollectList = async () => {
|
|
|
const res = await listFavoriteById(17);
|
|
|
- console.log("collectres = ", res);
|
|
|
+ console.log("collectres = ", res);
|
|
|
if (res.code === 200 && res.rows.length > 0) {
|
|
|
tableData.value = res.rows;
|
|
|
}
|
|
@@ -407,15 +417,15 @@ const rowDrop = () => {
|
|
|
if (index === oi) {
|
|
|
item.orderNum = _this[ni].orderNum;
|
|
|
// console.log("oiitem", item);
|
|
|
- } else if(ni<index<oi) {
|
|
|
+ } else if (ni < index < oi) {
|
|
|
item.orderNum += 1;
|
|
|
}
|
|
|
} else if (oi < ni) {
|
|
|
// 从前往后,需要将oi和ni之间的-1
|
|
|
- if (index === oi) {
|
|
|
+ if (index === oi) {
|
|
|
item.orderNum = _this[ni].orderNum;
|
|
|
// console.log("oiitem", item);
|
|
|
- } else if(oi<index<ni) {
|
|
|
+ } else if (oi < index < ni) {
|
|
|
item.orderNum -= 1;
|
|
|
}
|
|
|
}
|
|
@@ -431,6 +441,17 @@ const rowDrop = () => {
|
|
|
});
|
|
|
};
|
|
|
|
|
|
+const tabchange = async (labelId) => {
|
|
|
+ console.log("labelId", toRaw(labelId));
|
|
|
+ // 获取当前标签下的数据
|
|
|
+ const res = await listFavoriteById(labelId);
|
|
|
+ // console.log("res", res);
|
|
|
+ folderArr.value = res.filter((item) => item.isFolder === "Y");
|
|
|
+ fileArr.value = res.filter((item) => item.isFolder === "N");
|
|
|
+ console.log('folderArr',folderArr.value);
|
|
|
+ console.log('fileArr',fileArr.value);
|
|
|
+};
|
|
|
+
|
|
|
// 工具函数
|
|
|
//获取新增标签时要赋予的ordername
|
|
|
const getBigOrder = (arr) => {
|