PayrollManagementSystem/backend/tests/unit
liuwenxin e6c2c71d1b fix(business): 行金额乘积显式两位固化,计提比例对负天数钳制
- 明细行金额(数量2位×单价4位可产 6 位小数)直写 DECIMAL(14,2) 被
  MySQL 静默舍入且回显漂移(创建响应读内存值、复查读库值不一致);
  显式 quantize HALF_UP 固化,舍入方向与 MySQL 一致(业务/发货同改)
- 先款后货回款(payment_days 为负)线性外插会算出高于起始值的计提
  比例(多算绩效);钳制到 0 天按起始比例计提,payment_days 出参仍
  照实输出负值(口径:2026-10-14 用户裁决)
- 新增 formula 负天数钳制单测与 quantize 回显/库值一致性集成用例

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-14 18:58:30 +08:00
..
__init__.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_audit_serialization.py fix(system): code-review 15 项修复(预览基数/维度校验/脱敏穿透/并发版本号等) 2026-10-13 02:28:20 +08:00
test_audit_service.py feat(system): 完成后端系统管理(审计/角色/操作日志/日志查询) 2026-10-10 16:28:04 +08:00
test_auth_schemas.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_captcha.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_config.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_exception_handlers.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_formula.py fix(business): 行金额乘积显式两位固化,计提比例对负天数钳制 2026-10-14 18:58:30 +08:00
test_jwt.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_log_schemas.py feat(system): 完成后端系统管理(审计/角色/操作日志/日志查询) 2026-10-10 16:28:04 +08:00
test_logging.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_login_limiter.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_models.py feat(business): 新增业务数据七表及 V5 迁移(业务/明细/状态留痕/发货/回款/评级配置) 2026-10-13 11:22:34 +08:00
test_param_registry.py feat(system): 计提公式模板注册表与精确分数计算函数 2026-10-12 16:22:32 +08:00
test_param_snapshot.py feat(system): 计提参数版本管理、变更留痕与计算预览接口 2026-10-12 20:24:17 +08:00
test_product_schema.py fix(product): 删除引用保护/单价小数位校验,IntegrityError 全局兜底转 400 2026-10-14 18:48:32 +08:00
test_response.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_role_schemas.py feat(system): 完成后端系统管理(审计/角色/操作日志/日志查询) 2026-10-10 16:28:04 +08:00
test_security.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00
test_token_blacklist.py chore: 初始化项目结构与登录鉴权模块 2026-10-09 18:46:36 +08:00