不同视角下:任务列表查询

This commit is contained in:
WindowBird 2025-11-12 17:43:07 +08:00
parent 9413b651e0
commit 769e0d169e
2 changed files with 16 additions and 6 deletions

View File

@ -5,17 +5,21 @@
/** /**
* 获取任务列表 * 获取任务列表
* @param {Object} params 请求参数 * @param {Object} params 请求参数
* @param {string} params.ownerId 所属人id
* @param {boolean} params.overdue 是否获取逾期任务 * @param {boolean} params.overdue 是否获取逾期任务
* @param {number[]} params.statusList 任务状态列表4对应已完成 * @param {number[]} params.statusList 任务状态列表4对应已完成
* @param {string} params.expireTimeStart 过期时间开始范围格式yyyy-MM-dd HH:mm:ss * @param {string} params.expireTimeStart 过期时间开始范围格式yyyy-MM-dd HH:mm:ss
* @param {string} params.expireTimeEnd 过期时间结束范围格式yyyy-MM-dd HH:mm:ss * @param {string} params.expireTimeEnd 过期时间结束范围格式yyyy-MM-dd HH:mm:ss
* @returns {Promise} 返回任务列表 * @returns {Promise} 返回任务列表
*/ */
export const getTaskList = ({ overdue, statusList, expireTimeStart, expireTimeEnd }) => { export const getTaskList = ({ownerId, overdue, statusList, expireTimeStart, expireTimeEnd }) => {
const queryParams = []; const queryParams = [];
if (overdue !== undefined) { if (overdue !== undefined) {
queryParams.push(`overdue=${overdue}`); queryParams.push(`overdue=${overdue}`);
} }
if (ownerId !== undefined) {
queryParams.push(`ownerId=${ownerId}`);
}
if (statusList !== undefined && Array.isArray(statusList) && statusList.length > 0) { if (statusList !== undefined && Array.isArray(statusList) && statusList.length > 0) {
// 将数组转换为逗号分隔的字符串,例如 [4] => "4" 或 [1,2,3] => "1,2,3" // 将数组转换为逗号分隔的字符串,例如 [4] => "4" 或 [1,2,3] => "1,2,3"
queryParams.push(`statusList=${statusList.join(',')}`); queryParams.push(`statusList=${statusList.join(',')}`);

View File

@ -85,6 +85,8 @@ import { getStatusText, getTaskStatusType, getTaskStatusStyle } from '@/utils/ta
import { getTaskList } from '@/api'; import { getTaskList } from '@/api';
import { useTaskStore } from '@/store/task'; import { useTaskStore } from '@/store/task';
import {truncateText} from "@/utils/textSolve/truncateText"; import {truncateText} from "@/utils/textSolve/truncateText";
import {useUserStore} from "@/store/user";
// //
@ -322,16 +324,20 @@ const loadTaskList = async () => {
loading.value = true; loading.value = true;
let res; let res;
let userId= useUserStore().getUserInfo.user.userId
let privateView= useUserStore().privateView
let ownerId = userId && privateView ? userId:''
// //
if (statusFilter.value === 'completed') { if (statusFilter.value === 'completed') {
res = await getTaskList({ statusList: [4] }); res = await getTaskList({ statusList: [4], ownerId: ownerId });
} else if (statusFilter.value === 'overdue') { } else if (statusFilter.value === 'overdue') {
res = await getTaskList({ overdue: true }); res = await getTaskList({ overdue: true, ownerId: ownerId });
} else if (statusFilter.value === 'pending') { } else if (statusFilter.value === 'pending') {
res = await getTaskList({ statusList: [2] }); res = await getTaskList({ statusList: [2], ownerId: ownerId });
} else if (statusFilter.value === 'imminent') { } else if (statusFilter.value === 'imminent') {
const dateRange = getImminentDateRange(); const dateRange = getImminentDateRange();
res = await getTaskList({ res = await getTaskList({
ownerId: ownerId,
statusList: [2], statusList: [2],
expireTimeStart: dateRange.expireTimeStart, expireTimeStart: dateRange.expireTimeStart,
expireTimeEnd: dateRange.expireTimeEnd expireTimeEnd: dateRange.expireTimeEnd