feat: P1 薪酬模板驱动计算 - 公式引擎 + totalPay/netPay 模板化
- 新增 formula-engine.ts: 公式解析、依赖提取、拓扑排序 - PayslipItem 增加 calcType(FORMULA/SYSTEM) 和 dependencies 字段 - DEFAULT_ITEMS 补充 calcType 和 dependencies - ensureDefaultTemplate 增加已有组织新字段迁移逻辑 - calcBatchEntry: totalPay 从模板公式计算(回退硬编码) - calcBatchEntry: netPay 从模板公式计算(回退硬编码)
This commit is contained in:
@@ -966,7 +966,9 @@ model PayslipItem {
|
||||
name String // 显示名称
|
||||
code String // 字段代码
|
||||
type PayslipItemType @default(INPUT)
|
||||
formula String? // 计算公式(CALCULATED 类型),如 "baseSalary + overtimePay + allowance - deduction"
|
||||
formula String? // 计算公式(CALCULATED 类型),如 "baseSalary + overtimePay + allowance - deduction";SYSTEM 类型存系统函数标识如 SOCIAL_EMP
|
||||
calcType String @default("FORMULA") // FORMULA: 公式解析; SYSTEM: 系统函数计算(仅 CALCULATED 类型有效)
|
||||
dependencies String @default("[]") // JSON数组:该字段依赖哪些其他字段代码
|
||||
order Int @default(0)
|
||||
isDefault Boolean @default(true) // 系统预置项不可删除
|
||||
isEditable Boolean @default(true)
|
||||
|
||||
Reference in New Issue
Block a user