feat(projects): 工作台接口切换为真实数据
This commit is contained in:
106
src/typings/api/project.d.ts
vendored
106
src/typings/api/project.d.ts
vendored
@@ -405,6 +405,112 @@ declare namespace Api {
|
||||
members: MyOwnedProjectMember[];
|
||||
}
|
||||
|
||||
/** 工作台「我的任务」(跨项目)查询入参 */
|
||||
type MyTaskSearchParams = CommonType.RecordNullable<
|
||||
Pick<PageParams, 'pageNo' | 'pageSize'> & {
|
||||
/** 身份过滤:owner 我负责 / collaborator 我协办;缺省 = 两者并集 */
|
||||
involveType: 'owner' | 'collaborator';
|
||||
}
|
||||
>;
|
||||
|
||||
/** 工作台「我的任务」单项(跨项目;当前用户为负责人或在岗协办人,接口只返回非终态任务) */
|
||||
interface MyTaskItem {
|
||||
/** 任务 ID(雪花 ID,字符串) */
|
||||
id: string;
|
||||
taskTitle: string;
|
||||
/** 所属项目 */
|
||||
projectId: string;
|
||||
projectName: string;
|
||||
/** 所属执行,未挂执行为 null */
|
||||
executionId: string | null;
|
||||
executionName: string | null;
|
||||
/** 任务状态:pending / active / paused(非终态) */
|
||||
statusCode: ProjectTaskStatusCode;
|
||||
statusName: string | null;
|
||||
/** 优先级字典 value(rdms_req_priority,"0"~"3",数字越小越高) */
|
||||
priority: string;
|
||||
/** 计划结束日期(YYYY-MM-DD),可空 */
|
||||
plannedEndDate: string | null;
|
||||
/** 任务进度(0-100);后端定稿直接返回,无进度明确返 0 */
|
||||
progressRate: number;
|
||||
/** 创建时间(YYYY-MM-DD HH:mm:ss;后端返毫秒时间戳,适配层归一) */
|
||||
createTime: string;
|
||||
/** 我的角色:owner 负责人 / collaborator 协办人;双重身份只返 owner */
|
||||
myRole: 'owner' | 'collaborator';
|
||||
/** 父任务 ID(字符串),一级任务为 null */
|
||||
parentTaskId: string | null;
|
||||
/** 是否终态;本接口只返非终态任务,正常恒为 false */
|
||||
terminal: boolean;
|
||||
/** 当前状态是否允许编辑任务 */
|
||||
allowEdit: boolean;
|
||||
/** 当前登录用户可执行的生命周期动作(与任务详情同口径;auto_start 不返回),无动作为 [] */
|
||||
availableActions: LifecycleAction<ProjectTaskActionCode>[];
|
||||
}
|
||||
|
||||
/** 工作台「团队负载」分布子项(kind != project 时 projectId / projectName 为 null) */
|
||||
interface TeamLoadDistributionItem {
|
||||
projectId: string | null;
|
||||
projectName: string | null;
|
||||
/** project 项目任务 / personal 个人事项 / other 无法归类的残留 */
|
||||
kind: 'project' | 'personal' | 'other';
|
||||
/** 未完成任务数(含待开始/已暂停) */
|
||||
count: number;
|
||||
}
|
||||
|
||||
/** 工作台「团队负载」成员(members[0] 恒为当前用户) */
|
||||
interface TeamLoadMember {
|
||||
/** 用户 ID(字符串) */
|
||||
userId: string;
|
||||
userNickname: string;
|
||||
/** 未完成任务按归属分布,无任务为 [] */
|
||||
items: TeamLoadDistributionItem[];
|
||||
/** 临期:今天 ≤ 计划结束 ≤ 今天+3 天,且未完成(与逾期互斥) */
|
||||
dueSoonCount: number;
|
||||
/** 逾期:计划结束 < 今天,且未完成 */
|
||||
overdueCount: number;
|
||||
}
|
||||
|
||||
/** 工作台「团队负载」响应(GET /project/project/me/team-load,团队 = 自己 + 管理链路直接下级) */
|
||||
interface TeamLoadResult {
|
||||
members: TeamLoadMember[];
|
||||
}
|
||||
|
||||
/** 工作台工时分布子项(kind != project 时 projectId / projectName 为 null;hours=0 的行后端不输出) */
|
||||
interface WorklogDistributionItem {
|
||||
projectId: string | null;
|
||||
projectName: string | null;
|
||||
kind: 'project' | 'personal' | 'other';
|
||||
hours: number;
|
||||
}
|
||||
|
||||
/** 工作台「我的工时周聚合」响应(GET /project/project/me/worklog-week) */
|
||||
interface MyWorklogWeekResult {
|
||||
/** 归一后的周一日期 YYYY-MM-DD */
|
||||
weekStart: string;
|
||||
/** 周一~周五逐日工时(固定 5 元素;均摊推算值,周末份额归周五) */
|
||||
dailyHours: number[];
|
||||
/** 本周工时按归属分布,hours 降序 */
|
||||
distribution: WorklogDistributionItem[];
|
||||
}
|
||||
|
||||
/** 工作台「团队工时周聚合」成员(members[0] 恒为当前用户;该周未填报成员 items 为 []) */
|
||||
interface TeamWorklogWeekMember {
|
||||
userId: string;
|
||||
userNickname: string;
|
||||
items: WorklogDistributionItem[];
|
||||
}
|
||||
|
||||
/** 工作台「团队工时周聚合」响应(GET /project/project/me/team-worklog-week;周标准工时后端不返回,前端落常量 35) */
|
||||
interface TeamWorklogWeekResult {
|
||||
weekStart: string;
|
||||
members: TeamWorklogWeekMember[];
|
||||
}
|
||||
|
||||
/** 工作台工时周聚合查询入参(weekStart 传任意日期,后端归一到所在周周一) */
|
||||
interface WorklogWeekParams {
|
||||
weekStart: string;
|
||||
}
|
||||
|
||||
/** 创建执行入参(含 ownerId + assigneeUserIds) */
|
||||
interface CreateProjectExecutionParams {
|
||||
executionName: string;
|
||||
|
||||
Reference in New Issue
Block a user