5.6 KiB
5.6 KiB
薪资明细本地数据接入与9月回退测试
本地配置
仅在隔离本地数据库配置中开启 PERFORMANCE_SALARY_LOCAL_TEST_FALLBACK=true。同时必须运行开发环境(NODE_ENV=development),生产和测试运行环境均不会启用回退,即使误设开关也无效。默认不开启。
当展示月为 2026-10 且该月没有任何已提交的有效调研响应时,整页调研、积分、交付率统一读取 2026-09。一旦出现任意提交,下一次查询自动改为10月,部分缺失不会逐人回退。其他月份不回退。
接口 GET /api/organization/performance-salary/details?month=YYYY-MM 返回 displayMonth、sourceMonth、isFallback 及四岗位数据。每次查询校验数据库当前权限,响应为私有、不缓存。没有新增数据库表或月度工资记录。
数据口径
- 岗位分配取展示月份的有效配置,不取回退月份;没有有效岗位分配、冲突或未知岗位编码均不显示。
- AI全案策划岗匹配
ai_planning_*;摄影中心岗匹配camera/editing/retouching;空间视觉岗匹配brand_designer;管理岗匹配director。 - 仅展示后台配置中未删除的长期薪资基础档案人员,按稳定人员ID关联有效岗位分配;不展示未建档人员。基础身份及三项工资只取该档案,不从HR资料猜工资。
- 调研仅取非草稿、非取消调研中已提交响应,同一人员同一指标取全部有效响应平均。缺失为
null,页面显示“——”,不按0补齐。 - 总分先乘指标占比,再汇总乘分区权重。非零权重指标缺失时不输出总分;零权重不阻断。权重本阶段只读。
- 空间视觉原模板的定量分区权重为空,不推定75%,该岗总分保持缺失。摄影模板尚无确定评分权重,总分也不补算。未确认的月度合计薪资、绩效系数和历史薪资不计算。
- 积分按
shujuku2-main.zip(源码版本0f1856c1c2ff728f3a6d9a17294d4bc42005bd56)规则:首个分配活动38da_544a至最后结束的审核活动c255_84b3,跨退回连续计时。以审核结束的上海时区月份计入,左闭右开;不要求审核通过或整个流程最终完结,运行中已结束审核的流程也计入。拒绝/终止流程不获基础分;退回运行中的流程沿用源码状态优先级。 - 策划、平面、出图按任务数量乘单分值,数值中的千位逗号先移除;实际用时先保留两位小数,超时天数向上取整每天扣5。同人每流程只扣一次,按较高积分角色承担(相同为策划),角色免扣及人工加减分继续生效;每个角色贡献保留两位小数后汇总。无标准时效仍计基础积分,不扣超时分;无审核结束时间不以最终完结时间替代。
- 策划仅归属表单“策划案负责人”,不根据历史任务执行人推断;平面/出图按各行“全案策划”。稳定钉钉ID优先,唯一姓名/花名可匹配,重名与多人归属不猜测。所选来源月份有快照缺少该字段时,接口返回私有、禁止缓存的可重试503,不展示部分积分;明确空值不推断归属。后续同步保存上游联系人稳定ID。
- 独立人工加减分从2026-06-01起生效:已知流程随所选审核月份,所选拒绝流程只计调整;未知流程随编码日期月份。不重复叠加已计入角色贡献的调整。
- 交付率采用既有流程时效服务,统计对应来源月份审核完结且已通过流程的个人未超时率;不把发起人或全局交付率当个人数据。仅人工加减分不使其成为该流程参与人。
ART_WORKFLOW_POINTS_CONFIG_DIR可指向私有积分调整配置目录,读取deductions.json和overtime_exemptions.json。未配置时只使用基础规则、无人工调整;显式配置文件无法读取或无效时查询报错,不静默忽略。ART_WORKFLOW_POINTS_DASHBOARD_URL指向原看板实时/api/art-design-dashboard/full轻量接口。配置后,从贡献记录的overtimeExempted=true读取流程、人员和角色,替代本地免扣文件;deductions.json的人工调整来源不变。不要使用可能过期的公开静态 JSON。仅免扣源使用60秒进程缓存并合并并发读取,远程请求10秒超时;缓存过期后读取失败或响应无效,薪资接口返回可重试503及WORKFLOW_POINTS_CONFIG_UNAVAILABLE,不使用旧缓存或空配置继续计算。薪资响应仍为私有、禁止共享缓存。远程撤销免扣后,最多60秒生效;不修改原看板配置、流程快照或工资档案。- Excel导出继续使用既有空白四岗模板,不传入聚合人员、真实工资或回退测试结果。
验证与边界
相关测试覆盖整页回退、生产禁用、任一10月提交自动恢复、月份一致、岗位映射、档案关联、重复评分平均、缺失值、两级权重、积分与交付率归属、旧超管会话、只读指定账号、未登录与无权限拒绝、no-store、失败重试和空白导出。
真实数据本地验证只在 127.0.0.1:55439/salary_isolated_20261023 运行,临时10月提交验证后删除本轮精确测试记录。原始数据、工资、私有测试脚本和界面证据不入库。生产发布另行遵守负责人回填维护流程;不执行结构迁移、人员初始化或人工加分。
积分修正回归另覆盖运行中已审核、末次审核跨月/未通过、无时效、无审核、拒绝/终止、仅表单负责人归属、历史多人执行不影响归属、上海月边界、每角色舍入和独立调整去重。交付率与积分独立筛选,不修改其他看板口径。