月度工资、工资条
这篇解决什么
一个月的工资怎么从试算走到确认、发薪和工资条。读完能对上 hrm_salary_batch、runTrial / confirmBatch / registerPayment / publishPayslips,以及 209 / 210 两条流程 key。
默认端口 48080,管理端前缀 /admin-api。PC 开发页 http://127.0.0.1:5800。规则和档案见 计薪设置、薪资档案。
示意图:批次自己管试算和台账。锁数、登记发放走两张审批单,不要手改 approveStatus。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 批次 | @RequestMapping("/hrm/salary-batch") | ruoyi-office/yudao-module-hrm/.../controller/admin/salary/SalaryBatchController.java |
| 批表 | hrm_salary_batch | SalaryBatchDO |
| 人员行 | hrm_salary_batch_employee | SalaryBatchEmployeeDO |
| 项目明细 | hrm_salary_batch_employee_item | SalaryBatchEmployeeItemDO |
| 工资条 | hrm_salary_payslip | SalaryPayslipDO |
| 确认单 | 209,key hr_salary_payroll_confirm_bill | SalaryPayrollConfirmBillController |
| 发薪单 | 210,key hr_salary_payment_bill | SalaryPaymentBillController |
| 个税台账 | hrm_employee_tax_ledger | 试算写入,确认后转已确认 |
| PC | /hrm/salary/batch、/hrm/salary/payslip | ruoyi-office-vben/apps/web-antd/src/views/hrm/salary/ |
确认详情 /hrm/salary/confirm-info,发薪详情 /hrm/salary/payment-info。按钮:hrm:salary-batch:trial / confirm / pay / publish-payslip。

本系统截图:人力 → 薪酬管理 → 薪资批次。试算、确认、发薪、发工资条按列状态往下走。

本系统截图:薪资确认单 info。锁数走 209,不要手改批次 approveStatus。
批次怎么走
SalaryBatchService 把状态拆开:dataPrepareStatus、calcStatus、approveStatus、payStatus、payslipStatus。
| 名称 | 说明 | 仓库路径 |
|---|---|---|
runTrial | 按主体拉档案,算应发/扣款/实发/公司成本 | SalaryBatchServiceImpl |
| 确认单通过 | 回调 confirmBatch,锁 approveStatus | SalaryPayrollConfirmBillServiceImpl |
| 发薪单通过 | 回调 registerPayment | SalaryPaymentBillServiceImpl |
publishPayslips | 必须已发薪,才写 hrm_salary_payslip | 同 Service |
示意图:试算可重跑。确认之后不要再当草稿改。工资条是发放后的快照,不是试算结果本身。
不要跳过确认单直接改批次
confirmBatch 给审批回写用。页面上的「确认」应落到 hr_salary_payroll_confirm_bill。手改 approveStatus,流程中心对不上,下月累计预扣也会乱。
试算会读打卡、考勤扣款规则、社保公积金规则、个税规则,以及已发布的绩效结果(算绩效工资时)。缺档案或城市对不上规则,行上会打异常标记,先修档案再重算。
配置与操作
在 薪资批次 按主体、期间建批次 → runTrial → 核对异常行 → 发起确认单 209 → 通过后再发薪单 210 → 最后 publishPayslips。确认 / 发薪详情在 confirm-info / payment-info。未确认不要发工资条。
