Commit 1765e42e9035e62c3006fa3e860c93f0c33e3b80

Authored by YunaiV
1 parent cb160583

test(hrm): 补充工资表空分类表头回归测试

yudao-module-hrm/src/test/java/cn/iocoder/yudao/module/hrm/service/salary/monthrecord/HrmSalaryMonthRecordServiceImplTest.java
... ... @@ -128,6 +128,27 @@ public class HrmSalaryMonthRecordServiceImplTest extends BaseDbUnitTest {
128 128 }
129 129  
130 130 @Test
  131 + public void testCreateMonthRecord_emptyOptionCategory() {
  132 + // mock 数据:加班工资明细已隐藏,基本工资明细仍可见
  133 + when(salaryOptionService.getSalaryOptionList(false, true)).thenReturn(Arrays.asList(
  134 + HrmSalaryOptionDO.builder().code(10).parentCode(0).name("基本工资").build(),
  135 + HrmSalaryOptionDO.builder().code(10101).parentCode(10).name("岗位工资").build(),
  136 + HrmSalaryOptionDO.builder().code(180).parentCode(0).name("加班工资").build()));
  137 + HrmSalaryMonthRecordCreateReqVO reqVO =
  138 + new HrmSalaryMonthRecordCreateReqVO().setYear(2026).setMonth(7);
  139 +
  140 + // 调用
  141 + Long id = monthRecordService.createMonthRecord(reqVO);
  142 +
  143 + // 断言:不生成空分类,避免前端把分类当成工资项
  144 + List<HrmSalaryMonthRecordDO.OptionHeader> headers = monthRecordMapper.selectById(id).getOptionHeaders();
  145 + assertEquals(1, headers.size());
  146 + assertEquals(Integer.valueOf(10), headers.get(0).getCode());
  147 + assertEquals(1, headers.get(0).getChildren().size());
  148 + assertEquals(Integer.valueOf(10101), headers.get(0).getChildren().get(0).getCode());
  149 + }
  150 +
  151 + @Test
131 152 public void testCreateMonthRecord_salaryConfigCycle() {
132 153 // mock 数据
133 154 when(salaryConfigService.getSalaryConfig()).thenReturn(
... ...