/** * 工作台入口目录:只描述「有这个能力时显示什么」。 * 谁能看见由 /auth/my-perms 决定,这里不写人、不写岗位。 */ export const PERSONAL_APPS = [ { id: 'clock', title: '考勤打卡', icon: '📍', menu: 'personal', action: 'punch', url: '/pages/tabs/clock' }, { id: 'todo', title: '待办审批', icon: '☑', menu: 'personal', action: 'approve', url: '/pages/todo/list', badge: 'todo' }, { id: 'apply', title: '发起申请', icon: '✎', menu: 'personal', action: 'apply', url: '/pages/apply/list' }, { id: 'expense', title: '我的报销', icon: '🧾', menu: 'personal', action: 'view', url: '/pages/bills/list?type=expense&title=我的报销' }, { id: 'loan', title: '我的借支', icon: '¥', menu: 'personal', action: 'view', url: '/pages/bills/list?type=loan&title=我的借支' }, { id: 'report', title: '工作汇报', icon: '▤', menu: 'personal', action: 'report', url: '/pages/reports/list' }, { id: 'salary', title: '工资条', icon: '💳', menu: 'personal', action: 'view', url: '/pages/me/payslip' }, { id: 'perf', title: '我的绩效', icon: '↗', menu: 'personal', action: 'view', url: '/pages/me/performance' }, { id: 'archive', title: '我的资料', icon: '👤', menu: 'personal', action: 'view', url: '/pages/me/archive' }, { id: 'notice', title: '公告', icon: '📢', menu: 'personal', action: 'view', url: '/pages/notice/list' }, { id: 'coop', title: '工作协同', icon: '🤝', menu: 'personal', action: 'view', url: '/pages/coop/list' }, { id: 'seals', title: '我的用章', icon: '©', menu: 'personal', action: 'view', url: '/pages/bills/list?type=seal&title=我的用章' }, { id: 'contacts', title: '通讯录', icon: '☎', menu: 'personal', action: 'view', url: '/pages/tabs/contacts' } ] export const ERP_MODULES = [ { id: 'bidding', title: '投标管理', icon: '◎', menu: 'bidding', action: 'view', url: '/pages/erp/hub?id=bidding' }, { id: 'project', title: '项目管理', icon: '▣', menu: 'project', action: 'view', url: '/pages/erp/hub?id=project' }, { id: 'finance', title: '财务管理', icon: '◈', menu: 'finance', action: 'view', url: '/pages/erp/hub?id=finance' }, { id: 'hr', title: '人事管理', icon: '☰', menu: 'hr', action: 'view', url: '/pages/erp/hub?id=hr' }, { id: 'contracts', title: '合同管理', icon: '▤', menu: 'contracts', action: 'view', url: '/pages/erp/hub?id=contracts' }, { id: 'seals', title: '证照用章', icon: '◆', menu: 'seals', action: 'view', url: '/pages/erp/hub?id=seals' }, { id: 'crm', title: '客户管理', icon: '◇', menu: 'crm', action: 'view', url: '/pages/erp/hub?id=crm' }, { id: 'system', title: '系统管理', icon: '⚙', menu: 'system', action: 'view', url: '/pages/erp/hub?id=system' } ] export const ERP_TABS = { bidding: [ { id: 'filter', title: '项目筛选', action: 'view' }, { id: 'special-filter', title: '特殊筛选', action: 'specialFilter' }, { id: 'doc-make', title: '标书制作', action: 'view' }, { id: 'special-make', title: '特殊制作', action: 'specialMake' }, { id: 'execution', title: '投标执行', action: 'view' }, { id: 'results', title: '中标结果', action: 'view' }, { id: 'abort', title: '落标归档', action: 'view' }, { id: 'stats', title: '项目统计', action: 'view' } ], project: [ { id: 'list', title: '项目列表' }, { id: 'progress', title: '项目进度' }, { id: 'workhours', title: '工时记录', action: 'hours' }, { id: 'accept', title: '项目验收', action: 'accept' } ], finance: [ { id: 'ledger', title: '总账管理' }, { id: 'expense', title: '报销记录' }, { id: 'loan', title: '借支记录' }, { id: 'tender-bond', title: '投标保证金' }, { id: 'invoice', title: '开票记录' }, { id: 'receivable', title: '应收账款' } ], hr: [ { id: 'staff', title: '员工管理' }, { id: 'org', title: '组织管理' }, { id: 'attendance', title: '考勤管理' }, { id: 'salary', title: '薪酬核算' }, { id: 'notice', title: '公告发布', action: 'notice' } ], contracts: [ { id: 'bid', title: '投标合同' }, { id: 'direct', title: '直签合同' }, { id: 'other', title: '其他合同' } ], seals: [ { id: 'qualification', title: '资质管理' }, { id: 'borrow', title: '证照借用' }, { id: 'logs', title: '用章记录' }, { id: 'manage', title: '印章管理' } ], crm: [ { id: 'list', title: '客户列表' }, { id: 'opportunity', title: '商机跟进', action: 'follow' }, { id: 'pool', title: '公海池', action: 'claim' } ], system: [ { id: 'security', title: '权限设置', action: 'grant' }, { id: 'attend', title: '考勤规则', action: 'attend' }, { id: 'logs', title: '操作日志' }, { id: 'online', title: '在线人数' } ] }