gongxiangp2/PRODUCT.md
chenpei 6c6c282203 feat: 全站视觉统一白皮书语言 + 个人档案改造 + 顶栏平台化
视觉统一(Zen Minimal × Future Organic 白皮书语言,全站浅色单主题):
- 登录页:品牌→由壹点·品牌中心,白纸底+发丝线+柔光光晕,黑按钮
- 作品过稿:深灰头→白皮书,返回链接→返回创意资产库
- 绩效考核:桌面+移动双头部换白皮书,标题改绩效考核,返回改链接
- 组织架构:BoardShell+页面 76 处调色板全量替换(#eef1f4→#fafafa 等)
- admin 后台:MaterialsHeader(面包屑治理与设置),Tab 栏墨色高亮
- 深色主题废弃:globals.css 移除媒体查询,tailwind darkMode:'class' 不挂 .dark
- 设计文档同步更新:AGENTS.md UI 基线/DESIGN.md/PRODUCT.md/README.md/design-qa.md

个人档案(原个人中心):
- API 合并权威人员档案(getEmployeeByUserId → 花名/工号/部门/职位/M-P等级/主管/状态)
- 页面白皮书化:权威档案卡(只读 HR 字段)+ 账号区(头像上传)+ 素材/收藏

顶栏平台化:
- MaterialsHeader 双模式:首页(五板块导航+全套工具+菜单)/板块(面包屑)
- 菜单重排:我的档案/绩效考核/作品过稿看板‖更新记录/提交反馈‖治理与设置‖退出
- 菜单头身份行:花名+职位·部门(权威档案)
- 首页排序:01 创意资产库(全员)→ 02 组织管理(管理员)→ 03-05 规划中
- 素材库改名创意资产库,全站同步(索引/导航/卡片/按钮/页脚)
- 排行榜换白皮书(白底发丝线+琥珀前三名)

构建修复:
- tsconfig 排除 output/(本地审计临时文件不再卡类型检查)
- 存储边界门禁豁免 output/(与 .dockerignore 对齐)
2026-08-15 14:16:20 +08:00

4.7 KiB
Raw Blame History

Product

Platform

web

Stack

Next.js 14 (App Router) + React 18 + TypeScript + TailwindCSS + PostgreSQL(Prisma)。既有代码库已定栈。

Users

  • 系统管理员:维护平台人员与组织数据,需要看到全量真实组织架构、人员归属、职级与汇报线。
  • 部门负责人:查看本部门组织与人员情况(本部门范围内)。
  • 用户为内部员工(非程序员),界面需日常语言、少术语、可直接读。

Product Purpose

把「由壹点3D素材库」逐步改造为「品牌中心部门看板」(对内品牌:由壹点·品牌中心,隶属由壹点软件集团)。第一阶段(2026-08-15)已完成:登录落点切换为看板首页 /,素材库整体迁至 /materials,组织架构上移为顶层 /organization(旧路径 /admin/org 服务端跳转)。

Positioning

以钉钉唯一值为唯一人员身份判定依据,统一接入公司 HR 报表库(非钉钉通讯录),人员/组织数据全平台一致;考核调研与素材库共用同一份权威人员主档,业务特殊数据隔离在各自专属表。素材库为在产系统,改造期间上传/下载/分享/权限链路不动。

Operating Context

  • 人员权威数据源:公司 SQL Server 报表库(rpt schema),每日 02:00(Asia/Shanghai)自动同步组织架构→在职状态→离职联动。
  • 只有「开过素材库账号 + 已建立钉钉绑定」的人员进入展示/统计体系(约 503 人);无账号的仓储/物流等约 1200 人不纳入。
  • 在职判定用规范化 employmentState(ACTIVE/RESIGNED/UNKNOWN,UNKNOWN 视为在职),不用关键词匹配。

Capabilities and Constraints

  • 看板首页 /:五大板块编号索引(01 创意资产库全员可进 / 02 组织管理仅管理员 / 03-05 规划中如实标灰),入场"对焦"动效,悬停物理重量语言。
  • 创意资产库 /materials:原素材库首页,业务功能不动;顶栏已统一为看板语言(MaterialsHeader,功能与旧顶栏等价)。
  • 组织架构页 /organization:组织树 + 人员列表,展示 M/P 等级、人员归属(部门路径)、直属主管、在职状态。
  • 纯展示(只读),不改数据。
  • 权限:系统管理员看全部;部门负责人看本部门。
  • 离职人员默认隐藏,可切换「含离职」。
  • 无绑定账号(无钉钉 ID,约 15 人)与部门未确定人员(约 57 人)单独分组,不消失、不硬塞部门。
  • 数据缺口如实展示:直属主管覆盖率低(约 158/503)、部分人员无 M/P 等级。

Brand Commitments

  • 平台名:由壹点·品牌中心(隶属由壹点软件集团;素材库模块沿用「由壹点3D素材」之名)。
  • 首页视觉方向(2026-08-15 用户裁定):Zen Minimal × Future Organic 融合——白纸(#fafafa)黑字(#1a1c1d)的瑞士编辑排印、发丝线、超大留白、编号索引列表(作品集语言)、右上角唯一柔紫光晕(#6e79c8 系)缓慢呼吸;平面化无阴影,黑实心按钮 8px 圆角。方向源自用户在 Stitch 自生成的候选 3/4 + 作品集文件夹两份 DESIGN.md(Monochrome/Studio Minimalist)。此前的「云采石场」语言仅保留在组织架构页(BoardShell),后续按新方向对齐。
  • logo 双版本规则:黑底表面(素材库旧顶栏)用 headerLogoUrl(亮色图案);浅底表面(看板首页、BoardShell)用 loginLogoUrl(深蓝+橙图案)。两者内容不同,不可混用。
  • 全站浅色单主题(2026-08-15 裁定):深色主题废弃,tailwind darkMode: 'class' 且不挂 .dark;新代码禁止 dark: 类。
  • 动效标准:略丰富但克制(用户既定),GSAP + matchMedia(prefers-reduced-motion) + fromTo + clearProps,200-500ms,信息效率优先。

Evidence on Hand

  • 思维导图:资料/品牌中心部门看板(初版).jpg(5 大板块规划)。
  • 交接文档:docs/人员架构界面切换-交接文档-2026-08-14.md。
  • 数据盘点:scripts/diagnose-people-architecture.ts(只读,可重复跑)。

Product Principles

  1. 人员身份只认钉钉唯一值;姓名/邮箱仅人工排错,不自动建绑定。
  2. 只展示「有账号+绑定」的人,无账号的仓储/物流等不纳入统计。
  3. 在职判定用规范化 employmentState,UNKNOWN 视为在职(宁可多留)。
  4. 数据如实展示,不造假:主管/等级缺失就显示"未记录"。
  5. 归属与署名分离:素材归属与作者署名对不上通常是正确的,不"修正"。

Accessibility & Inclusion

内部后台工具,目标用户为内部员工;遵循基础可访问性(语义化、键盘可操作、对比度达标)。