优化
This commit is contained in:
@@ -23,6 +23,10 @@ class IamOpenApiContractTest {
|
||||
.contains("PermissionCodesApiResponse:")
|
||||
.contains("TenantPageApiResponse:")
|
||||
.contains("TenantApiResponse:")
|
||||
.contains("PendingEnterpriseReviewListApiResponse:")
|
||||
.contains("PendingEnterpriseReviewResponse:")
|
||||
.contains("required: [id, tenantId, reviewType, status, tenantName, tenantCode, contactName, submittedAt]")
|
||||
.contains("submittedAt: {type: string, format: date-time, description: 提交审核时间}")
|
||||
.contains("TenantSuccess:")
|
||||
.contains("salesOwnerName:")
|
||||
.contains("paymentTermDays:")
|
||||
|
||||
@@ -46,6 +46,11 @@ class PlatformTenantControllerContractTest {
|
||||
|
||||
assertEquals("hasAuthority('platform:customer:review')",
|
||||
method.getAnnotation(PreAuthorize.class).value());
|
||||
ParameterizedType apiResponse = (ParameterizedType) method.getGenericReturnType();
|
||||
ParameterizedType list = (ParameterizedType) apiResponse.getActualTypeArguments()[0];
|
||||
assertEquals(java.util.List.class, list.getRawType());
|
||||
assertEquals(com.baiyue.iam.dto.TenantDtos.PendingReviewResponse.class,
|
||||
list.getActualTypeArguments()[0]);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -30,6 +30,7 @@ import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.mockito.Mockito.verify;
|
||||
@@ -93,6 +94,37 @@ class TenantServiceTest {
|
||||
verify(repository).pageMerchants(1, 10, "Example", "ACTIVE");
|
||||
}
|
||||
|
||||
@Test
|
||||
void pendingReviewsIncludeCustomerSummaryWithoutPerReviewQueries() {
|
||||
IamTenantReview review = review(71L, 10001L);
|
||||
review.setReviewType("REGISTER");
|
||||
review.setCreatedAt(LocalDateTime.of(2026, 8, 17, 10, 27));
|
||||
IamTenant tenant = merchant(10001L, "PENDING");
|
||||
tenant.setTenantCode("TEN10001");
|
||||
tenant.setTenantName("Example Merchant");
|
||||
tenant.setContactName("Alice");
|
||||
tenant.setContactPhone("13800138000");
|
||||
tenant.setContactEmail("alice@example.com");
|
||||
when(repository.findPendingReviews()).thenReturn(List.of(review));
|
||||
when(repository.findMerchantsByIds(Set.of(10001L))).thenReturn(List.of(tenant));
|
||||
|
||||
var result = service.pendingReviews();
|
||||
|
||||
assertEquals(1, result.size());
|
||||
assertEquals(71L, result.get(0).id());
|
||||
assertEquals(10001L, result.get(0).tenantId());
|
||||
assertEquals("REGISTER", result.get(0).reviewType());
|
||||
assertEquals("PENDING", result.get(0).status());
|
||||
assertEquals("Example Merchant", result.get(0).tenantName());
|
||||
assertEquals("TEN10001", result.get(0).tenantCode());
|
||||
assertEquals("Alice", result.get(0).contactName());
|
||||
assertEquals("13800138000", result.get(0).contactPhone());
|
||||
assertEquals("alice@example.com", result.get(0).contactEmail());
|
||||
assertEquals(LocalDateTime.of(2026, 8, 17, 10, 27), result.get(0).submittedAt());
|
||||
verify(repository).findMerchantsByIds(Set.of(10001L));
|
||||
verify(repository, never()).findTenant(10001L);
|
||||
}
|
||||
|
||||
@Test
|
||||
void pageFinanceCustomersKeepsFullContactSummaryForInternalFinance() {
|
||||
IamTenant tenant = merchant(10001L, "ACTIVE");
|
||||
|
||||
Reference in New Issue
Block a user