OfficeSystem/api/task.js

71 lines
2.2 KiB
JavaScript
Raw Normal View History

2025-11-07 11:18:43 +08:00
/**
* 任务相关 API
*/
/**
* 获取任务列表
* @param {Object} params 请求参数
* @param {boolean} params.overdue 是否获取逾期任务
* @param {number[]} params.statusList 任务状态列表4对应已完成
* @param {string} params.expireTimeStart 过期时间开始范围格式yyyy-MM-dd HH:mm:ss
* @param {string} params.expireTimeEnd 过期时间结束范围格式yyyy-MM-dd HH:mm:ss
* @returns {Promise} 返回任务列表
*/
export const getTaskList = ({ overdue, statusList, expireTimeStart, expireTimeEnd }) => {
const queryParams = [];
if (overdue !== undefined) {
queryParams.push(`overdue=${overdue}`);
}
if (statusList !== undefined && Array.isArray(statusList) && statusList.length > 0) {
// 将数组转换为逗号分隔的字符串,例如 [4] => "4" 或 [1,2,3] => "1,2,3"
queryParams.push(`statusList=${statusList.join(',')}`);
}
if (expireTimeStart !== undefined && expireTimeStart !== null && expireTimeStart !== '') {
queryParams.push(`expireTimeStart=${encodeURIComponent(expireTimeStart)}`);
}
if (expireTimeEnd !== undefined && expireTimeEnd !== null && expireTimeEnd !== '') {
queryParams.push(`expireTimeEnd=${encodeURIComponent(expireTimeEnd)}`);
}
const queryString = queryParams.length > 0 ? `?${queryParams.join('&')}` : '';
return uni.$uv.http.get(`bst/task/list${queryString}`, {
custom: {
auth: true // 启用 token 认证
}
});
};
/**
* 获取任务详情
* @param {string} id 任务ID
* @returns {Promise} 返回任务详情
*/
export const getTaskDetail = (id) => {
return uni.$uv.http.get(`bst/task/${id}`, {
custom: {
auth: true // 启用 token 认证
}
});
};
/**
* 提交任务
* @param {Object} params 请求参数
* @param {string} params.id 任务ID
* @param {string} params.submitAttaches 附件, 逗号分隔的URL字符串
* @param {string} params.submitRemark 备注
* @returns {Promise} 返回提交结果
*/
export const submitTask = ({ id, submitAttaches, submitRemark }) => {
return uni.$uv.http.put('/bst/task/submit', {
id: id,
submitAttaches: submitAttaches || '',
submitRemark: submitRemark || ''
}, {
custom: {
auth: true // 启用 token 认证
}
});
};