fix: 任务到期时间不变颜色

This commit is contained in:
kuaifan 2024-09-19 00:42:57 +08:00
parent ccc60dfd77
commit 34305a1285
3 changed files with 44 additions and 9 deletions

View File

@ -48,7 +48,8 @@ export default {
data() { data() {
return { return {
routePath: null, routePath: null,
searchInter: null, appInter: null,
countDown: Math.min(30, 60 - $A.Date().getSeconds()),
} }
}, },
@ -62,7 +63,7 @@ export default {
window.addEventListener('resize', this.windowSizeListener) window.addEventListener('resize', this.windowSizeListener)
window.addEventListener('scroll', this.windowScrollListener) window.addEventListener('scroll', this.windowScrollListener)
window.addEventListener('message', this.windowHandleMessage) window.addEventListener('message', this.windowHandleMessage)
this.searchInter = setInterval(this.searchEnter, 1000) this.appInter = setInterval(this.appTimerHandler, 1000)
$A.loadVConsole() $A.loadVConsole()
}, },
@ -70,7 +71,7 @@ export default {
window.removeEventListener('resize', this.windowSizeListener) window.removeEventListener('resize', this.windowSizeListener)
window.removeEventListener('scroll', this.windowScrollListener) window.removeEventListener('scroll', this.windowScrollListener)
window.removeEventListener('message', this.windowHandleMessage) window.removeEventListener('message', this.windowHandleMessage)
this.searchInter && clearInterval(this.searchInter) this.appInter && clearInterval(this.appInter)
}, },
computed: { computed: {
@ -161,6 +162,15 @@ export default {
}, },
methods: { methods: {
appTimerHandler() {
this.searchEnter()
//
this.countDown--
if (this.countDown <= 0) {
this.countDown = Math.min(30, 60 - $A.Date().getSeconds())
this.$store.dispatch("todayAndOverdue")
}
},
searchEnter() { searchEnter() {
let row = $A(".sreachBox"); let row = $A(".sreachBox");
if (row.length === 0) { if (row.length === 0) {

View File

@ -289,19 +289,20 @@ const localforage = require("localforage");
/** /**
* 返回 时间对象|时间戳 * 返回 时间对象|时间戳
* @param v * @param v 支持时间戳|时间格式字符串|时间对象|
* @param stamp 是否返回时间戳 * @param timestamp 是否返回时间戳
* @returns {Date|number} * @returns {Date|number}
* @constructor * @constructor
*/ */
Date(v, stamp = false) { Date(v = undefined, timestamp = false) {
if (typeof v === "string" && this.strExists(v, "-")) { if (typeof v === "string" && this.strExists(v, "-")) {
v = v.replace(/-/g, '/'); v = v.replace(/-/g, '/');
} }
if (stamp === true) { const d = v === undefined || v === null ? new Date() : new Date(v);
return Math.round(new Date(v).getTime() / 1000) if (timestamp === true) {
return Math.round(d.getTime() / 1000)
} }
return new Date(v); return d;
}, },
/** /**

View File

@ -1611,6 +1611,30 @@ export default {
$A.IDBSave("cacheTasks", state.cacheTasks); $A.IDBSave("cacheTasks", state.cacheTasks);
}, },
/**
* 更新任务今日任务过期任务
* @param state
* @param dispatch
*/
todayAndOverdue({state, dispatch}) {
state.cacheTasks.some(task => {
if (!task.end_at) {
return false;
}
const data = {today: false, overdue: false};
const endAt = $A.Date(task.end_at, true)
if (!task.today) {
data.today = $A.formatDate('Y-m-d', endAt) == $A.formatDate('Y-m-d')
}
if (!task.overdue) {
data.overdue = endAt < $A.Time();
}
if (data.today || data.overdue) {
dispatch("saveTask", Object.assign(task, data));
}
})
},
/** /**
* 增加任务消息数量 * 增加任务消息数量
* @param state * @param state