120 lines
3.4 KiB
JavaScript
120 lines
3.4 KiB
JavaScript
/**
|
||
* API 接口封装
|
||
* 统一管理所有 API 请求
|
||
*/
|
||
|
||
/**
|
||
* 获取用户信息
|
||
* @returns {Promise} 返回用户信息
|
||
*/
|
||
export const getUserInfo = () => {
|
||
return uni.$uv.http.get('/getInfo', {
|
||
custom: {
|
||
auth: true // 启用 token 认证
|
||
}
|
||
});
|
||
};
|
||
|
||
/**
|
||
* 获取仪表板简要信息
|
||
* @param {Object} params 请求参数
|
||
* @param {string} params.joinUserId 用户ID
|
||
* @param {string[]} params.keys 需要获取的数据键名数组
|
||
* @returns {Promise} 返回仪表板简要信息
|
||
*/
|
||
export const getDashboardBrief = ({ joinUserId, keys }) => {
|
||
// 构建查询参数字符串
|
||
const params = [`joinUserId=${joinUserId}`];
|
||
if (keys && Array.isArray(keys)) {
|
||
keys.forEach((key) => {
|
||
params.push(`keys=${encodeURIComponent(key)}`);
|
||
});
|
||
}
|
||
const queryString = params.join('&');
|
||
|
||
return uni.$uv.http.get(`dashboard/brief?${queryString}`, {
|
||
custom: {
|
||
auth: true // 启用 token 认证
|
||
}
|
||
});
|
||
};
|
||
|
||
/**
|
||
* 获取任务列表
|
||
* @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 认证
|
||
}
|
||
});
|
||
};
|
||
|
||
/**
|
||
* 获取七牛云上传token
|
||
* @returns {Promise} 返回七牛云上传token
|
||
*/
|
||
export const getQiniuUploadToken = () => {
|
||
return uni.$uv.http.get('/common/qiniuToken', {
|
||
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 认证
|
||
}
|
||
});
|
||
};
|
||
|