fix: record oversize device measurements for review

This commit is contained in:
2026-08-08 11:33:02 +08:00
parent 54893aeb6b
commit 2ee78aafc2
3 changed files with 26 additions and 9 deletions
@@ -56,11 +56,16 @@ class CustomerDimensionWeightingServiceTest {
}
@Test
void dimensionsBeyondTheLargestRuleAreRejected() {
assertThatThrownBy(() -> service.load(10001L).resolve(
new BigDecimal("60.001"), new BigDecimal("50"), new BigDecimal("50")))
.isInstanceOf(BizException.class)
.hasMessageContaining("超出客户最大箱规");
void dimensionsBeyondTheLargestRuleAreRecordedUsingActualDimensions() {
var weighted = service.load(10001L).resolve(
new BigDecimal("60.001"), new BigDecimal("50"), new BigDecimal("50"));
assertThat(weighted.boxType()).isNull();
assertThat(weighted.outerLengthCm()).isEqualByComparingTo("60.001");
assertThat(weighted.outerWidthCm()).isEqualByComparingTo("50");
assertThat(weighted.outerHeightCm()).isEqualByComparingTo("50");
assertThat(weighted.calculationRuleVersion()).isEqualTo("ACTUAL_DIMENSION_OVERSIZE_V1");
assertThat(weighted.warning()).contains("已按实测尺寸记录").contains("人工复核");
}
@Test