From 0ebba9d6b7963c426f53816b0962fbae777be4b4 Mon Sep 17 00:00:00 2001 From: weicw <594098497@qq.com> Date: Mon, 26 Oct 2026 10:49:09 +0800 Subject: [PATCH] =?UTF-8?q?:white=5Fcheck=5Fmark:=20=E8=A1=A5=E5=85=85?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E8=AF=A6=E6=83=85=E9=A9=B3=E5=9B=9E=E5=8E=9F?= =?UTF-8?q?=E5=9B=A0=E4=B8=8E=E8=BD=A6=E8=BE=86=E6=9F=A5=E7=9C=8B=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E8=83=BD=E5=8A=9B=E5=88=A4=E5=AE=9A=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CertAuditServiceImplTest.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/blade-service/blade-transport/src/test/java/org/springblade/transport/service/impl/CertAuditServiceImplTest.java b/blade-service/blade-transport/src/test/java/org/springblade/transport/service/impl/CertAuditServiceImplTest.java index b780f977..df9bbd10 100644 --- a/blade-service/blade-transport/src/test/java/org/springblade/transport/service/impl/CertAuditServiceImplTest.java +++ b/blade-service/blade-transport/src/test/java/org/springblade/transport/service/impl/CertAuditServiceImplTest.java @@ -38,6 +38,7 @@ import static org.mockito.Mockito.when; import static org.springblade.transport.support.CertAuditPermissions.DRIVER_AUDIT_MENU; import static org.springblade.transport.support.CertAuditPermissions.DRIVER_VIEW_MENU; import static org.springblade.transport.support.CertAuditPermissions.VEHICLE_AUDIT_MENU; +import static org.springblade.transport.support.CertAuditPermissions.VEHICLE_VIEW_MENU; /** * 管理端认证审核测试。 @@ -357,6 +358,18 @@ class CertAuditServiceImplTest { assertNull(detail.getEffectiveRecordId()); } + @Test + @DisplayName("审核详情:驳回原因回填,供详情页直接展示") + void detailReturnsRejectReason() { + TransportCertRecord record = vehicleRecord(TransportCertRecord.STATUS_REJECTED); + record.setSnapshotJson("{\"vin\":\"NEW\"}"); + record.setRejectReason("照片不清晰"); + when(certRecordService.getById(RECORD_ID)).thenReturn(record); + when(transportVehicleService.getById(VEHICLE_ID)).thenReturn(vehicle(null)); + + assertEquals("照片不清晰", service.detail(RECORD_ID).getRejectReason()); + } + // ------------------------------------------------------------ 审核能力 @Test @@ -395,6 +408,29 @@ class CertAuditServiceImplTest { assertFalse(capability.getCanAudit()); } + @Test + @DisplayName("能力判定:只有车辆查看菜单时也能查看列表与详情,但审核按钮禁用") + void capabilityVehicleViewWithoutAudit() { + when(permissionHandler.hasMenu(VEHICLE_VIEW_MENU)).thenReturn(true); + + CertAuditCapabilityVO capability = service.capability(); + + assertTrue(capability.getCanView()); + assertFalse(capability.getCanAudit(), "只有查看权限时不得允许审核"); + } + + @Test + @DisplayName("能力判定:查看与审核菜单分属不同对象时两项都放行") + void capabilityMixedMenus() { + when(permissionHandler.hasMenu(DRIVER_VIEW_MENU)).thenReturn(true); + when(permissionHandler.hasMenu(VEHICLE_AUDIT_MENU)).thenReturn(true); + + CertAuditCapabilityVO capability = service.capability(); + + assertTrue(capability.getCanView()); + assertTrue(capability.getCanAudit()); + } + // -------------------------------------------- 驳回原因的展示缓存 @Test