Files
ftb-project-management/apps/web/lib/version-status.ts
Script Generator 8bc23fbf3d feat: 计划任务清单+进度联动+与我相关工作台
- 计划新增任务清单:调研支持任务CRUD,进度=完成数/总数
- 产品方案/UI:通过关联需求勾选进度,全部完成提示提交
- 版本胶囊条动态进度:调研/产品方案/UI 阶段独立计算
- 版本状态显示具体阶段名(调研中/产品设计中/UI设计中)
- 计划开始日期≤今天自动进入"进行中",版本状态联动
- 与我相关重写为左右布局:左侧分组导航,右侧任务/需求勾选
- 计划支持超期原因校验(结束日期超版本截止)
- 修复列表overflow裁剪问题、计划耗时当天至少1天

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-11 15:43:09 +08:00

43 lines
1.3 KiB
TypeScript

export type VersionStatus = 'developing' | 'planned' | 'released' | 'paused' | 'closed';
export const VERSION_STATUS_LABEL: Record<VersionStatus, string> = {
developing: '进行中',
planned: '规划中',
released: '已发布',
paused: '已暂停',
closed: '已关闭',
};
export const VERSION_STATUS_DOT: Record<VersionStatus, string> = {
developing: 'bg-blue-500',
planned: 'bg-orange-500',
released: 'bg-zinc-300',
paused: 'bg-purple-400',
closed: 'bg-zinc-400',
};
export const VERSION_STATUS_BG: Record<VersionStatus, string> = {
developing: 'bg-blue-500/10 text-blue-600',
planned: 'bg-orange-500/10 text-orange-600',
released: 'bg-zinc-100 text-zinc-600',
paused: 'bg-purple-100 text-purple-600',
closed: 'bg-zinc-100 text-zinc-500',
};
export const STAGE_LABEL: Record<string, string> = {
requirement: '调研中',
product_design: '产品设计中',
ui_design: 'UI设计中',
dev: '开发中',
integration: '联调中',
testing: '测试中',
released: '已发布',
};
export function getVersionDisplayStatus(status: VersionStatus, currentStage?: string): string {
if (status === 'developing' && currentStage && STAGE_LABEL[currentStage]) {
return STAGE_LABEL[currentStage];
}
return VERSION_STATUS_LABEL[status];
}