任务列表管理
This commit is contained in:
parent
70c350b866
commit
4dc9c9e989
92
api/task.js
92
api/task.js
|
|
@ -12,35 +12,95 @@
|
||||||
* @param {string} params.expireTimeEnd 过期时间结束范围(格式:yyyy-MM-dd HH:mm:ss)
|
* @param {string} params.expireTimeEnd 过期时间结束范围(格式:yyyy-MM-dd HH:mm:ss)
|
||||||
* @param {number} params.pageNum 页码
|
* @param {number} params.pageNum 页码
|
||||||
* @param {number} params.pageSize 每页数量
|
* @param {number} params.pageSize 每页数量
|
||||||
|
* @param {string} params.orderByColumn 排序字段
|
||||||
|
* @param {string} params.isAsc 排序方式(ascending/descending)
|
||||||
|
* @param {string} params.projectId 项目ID
|
||||||
|
* @param {string} params.type 任务类型
|
||||||
|
* @param {string} params.level 优先级
|
||||||
|
* @param {string} params.createId 创建人ID
|
||||||
|
* @param {string[]} params.passDateRange 通过日期范围 [开始日期, 结束日期]
|
||||||
|
* @param {string} params.status 任务状态
|
||||||
* @returns {Promise} 返回任务列表
|
* @returns {Promise} 返回任务列表
|
||||||
*/
|
*/
|
||||||
export const getTaskList = ({ownerId, overdue, statusList, expireTimeStart, expireTimeEnd, pageNum, pageSize }) => {
|
export const getTaskList = (params = {}) => {
|
||||||
const queryParams = [];
|
const queryParams = [];
|
||||||
if (overdue !== undefined) {
|
|
||||||
queryParams.push(`overdue=${overdue}`);
|
// 分页参数
|
||||||
|
if (params.pageNum !== undefined) {
|
||||||
|
queryParams.push(`pageNum=${params.pageNum}`);
|
||||||
}
|
}
|
||||||
if (ownerId !== undefined && ownerId !== '') {
|
if (params.pageSize !== undefined) {
|
||||||
queryParams.push(`ownerId=${ownerId}`);
|
queryParams.push(`pageSize=${params.pageSize}`);
|
||||||
}
|
}
|
||||||
if (statusList !== undefined && Array.isArray(statusList) && statusList.length > 0) {
|
|
||||||
|
// 排序参数
|
||||||
|
if (params.orderByColumn !== undefined && params.orderByColumn !== '') {
|
||||||
|
queryParams.push(`orderByColumn=${encodeURIComponent(params.orderByColumn)}`);
|
||||||
|
}
|
||||||
|
if (params.isAsc !== undefined && params.isAsc !== '') {
|
||||||
|
queryParams.push(`isAsc=${encodeURIComponent(params.isAsc)}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 项目ID
|
||||||
|
if (params.projectId !== undefined && params.projectId !== '') {
|
||||||
|
queryParams.push(`projectId=${params.projectId}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 任务类型
|
||||||
|
if (params.type !== undefined && params.type !== '') {
|
||||||
|
queryParams.push(`type=${params.type}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 优先级
|
||||||
|
if (params.level !== undefined && params.level !== '') {
|
||||||
|
queryParams.push(`level=${params.level}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 创建人ID
|
||||||
|
if (params.createId !== undefined && params.createId !== '') {
|
||||||
|
queryParams.push(`createId=${params.createId}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 负责人ID
|
||||||
|
if (params.ownerId !== undefined && params.ownerId !== '') {
|
||||||
|
queryParams.push(`ownerId=${params.ownerId}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 状态列表
|
||||||
|
if (params.statusList !== undefined && Array.isArray(params.statusList) && params.statusList.length > 0) {
|
||||||
// 将数组转换为重复参数格式,例如 [1,2] => "statusList=1&statusList=2"
|
// 将数组转换为重复参数格式,例如 [1,2] => "statusList=1&statusList=2"
|
||||||
statusList.forEach(status => {
|
params.statusList.forEach(status => {
|
||||||
queryParams.push(`statusList=${status}`);
|
queryParams.push(`statusList=${status}`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if (expireTimeStart !== undefined && expireTimeStart !== null && expireTimeStart !== '') {
|
|
||||||
queryParams.push(`expireTimeStart=${encodeURIComponent(expireTimeStart)}`);
|
// 任务状态(单个)
|
||||||
|
if (params.status !== undefined && params.status !== '') {
|
||||||
|
queryParams.push(`status=${params.status}`);
|
||||||
}
|
}
|
||||||
if (expireTimeEnd !== undefined && expireTimeEnd !== null && expireTimeEnd !== '') {
|
|
||||||
queryParams.push(`expireTimeEnd=${encodeURIComponent(expireTimeEnd)}`);
|
// 是否逾期
|
||||||
|
if (params.overdue !== undefined) {
|
||||||
|
queryParams.push(`overdue=${params.overdue}`);
|
||||||
}
|
}
|
||||||
// 添加分页参数
|
|
||||||
if (pageNum !== undefined) {
|
// 过期时间范围
|
||||||
queryParams.push(`pageNum=${pageNum}`);
|
if (params.expireTimeStart !== undefined && params.expireTimeStart !== null && params.expireTimeStart !== '') {
|
||||||
|
queryParams.push(`expireTimeStart=${encodeURIComponent(params.expireTimeStart)}`);
|
||||||
}
|
}
|
||||||
if (pageSize !== undefined) {
|
if (params.expireTimeEnd !== undefined && params.expireTimeEnd !== null && params.expireTimeEnd !== '') {
|
||||||
queryParams.push(`pageSize=${pageSize}`);
|
queryParams.push(`expireTimeEnd=${encodeURIComponent(params.expireTimeEnd)}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 通过日期范围
|
||||||
|
if (params.passDateRange !== undefined && Array.isArray(params.passDateRange) && params.passDateRange.length > 0) {
|
||||||
|
params.passDateRange.forEach((date, index) => {
|
||||||
|
if (date) {
|
||||||
|
queryParams.push(`passDateRange[${index}]=${encodeURIComponent(date)}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
const queryString = queryParams.length > 0 ? `?${queryParams.join('&')}` : '';
|
const queryString = queryParams.length > 0 ? `?${queryParams.join('&')}` : '';
|
||||||
|
|
||||||
return uni.$uv.http.get(`bst/task/list${queryString}`, {
|
return uni.$uv.http.get(`bst/task/list${queryString}`, {
|
||||||
|
|
|
||||||
|
|
@ -53,9 +53,9 @@ const handleClick = (item) => {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (item.key === 'task') {
|
if (item.key === 'task') {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: '/pages/task/add/index'
|
url: '/pages/task/manage/index'
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (item.key === 'customer') {
|
if (item.key === 'customer') {
|
||||||
|
|
|
||||||
|
|
@ -76,6 +76,12 @@
|
||||||
"navigationBarTitleText": "任务列表"
|
"navigationBarTitleText": "任务列表"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/task/manage/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "任务管理"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/task/add/index",
|
"path": "pages/task/add/index",
|
||||||
"style": {
|
"style": {
|
||||||
|
|
|
||||||
1063
pages/task/manage/index.vue
Normal file
1063
pages/task/manage/index.vue
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user