Stop shipping hard-coded demo docs/projects into production builds, drop local mock items on authoritative empty server lists, and purge stale demo seed residue from localStorage on boot. Co-authored-by: Cursor <cursoragent@cursor.com>
127 lines
3.8 KiB
TypeScript
127 lines
3.8 KiB
TypeScript
/** Demo-only DEFAULT_PROJECTS (gated via @demo-seeds). */
|
|
import { ProjectInfo, ProjectMemberRole } from '../types/workbench';
|
|
import { TEN_PROJECTS_LIST } from './tenProjectsDemo';
|
|
|
|
/**
|
|
* 默认预设项目列表与成员职责基线
|
|
* 包含:5201 (NeuroPulse), 3 (CUSA-Ultra), 10 个医疗器械评审项目 (6001~6010)
|
|
* 默认成员:张工 (创建者/编制人), 李主管 (审核人), 王总监 (批准人)
|
|
*/
|
|
export const DEFAULT_PROJECTS: ProjectInfo[] = [
|
|
{
|
|
id: 5201,
|
|
title: '超声吸引系统 (NeuroPulse-CUSA)',
|
|
deviceType: '数字化高频超声手术吸引系统',
|
|
description: '神经外科颅内微创高频超声吸引与切割系统研发项目',
|
|
creatorId: 2,
|
|
creatorName: '张工',
|
|
createdAt: '2026-09-08 09:00',
|
|
members: [
|
|
{
|
|
userId: 2,
|
|
userName: '张工',
|
|
department: '机器人与微创器械研发中心',
|
|
position: '方案工程师',
|
|
role: 'creator',
|
|
status: 'active',
|
|
joinedAt: '2026-09-08 09:00',
|
|
},
|
|
{
|
|
userId: 3,
|
|
userName: '李主管',
|
|
department: '机器人与微创内窥镜研发中心',
|
|
position: '研发项目技术主管',
|
|
role: 'reviewer',
|
|
status: 'active',
|
|
joinedAt: '2026-09-08 09:10',
|
|
},
|
|
{
|
|
userId: 4,
|
|
userName: '王总监',
|
|
department: '医疗器械研发事业部',
|
|
position: '微创器械研发总监',
|
|
role: 'approver',
|
|
status: 'active',
|
|
joinedAt: '2026-09-08 09:15',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 3,
|
|
title: '数字化超声手术吸引系统 (CUSA-Ultra)',
|
|
deviceType: '高频超声手术吸引切割系统',
|
|
description: '多频段钛合金压电换能手术吸引切割设备研发',
|
|
creatorId: 2,
|
|
creatorName: '张工',
|
|
createdAt: '2026-09-07 14:00',
|
|
members: [
|
|
{
|
|
userId: 2,
|
|
userName: '张工',
|
|
department: '机器人与微创器械研发中心',
|
|
position: '方案工程师',
|
|
role: 'creator',
|
|
status: 'active',
|
|
joinedAt: '2026-09-07 14:00',
|
|
},
|
|
{
|
|
userId: 3,
|
|
userName: '李主管',
|
|
department: '机器人与微创内窥镜研发中心',
|
|
position: '研发项目技术主管',
|
|
role: 'reviewer',
|
|
status: 'active',
|
|
joinedAt: '2026-09-07 14:10',
|
|
},
|
|
{
|
|
userId: 4,
|
|
userName: '王总监',
|
|
department: '医疗器械研发事业部',
|
|
position: '微创器械研发总监',
|
|
role: 'approver',
|
|
status: 'active',
|
|
joinedAt: '2026-09-07 14:20',
|
|
},
|
|
],
|
|
},
|
|
...TEN_PROJECTS_LIST.map((p) => ({
|
|
id: p.id,
|
|
title: `${p.name} (${p.shortName})`,
|
|
deviceType: p.deviceType,
|
|
description: `对标临床 ${p.customer},面向 ${p.targetMarket} 准入。${p.intendedUse}`,
|
|
creatorId: p.creatorUserId || 2,
|
|
creatorName: '张工',
|
|
createdAt: '2026-09-11 08:30',
|
|
members: [
|
|
{
|
|
userId: 2,
|
|
userName: '张工',
|
|
department: '机器人与微创器械研发中心',
|
|
position: '方案工程师',
|
|
role: 'creator' as ProjectMemberRole,
|
|
status: 'active' as const,
|
|
joinedAt: '2026-09-11 08:30',
|
|
},
|
|
{
|
|
userId: 3,
|
|
userName: '李主管',
|
|
department: '机器人与微创内窥镜研发中心',
|
|
position: '研发项目技术主管',
|
|
role: 'reviewer' as ProjectMemberRole,
|
|
status: 'active' as const,
|
|
joinedAt: '2026-09-11 08:40',
|
|
},
|
|
{
|
|
userId: 4,
|
|
userName: '王总监',
|
|
department: '医疗器械研发事业部',
|
|
position: '微创器械研发总监',
|
|
role: 'approver' as ProjectMemberRole,
|
|
status: 'active' as const,
|
|
joinedAt: '2026-09-11 08:50',
|
|
},
|
|
],
|
|
})),
|
|
];
|
|
|