feat:拆分工具函数

This commit is contained in:
zdl
2025-11-24 15:12:52 +08:00
parent 851c148f7d
commit 9475027c0d

View File

@@ -0,0 +1,45 @@
// src/views/AgentChat/utils/sessionUtils.js
// 会话管理工具函数
/**
* 按日期分组会话列表
*
* @param {Array} sessions - 会话列表
* @returns {Object} 分组后的会话对象 { today, yesterday, thisWeek, older }
*
* @example
* const groups = groupSessionsByDate(sessions);
* console.log(groups.today); // 今天的会话
* console.log(groups.yesterday); // 昨天的会话
*/
export const groupSessionsByDate = (sessions) => {
const today = new Date();
const yesterday = new Date(today);
yesterday.setDate(yesterday.getDate() - 1);
const weekAgo = new Date(today);
weekAgo.setDate(weekAgo.getDate() - 7);
const groups = {
today: [],
yesterday: [],
thisWeek: [],
older: [],
};
sessions.forEach((session) => {
const sessionDate = new Date(session.created_at || session.timestamp);
const daysDiff = Math.floor((today - sessionDate) / (1000 * 60 * 60 * 24));
if (daysDiff === 0) {
groups.today.push(session);
} else if (daysDiff === 1) {
groups.yesterday.push(session);
} else if (daysDiff <= 7) {
groups.thisWeek.push(session);
} else {
groups.older.push(session);
}
});
return groups;
};