diff --git a/src/components/DashBoard.vue b/src/components/DashBoard.vue
index 1cb9816..f46bd25 100644
--- a/src/components/DashBoard.vue
+++ b/src/components/DashBoard.vue
@@ -208,7 +208,7 @@ function queryLocalTask(){
}
function resetLocalQuery(){
store.commit("_searchLocalByKeyword", "")
- store.commit("_searchLocalByTaf", [''])
+ store.commit("_searchLocalByTag", [''])
param.value = ""
}
diff --git a/src/components/Side.vue b/src/components/Side.vue
index e0ccf35..fa1cc49 100644
--- a/src/components/Side.vue
+++ b/src/components/Side.vue
@@ -2,7 +2,7 @@
{{showType === 'gallery' || showType === 'collect' ? '本子' : '视频'}}历史
-
+
@@ -28,7 +28,7 @@
- {{showNameType === 'shortName' ? scoped.row.shortName: scoped.row.name}}
+ {{galleryNameType === 'shortName' ? scoped.row.shortName: scoped.row.name}}
@@ -49,7 +49,7 @@
-
+
名字:{{props.row.name}}
@@ -94,20 +94,33 @@
- 筛选:
+
-
-
- 排列顺序:
-
-
-
-
- 显示:
-
-
+
+
+ 分类
+
+
+
+
+
+
+
+ 排序
+
+
+
+
+
+
+
+ 显示
+
+
+
+
{{min}}
@@ -141,8 +154,8 @@
-
-
+
+
@@ -180,10 +193,13 @@ let tempTag = ref("")
let tempGid = ref("")
let tempId = ref("")
-let showNameType = ref("shortName") // shortName name
-let showType = ref("gallery") // gallery video collect
-let sortType = ref("shortName") // shortName name createTime
-let targetPage = ref(1) // 当前页数
+let category = ref("myDownload") //myDownload myCollect total
+let galleryNameType = ref("shortName") // shortName name
+let showType = ref("gallery") // gallery video collect
+let sortType = ref("shortName") // shortName name createTime
+let targetPage = ref(1) // 当前页数
+
+let onlineReadingScrollbar = ref(null)
//防抖计时器
let debounceTimer = 0
@@ -192,18 +208,8 @@ let loadComplete = computed(() => {
return store.state.loadComplete
})
-let galleryTasks = computed(() => {
- return store.getters.galleryTasks ? store.getters.galleryTasks: null
-})
-let videoTasks = computed(() => {
- return store.getters.videoTasks ? store.getters.videoTasks: null
-})
-
-let isShowVideoHistory = computed(() => {
- return store.state.showType === "video"
-})
-let isShowGalleryHistory = computed(() => {
- return store.state.showType === "gallery" || store.state.showType === "collect"
+let currentTasks = computed(() => {
+ return store.getters.currentTasks ? store.getters.currentTasks: null
})
let isOnlineReading = computed(() => {
return store.state.isOnlineReading
@@ -225,6 +231,12 @@ let isLion = computed(() => {
return store.state.userId === 3
})
+let emptyText = computed(() => {
+ let type = showType.value === 'gallery' ? '本子': '视频'
+ let action = category.value === 'myDownload' ? '下载': '收藏'
+ return '您未' + action + type
+})
+
//在线预览相关
let currentLinks = computed(() => {
return store.state.currentLinks
@@ -270,24 +282,19 @@ function reverseEditMode(){
}
//改变展示类型
+function changeCategory(){
+ store.commit("_setCategory", category.value)
+}
function changeShowType(){
+ if(showType.value === 'video')
+ sortType.value = 'name'
store.commit("_setShowType", showType.value)
}
-function changeShowNameType(){
- store.commit("_setShowNameType", showNameType.value)
-
- if(showNameType.value !== sortType.value){
- store.commit("_setSortType", showNameType.value)
- sortType.value = showNameType.value
- }
+function changeGalleryNameType(){
+ store.commit("_setShowNameType", galleryNameType.value)
}
function changeSortType(){
store.commit("_setSortType", sortType.value)
-
- if(sortType.value !== showNameType.value && sortType.value !== "createTime") {
- store.commit("_setShowNameType", sortType.value)
- showNameType.value = sortType.value
- }
}
//收藏,编辑标签,提交编辑
@@ -314,7 +321,7 @@ function editVideoTag(id, tag){
isEditingTag.value = true
}
function submitGalleryTag(){
- store.dispatch("updateTag", {gid:tempGid.value, tag:tempTag.value})
+ store.dispatch("updateGalleryTag", {gid:tempGid.value, tag:tempTag.value})
tempTag.value = ''
tempGid.value = ''
isEditingTag.value = false
@@ -342,8 +349,9 @@ function deleteVideo(id){
function onlineGalleryReader(gid){
store.dispatch("queryOnlineLinks", gid)
}
-function closeOnlineReader(){
+function closeOnlineReading(){
store.state.isOnlineReading = false
+ onlineReadingScrollbar.value.setScrollTop(0)
}
function shareGallery(data){
const {gid, shortName} = data
@@ -401,7 +409,7 @@ function showThumbnail(gallery){
margin-top: 5vh;
}
.el-select{
- width: 125px;
+ width: 135px;
}
.page{
display: inline-block;
diff --git a/src/store/index.js b/src/store/index.js
index 118c79a..215ff57 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -178,7 +178,7 @@ const actions = {
//初始化
context.dispatch("loadMaskDomain").then()
context.dispatch("loadWeekUsedAmount").then()
- context.dispatch("updateGalleryTasks", "all").then()
+ context.dispatch("updateGalleryTasks", "all").then(() => confirmCurrentTask(context.state))
context.dispatch("updateVideoTasks", "all").then()
//获取图片合适长度
@@ -430,7 +430,7 @@ const mutations = {
}
//处理是否下载
- if(task.downloader === state.username)
+ if(task.downloader === state.userId)
state.downloadGallery.push(task)
state.totalGalleryTask.push(task)
@@ -526,7 +526,7 @@ const mutations = {
}
//处理是否下载
- if(task.downloader === state.username)
+ if(task.downloader === state.userId)
state.downloadVideo.push(task)
state.totalVideoTask.push(task)
@@ -576,17 +576,13 @@ const mutations = {
localStorage.removeItem("auth")
},
_searchLocalByLink(state, link){
- let tasks
+ let tasks = state.currentTasks
let i = 0
let gid = null
let name = null
- if(state.showType === "gallery") {
- tasks = state.totalGalleryTask
+ if(state.showType === "gallery")
gid = link.split("/")[4]
- }
- else
- tasks = state.totalVideoTask
if(gid === null)
for (i = 0; i < tasks.length; i++) {
@@ -612,17 +608,15 @@ const mutations = {
state.searchTask.splice(0)
if(keyword.trim() !== '') {
state.page = 1
- let tasks
- if (state.showType === "video")
- tasks = state.totalVideoTask
- else
- tasks = state.totalGalleryTask
+ let tasks = state.currentTasks
tasks.forEach((task) => {
if (task.name.includes(keyword))
state.searchTask.push(task)
})
if (state.searchTask.length === 0)
ElMessage("未找到该关键字的任务")
+ else
+ state.currentTasks = state.searchTask
}
},
_searchLocalByTag(state, tags) {
@@ -631,36 +625,34 @@ const mutations = {
let tagAmount = tags.length
let hitAmount
- let tasks = state.totalGalleryTask
+ let tasks = state.currentTasks
if (tags[0].trim() !== '') {
tasks.forEach((task) => {
- hitAmount = 0
- tags.forEach((tag) => {
- if (task.tag.includes(tag))
- hitAmount++
- })
- if (hitAmount === tagAmount)
- state.searchTask.push(task)
+ if('tag' in task) {
+ hitAmount = 0
+ tags.forEach((tag) => {
+ if (task.tag.includes(tag))
+ hitAmount++
+ })
+ if (hitAmount === tagAmount)
+ state.searchTask.push(task)
+ }
})
if (state.searchTask.length === 0)
ElMessage("未找到符合这些tag的任务")
+ else
+ state.currentTasks = state.searchTask
}
},
_deleteGallery(state, gid){
- for(let i=0; i {
- return before.name > after.name ? 1: -1
- })
- state.totalVideoTask = state.totalVideoTask.sort((before, after) => {
- return before.name > after.name ? 1: -1
- })
- break
- case "shortName":
- state.totalGalleryTask = state.totalGalleryTask.sort((before, after) => {
- return before.shortName > after.shortName ? 1: -1
- })
- break
- case "createTime":
- state.totalGalleryTask = state.totalGalleryTask.sort((before, after) => {
- return before.createTime - after.createTime
- })
- state.totalVideoTask = state.totalVideoTask.sort((before, after) => {
- return before.createTime - after.createTime
- })
- }
+ sortTasks(state)
},
_setShowNameType(state, type){
if(type === "shortName")
@@ -750,87 +730,66 @@ const mutations = {
}
const state = {
- totalGalleryTask:[], //存放本子数据的数组
- chosenGallery:false, //准备下载的本子
- thumbnailGallery:{}, //缩略图链接
- collectGallery:[], //收藏的本子
- downloadGallery:[], //下载的本子
+ totalGalleryTask: [], //存放本子数据的数组
+ chosenGallery: false, //准备下载的本子
+ thumbnailGallery: {}, //缩略图链接
+ collectGallery: [], //收藏的本子
+ downloadGallery: [], //下载的本子
- onlineLinks:{}, //在线本子链接
- isOnlineReading: false, //是否在线看
- currentGid: "", //当前GID
- currentLinks: [], //当前本子链接
- imageWidth: "", //图片宽度
- imagePadding: "", //图片padding
+ onlineLinks: {}, //在线本子链接
+ isOnlineReading: false, //是否在线看
+ currentGid: "", //当前GID
+ currentLinks: [], //当前本子链接
+ imageWidth: "", //图片宽度
+ imagePadding: "", //图片padding
totalVideoTask: [], //存放视频数据的数组
chosenVideo: false, //准备下载的视频
collectVideo: [], //收藏的视频
downloadVideo: [], //下载的视频
- page:1, //当前页数
- length:10, //每页能有多少个链接
- defaultLength:7, //默认个数
- shortLength:10, //简洁个数
+ page: 1, //当前页数
+ length: 10, //每页能有多少个链接
+ defaultLength: 7, //默认个数
+ shortLength: 10, //简洁个数
- userId:-1, //用户id
- username: "", //用户名
- isAuth:false, //是否授权
- AuthCode:'', //授权码
- loadComplete:false, //是否加载完成
- galleryRefreshTimer:0, //本子更新计时器id
- videoRefreshTimer:0, //视频更新计时器id
+ userId: -1, //用户id
+ username: "", //用户名
+ isAuth: false, //是否授权
+ AuthCode: '', //授权码
+ loadComplete: false, //是否加载完成
+ galleryRefreshTimer: 0, //本子更新计时器id
+ videoRefreshTimer: 0, //视频更新计时器id
- isInclude:false, //是否搜索到任务
- searchTask:[], //搜索到的任务
- showType:'gallery', //展示类型
+ isInclude: false, //是否搜索到任务
+ searchTask: [], //搜索到的任务
+ showType:'gallery', //展示类型
+ category: 'myDownload', //分类
sortType:'shortName', //排序类型
- weekUsed:{}, //每周用量
+ currentTasks: [], //当前任务
+ weekUsed: {}, //每周用量
- maskDomain:[] //伪装域名
+ maskDomain: [] //伪装域名
}
const getters = {
- galleryTasks(state){
- if(state.showType === 'collect')
- return state.collectGallery.slice((state.page-1)*state.length, state.page*state.length)
- if(state.searchTask.length !== 0)
- return state.searchTask.slice((state.page-1)*state.length, state.page*state.length)
- if(state.totalGalleryTask.length !== 0)
- return state.totalGalleryTask.slice((state.page-1)*state.length, state.page*state.length)
- return null
- },
- videoTasks(state){
- if(state.searchTask.length !== 0)
- return state.searchTask.slice((state.page-1)*state.length, state.page*state.length)
- if(state.totalVideoTask.length !== 0)
- return state.totalVideoTask.slice((state.page-1)*state.length, state.page*state.length)
- return null
+ currentTasks(state){
+ return state.currentTasks.slice((state.page-1)*state.length, state.page*state.length)
},
min(){
return 1
},
max(state){
let max = 0
- let tasks
- if(state.showType === 'collect')
- tasks = state.collectGallery
- else if(state.searchTask.length !== 0)
- tasks = state.searchTask
- else if(state.showType === "gallery")
- tasks = state.totalGalleryTask
- else if(state.showType === "video")
- tasks = state.totalVideoTask
+ let tasks = state.currentTasks
if(!tasks)
return 1
max = Math.floor(tasks.length/state.length)
- if(tasks.length % state.length !== 0)
+ if(tasks.length % state.length !== 0 || max === 0)
max += 1
- if(max === 0)
- return 1
return max
}
}
@@ -874,4 +833,65 @@ function getShortname(name){
} else {
return name
}
+}
+
+function confirmCurrentTask(state){
+ if(state.showType === "gallery")
+ switch (state.category){
+ case 'myDownload':
+ state.currentTasks = state.downloadGallery
+ break
+ case 'myCollect':
+ state.currentTasks = state.collectGallery
+ break
+ case 'total':
+ state.currentTasks = state.totalGalleryTask
+ break
+ }
+ else
+ switch (state.category){
+ case 'myDownload':
+ state.currentTasks = state.downloadVideo
+ break
+ case 'myCollect':
+ state.currentTasks = state.collectGallery
+ break
+ case 'total':
+ state.currentTasks = state.totalVideoTask
+ break
+ }
+}
+
+function sortTasks(state){
+ switch (state.sortType) {
+ case "name":
+ state.currentTasks = state.currentTasks.sort((before, after) => {
+ return before.name > after.name ? 1: -1
+ })
+ state.currentTasks = state.currentTasks.sort((before, after) => {
+ return before.name > after.name ? 1: -1
+ })
+ break
+ case "shortName":
+ state.currentTasks = state.currentTasks.sort((before, after) => {
+ return before.shortName > after.shortName ? 1: -1
+ })
+ break
+ case "createTime":
+ state.currentTasks = state.currentTasks.sort((before, after) => {
+ return before.createTime - after.createTime
+ })
+ state.currentTasks = state.currentTasks.sort((before, after) => {
+ return before.createTime - after.createTime
+ })
+ }
+}
+
+function deleteTask(tasks, key, value){
+ for(let j=0; j < tasks.length; j++)
+ for(let i=0; i