PayrollManagementSystem/tasks/plan.md

73 lines
6.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 下一阶段开发计划:评审收口、交付设计与同版本验收
日期:2026-10-28。基于关联核验与同步管理轮次完成后的实际情况制定;上一轮计划与任务清单已归档至 `tasks/archive/2026-10-27-tplus-sync-*.md`。
## 当前实际状况
- 同步管理已完成:批次/异常/重试/锁/页面验收通过;staging 累计 933,203 行,六类工资业务表尚未接入写入。
- 口径进展:澄清清单 24 项答复基本到齐;对照表 v2 已裁决经理个人户(#7)、协助 25%(#6/#15)、信息员(#9)、企业户 3‰(#20)等冲突。9.8 方案中蓝色字体标注的原方案算法作废,毛利润率按不含运费口径执行。
- 当前确认入口:`docs/客户待确认事项表_2026-10-28_客户版.xlsx`。业务与对接问题按 B01–B08、T01–T09 归并,环境及验收为 E01–E04,本轮增加 S1;F 列保留客户答复。旧 v2 表按用户决定删除,旧编号对应关系见 C1 第 10 节。
- 经理个人户:微信沟通确定按 9.8 方案执行、不计个人户部分,客户群确认中;系统参数已预留,确认后调整参数即可,无需开发。
- 工程收口:原有迁移、后端、前端与文档已拆分提交并推送;此前完整回归 990 项通过。
- 环境基准:按用户最新决定,先以备份源 SQL Server 2008 R2 10.50.1600 推进开发验收,生产地址、账号和部署信息后补。合法介质与真实同版本实测仍待完成。
## 目标与顺序
先完成 P0.5 连接修复、运行手册与安全决策记录,再补 D1/D2 设计和 C1 回填清单。当前继续本地开发与隔离测试;业务答复回收后按清单更新设计,再实施导入。生产环境信息不阻塞本阶段设计工作。
### P0 工程收口(已完成)
1. 将本轮 T+ 同步管理成果按迁移、后端服务、前端页面、文档拆分为规范提交;合入前本地构建与测试通过。
### P0.5 评审收口(本轮)
- 兼容性脚本复用应用的连接文件校验与 SQLAlchemy URL,消除手工连接串拼接;应用 URL 已有方言转义,不重复造一套转义器。
- 默认启用加密;隔离开发环境仅允许显式回退并记录原因,不自动降级、不代填私有配置。真实旧版 TLS 兼容留待 A3。
- 补齐 `docs/T+本地恢复与同步开发手册.md`,区分容器恢复脚本与 Windows 来宾恢复步骤。
- 确认表新增 S1:用户已同意当前开发阶段暂不单独加密或掩码,生产保护、保留期与备份访问范围仍待统一确认;本轮不改敏感数据。
- 定点验证连接特殊字符、默认 TLS、显式回退、错误脱敏和备份源版本判定,再在隔离 MySQL/Redis 执行完整回归。通过后分代码与文档提交推送。
本轮验证结果:19 项定点、1001 项完整回归与 Ruff 通过;临时测试容器及卷已清理。确认表保留原业务答复与引文,环境材料与 S1 已更新;D1/D2 为设计交付,实际托管和告警未启用。
### 轨道 A:同版本验收环境(外部依赖:安装介质)
- A1 先行细化 `docs/SQLServer2008R2测试环境.md`:装机步骤、恢复步骤,以及驱动、只读权限、六类查询、中文/日期/金额、断连超时、重复同步的验收清单。
- A2 取得合法介质后,在 `D:\work\app\tplus-vm` 完成备份源 10.50.1600 环境安装;当前不是已完成状态。
- A3 恢复原始备份并执行完整验收,产出报告,关闭同版本兼容 PENDING 状态。
### 轨道 B:业务口径确认(外部依赖:客户填写)
- B1 后续发送当前客户版:客户在 F 列填写业务答复,IT/服务商补充 E01–E03 的资料;同一例单可复用,已确认规则不重复提问。
- B2 跟进客户群对经理个人户的反馈,回填 L6。
- B3 答复回收后更新字段映射文档与暂定口径记录:二次分配三项(L3–L5)追认、三级角色职权(L7)在页面验收时核对。
任务 B1–B3 是工作编号;当前客户版使用 B01/T01/E01 等编号,C1 中的旧编号仅供追溯。发送确认单是后续人工事项,本轮不代发消息。
### 轨道 C:T+ 数据导入开发(依赖轨道 B 闭环;设计可先行)
- C1 先行起草「staging → 业务表写入」设计:表映射、金额精度(金额用 Decimal、比例和日斜率用 Fraction)、幂等与重算授权留痕、人工字段保护(回款/发货批次由系统人工指定,业务归属变更不回溯历史)、事务边界;明确标注等待确认的差异点,口径闭环后评审定稿。
- C2 主数据导入(人员、客户、产品):依赖 #9、#10、#11。
- C3 订单 → 发货 → 回款导入:依赖 #1–#8、#13(成本、日期、分摊、核销、初始化)。
- C4 负向事件处理(退货、红冲、负绩效):依赖 #8;口径已定为负绩效照公式出数、不归零。
- C5 增量变更发现:依赖 #13;收付款表无 `updated` 字段,需验证 rowversion 与删除/作废的发现方式,在此之前时间水位保持禁用。
### 轨道 D:交付收尾(依赖 A3 与轨道 C 完成)
- 本轮前置产出 `docs/T+交付部署设计_2026-10-28.md`:首期推荐任务计划程序,明确排队、进程恢复和业务重试的区别;周任务、阈值为设计默认,外部告警通道待确认。
- D1 `tplus-worker` 托管(首期采用 Windows 任务计划程序)。
- D2 每周同步任务编排与失败告警。
- D3 客户内网独立部署与最终验收。
## 验收与保留门槛
- 未确认项不进入正式核算;确认单未闭环前不实施业务表写入。
- 导入保护人工字段;每笔回款只核算一次;重算须授权并留痕。
- 2008 R2 验收未完成前,2022 恢复副本的结果不作为同版本兼容证据。
- 每个任务先完成定点测试再进入依赖任务;回归使用隔离的 MySQL/Redis。
- C1 尾部按 #1–#13、L1–L7、B1–B5/M1–M5、S1 列出答复回填顺序。业务答复、字段存在、同版本实测和生产部署分别验收,不能互相代替。
- S1 的暂缓加密是用户批准的当前开发阶段例外;生产敏感字段策略仍是上线前待确认项。
## 项目后续路线
轨道 C 完成、A3 通过后进入轨道 D;部署验收通过即转入运维期(每周同步、参数调整走系统设置与版本管理)。