Skip to content

组织罗盘 OrgCompass v2.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 23 Sep 05:42

OrgCompass v2.4.0|岗位与编制的完整闭环

v2.4.0 把「岗位」这条线从只看不改变成可管理的闭环,并把应用内三个大功能统一为页面级子界面。

向后兼容声明

  • .orgproj 文件格式保持 4,本版未改动文件格式(src/types 与 project.ts 零改动),可无损读取旧版项目文件。
  • 没有删除任何净能力:被移动的都是入口位置,被移除的是原本就不可达的项。
  • 有两处行为收紧(不破坏既有数据,但封住了原来能走的操作路径),见下「行为变化」。

岗位与编制(新页面)

从顶部「岗位与编制」进入。它合并了原来的「岗位操作」弹窗与「缺口清单」弹窗 ——
两者本是同一份数据的两种看法(一个只读、一个写入),分开会出现「在 A 看、去 B 改」的断层。

  • 看到组织内所有岗位(含空岗位)+ 汇总条:岗位数 / 编制合计 / 在岗合计 / 待补 / 超额 / 未配置编制
  • 新增 / 编辑 / 删除岗位:新增可选目标部门、名称、序列、职级带宽、编制;编辑为行内表单;删除前说明影响
  • 编制就地可改,改完立即重算缺岗还是超编
  • 套岗:候选人显示「现属 部门 › 岗位」,按本部门 / 跨部门排列;确认后行内在岗名单立即变化
  • 按部门 / 按岗位双视图:同一个岗位名可能出现在多个部门(实测 15 个岗位实体只有 13 个名称)。按岗位视图合并同名岗位并标注「分布在 N 个部门」,可展开看各部门独立编制
  • 删除岗位后持续提示「当前有 N 名员工处于无明确岗位状态」,区分「未套岗」与「岗位已删除」并给出处置建议
  • 导出 Excel 与界面消费同一份筛选结果

部门增删与层级规则

  • 新增删除部门:卡内没有成员时允许删除(确认文案写明不影响任何人员);仍有员工时拒绝删除并列出具体是谁,要求先挪到其他部门;还有子部门时同理(保护子树不被静默丢弃)
  • 新建部门不得归属同级或下级部门:归属下拉只列层级更浅的部门;切换层级时非法归属自动退回「暂不指定」;不指定归属始终允许(可之后在画布上拖动归属)

子页面交互统一

「组织健康度」与「胜任度」由右侧抽屉弹窗改为页面级子界面,与「岗位与编制」共用同一外壳
(返回按钮 / 标题 / 操作区 / 内容区滚动),三个页面的外壳几何逐像素一致。

  • 「人岗核对」不再常驻主页面顶部,收进健康度页面并直接列出完整清单(不再需要"点横幅 → 开弹窗")
  • 同一时刻最多打开一个子页面,三者之间可直接切换

虚拟员工(兼岗)新流程

  • 创建时必须选择目标部门与目标岗位;目标部门排除本人现属部门(同一部门不会出现两次同一个人)
  • 目标部门没有岗位时可以顺手新建,岗位与副本在同一次变更里落地(无中间态)
  • 修复旧实现的三个缺陷:副本被加进同一部门、positionId 为空(那条兼岗没有岗位、不计入任何岗位在岗)、无确认界面

入口归位与顶部菜单

  • 「行业模板」并入左侧「载入示例数据」(5 个行业模板带组织结构预览);「工具模板」移入左侧「文件上传」,与上传行配对
  • 左侧重复的「组织健康度」入口移除;硬编码的 10 人示例数据删除
  • 顶部菜单两行合并为一行(高度 104px → 48px);移除写死的项目名「组织架构项目」与版本号徽标(版本移入品牌 tooltip)
  • 侧栏移除静态「职级颜色」图例

编制冻结

Position.status = 'frozen' 全仓没有任何写入点(唯一会写 status 的是「归档岗位」,只写 archived),
因此缺口清单的「编制冻结」筛选项对真实用户永远匹配 0 行。本版从界面隐藏该筛选项;
数据模型、口径(冻结不计缺口)与导出列全部保留,待将来补上「冻结 / 解冻编制」的操作入口后恢复。

行为变化(升级前请阅读)

变化 说明
新建部门不得归属同级或下级 以前能建,现在会被拒绝并说明原因。既有结构不会自动修改,旧项目文件照常打开
虚拟兼岗必须指定目标岗位且必须换部门 以前建的「同部门 + 无岗位」兼岗副本仍然存在,但在新版里会算作未套岗,并出现在「无明确岗位」提示中 —— 可在「岗位与编制」里补岗位或删除该记录
入口位置调整 顶部「岗位」→「岗位与编制」;顶部「缺口清单」「工具模板」「行业模板」与左侧「组织健康度」的入口归位(见 README「操作入口速查」)
「编制冻结」筛选项隐藏 该状态本就无法产生,详见上节

仓库结构整理

  • 根目录的 4 个 test_*.xlsx 清理:2 个是活的端到端夹具 → 移入 tests/fixtures/excel/;2 个无引用(v2.3.1 审计 T-14 已标记)→ 删除
  • 删除 2 个无引用的图片资产(docs/assets/banner.jpg、docs/assets/org-chart.png)
  • docs/ 归类:design/(设计记录)+ releases/(发布说明)+ assets/(README 视觉资产);内部归档仍按版本号前缀留在 docs/ 根(.gitignore 逐周期忽略)

验证

  • 807 项单元 / 组件测试 · 131 项真实 Chromium 交互测试 · 83 项视觉回归(几何断言)
  • npm run verify 全绿(版本一致性 / 类型 / lint 0 错误 / 覆盖率 / 构建)
  • 关键修复均配突变验证(把修复回退掉,对应测试立即失败)