新增项目综合看板功能,聚合展示项目、任务、进度主表和步骤数据
- 新增后端聚合接口 GET /oa/project/dashboard/{projectId}
- 新增前端看板页面,包含项目列表、任务表格和进度导图
- 优化思维导图组件,支持看板模式下的紧凑展示
- 新增进度明细表格视图和状态图例
- 实现任务与进度步骤的关联展示
- 添加项目模糊搜索功能
164 lines
3.2 KiB
JavaScript
164 lines
3.2 KiB
JavaScript
import request from '@/utils/request'
|
||
|
||
// 查询项目管理列表
|
||
export function listProject (query) {
|
||
return request({
|
||
url: '/oa/project/list',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
|
||
// 查询项目管理列表
|
||
export function listWareProject (query) {
|
||
return request({
|
||
url: '/oa/project/ware-list',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
|
||
// 查询项目管理列表
|
||
export function filesProject (query) {
|
||
return request({
|
||
url: '/oa/project/files',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
// 查询项目管理详细
|
||
export function getProject (projectId) {
|
||
return request({
|
||
url: '/oa/project/' + projectId,
|
||
method: 'get'
|
||
})
|
||
}
|
||
|
||
/** 综合看板聚合数据:项目 + 任务 + 进度主表 + 步骤 */
|
||
export function getProjectDashboard (projectId) {
|
||
return request({
|
||
url: '/oa/project/dashboard/' + projectId,
|
||
method: 'get'
|
||
})
|
||
}
|
||
// 查询项目管理详细
|
||
export function projectData (date) {
|
||
return request({
|
||
url: '/oa/project/projectDataByMonth/' + date,
|
||
method: 'get',
|
||
})
|
||
}
|
||
|
||
export function projectData2 (date) {
|
||
return request({
|
||
url: '/oa/project/projectData',
|
||
method: 'get',
|
||
params: { date }
|
||
});
|
||
}
|
||
|
||
// 查询项目管理详细
|
||
export function projectDataByMonthAndDate () {
|
||
return request({
|
||
url: '/oa/project/projectDataByMonthAndDate',
|
||
method: 'get'
|
||
})
|
||
}
|
||
|
||
// 新增项目
|
||
export function addProject (data) {
|
||
return request({
|
||
url: '/oa/project',
|
||
method: 'post',
|
||
data: data
|
||
})
|
||
}
|
||
|
||
// 修改项目
|
||
export function updateProject (data) {
|
||
return request({
|
||
url: '/oa/project',
|
||
method: 'put',
|
||
data: data
|
||
})
|
||
}
|
||
|
||
// 删除项目
|
||
export function delProject (projectId) {
|
||
return request({
|
||
url: '/oa/project/' + projectId,
|
||
method: 'delete'
|
||
})
|
||
}
|
||
|
||
export function getProjectList (query) {
|
||
return request({
|
||
url: '/oa/project/progress-list',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
|
||
|
||
/**
|
||
* 获取外贸中心仪表盘四项指标
|
||
* @param {Object} query 传参示例:{ start: '2024/01/01', end: '2024/01/18' }
|
||
*/
|
||
export function getDashboardMetrics (query) {
|
||
return request({
|
||
url: '/oa/project/metrics',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 获取外贸中心三张图表数据(折线、饼图、柱状)
|
||
* @param {Object} query 传参示例:{ start: '2024/01/01', end: '2024/01/18' }
|
||
*/
|
||
export function getDashboardCharts (query) {
|
||
return request({
|
||
url: '/oa/project/charts',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 获取外贸中心临期项目列表
|
||
* @param {Object} query 传参示例:{ days: 7 }
|
||
*/
|
||
export function listExpiringProjects (query) {
|
||
return request({
|
||
url: '/oa/project/expiring',
|
||
method: 'get',
|
||
params: query
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 项目延期
|
||
* @param {Object} params 传参示例:{ projectId: '123', postPoneDate: '2024-01-18' }
|
||
*/
|
||
export function postPoneProject (params) {
|
||
return request({
|
||
url: '/oa/project/postpone',
|
||
method: 'put',
|
||
params
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 获取项目最大项目代号
|
||
* @param {String} codeType 项目代号类型(例如:'FAD')
|
||
*/
|
||
export function getMaxCode (codeType) {
|
||
return request({
|
||
url: '/oa/project/maxCode/' + codeType,
|
||
method: 'get',
|
||
})
|
||
} |