From 9c0dd2134f5b0eaca735df09190430c9ccfe26c9 Mon Sep 17 00:00:00 2001 From: kostyastruga Date: Fri, 30 Jan 2026 14:09:09 +0300 Subject: [PATCH 1/3] Fix cache --- .../payment/handler/InspectorHandler.java | 4 ++++ .../fraudbusters/util/UserCacheKeyUtil.java | 16 ++++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/main/java/dev/vality/fraudbusters/resource/payment/handler/InspectorHandler.java b/src/main/java/dev/vality/fraudbusters/resource/payment/handler/InspectorHandler.java index c57c5a45..dcc1f2eb 100644 --- a/src/main/java/dev/vality/fraudbusters/resource/payment/handler/InspectorHandler.java +++ b/src/main/java/dev/vality/fraudbusters/resource/payment/handler/InspectorHandler.java @@ -9,6 +9,7 @@ import dev.vality.fraudbusters.fraud.model.PaymentModel; import dev.vality.fraudbusters.stream.TemplateVisitor; import dev.vality.fraudbusters.util.PaymentModelFactory; +import dev.vality.fraudbusters.util.UserCacheKeyUtil; import dev.vality.fraudo.constant.ResultStatus; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -65,5 +66,8 @@ private static boolean isDeclineResult(CheckedResultModel result) { || ResultStatus.DECLINE_AND_NOTIFY.equals(result.getResultModel().getResultStatus())); } + public String buildInspectUserCacheKey(InspectUserContext context) { + return UserCacheKeyUtil.buildInspectUserCacheKey(context); + } } diff --git a/src/main/java/dev/vality/fraudbusters/util/UserCacheKeyUtil.java b/src/main/java/dev/vality/fraudbusters/util/UserCacheKeyUtil.java index 6a540529..e6d28d98 100644 --- a/src/main/java/dev/vality/fraudbusters/util/UserCacheKeyUtil.java +++ b/src/main/java/dev/vality/fraudbusters/util/UserCacheKeyUtil.java @@ -1,7 +1,7 @@ package dev.vality.fraudbusters.util; -import dev.vality.damsel.proxy_inspector.InspectUserContext; -import dev.vality.damsel.proxy_inspector.ShopContext; +import dev.vality.damsel.fraudbusters.InspectUserContext; +import dev.vality.damsel.fraudbusters.ShopContext; import dev.vality.fraudbusters.constant.ClickhouseUtilsValue; import org.springframework.util.StringUtils; @@ -20,9 +20,9 @@ public static String buildInspectUserCacheKey(InspectUserContext context) { email = context.getUserInfo().isSetEmail() && StringUtils.hasLength(context.getUserInfo().getEmail()) ? context.getUserInfo().getEmail().toLowerCase() : ClickhouseUtilsValue.UNKNOWN; - phone = context.getUserInfo().isSetPhoneNumber() - && StringUtils.hasLength(context.getUserInfo().getPhoneNumber()) - ? context.getUserInfo().getPhoneNumber() + phone = context.getUserInfo().getPhone() != null + && StringUtils.hasLength(context.getUserInfo().getPhone()) + ? context.getUserInfo().getPhone() : ClickhouseUtilsValue.UNKNOWN; } if (context.getShopList() == null || context.getShopList().isEmpty()) { @@ -36,11 +36,11 @@ public static String buildInspectUserCacheKey(InspectUserContext context) { } private static String buildShopKey(ShopContext shopContext) { - if (shopContext == null || shopContext.getParty() == null || shopContext.getShop() == null) { + if (shopContext == null || shopContext.getPartyId() == null || shopContext.getShopId() == null) { return ClickhouseUtilsValue.UNKNOWN; } - String partyId = shopContext.getParty().getPartyRef().getId(); - String shopId = shopContext.getShop().getShopRef().getId(); + String partyId = shopContext.getPartyId(); + String shopId = shopContext.getShopId(); return partyId + ":" + shopId; } } From 913518ee37179ef706b36f004ec9a5b62ed7c5bc Mon Sep 17 00:00:00 2001 From: kostyastruga Date: Tue, 24 Mar 2026 18:07:54 +0300 Subject: [PATCH 2/3] Fix unkonown fields --- pom.xml | 2 +- .../aggregator/clickhouse/CountAggregatorImpl.java | 4 ++-- .../payment/handler/FraudInspectorHandlerTest.java | 14 ++++---------- src/test/resources/logback-test.xml | 2 +- 4 files changed, 8 insertions(+), 14 deletions(-) diff --git a/pom.xml b/pom.xml index 4af24f51..ad45f74b 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ 8023 ${server.port} ${management.port} UTF-8 - 1.0.7 + 1.0.9 0.3.1 1.128-79c32f2 1.7-6d29f86 diff --git a/src/main/java/dev/vality/fraudbusters/fraud/payment/aggregator/clickhouse/CountAggregatorImpl.java b/src/main/java/dev/vality/fraudbusters/fraud/payment/aggregator/clickhouse/CountAggregatorImpl.java index d64c7031..8253be41 100644 --- a/src/main/java/dev/vality/fraudbusters/fraud/payment/aggregator/clickhouse/CountAggregatorImpl.java +++ b/src/main/java/dev/vality/fraudbusters/fraud/payment/aggregator/clickhouse/CountAggregatorImpl.java @@ -78,7 +78,7 @@ public Integer countError( FieldModel resolve = databasePaymentFieldResolver.resolve(checkedField, paymentModel); List eventFields = databasePaymentFieldResolver.resolveListFields(paymentModel, list); if (Objects.isNull(resolve.getValue())) { - return CURRENT_ONE; + return 0; } Integer count = paymentRepository.countOperationErrorWithGroupBy( resolve.getName(), @@ -113,7 +113,7 @@ public Integer countError(PaymentCheckedField checkedField, FieldModel resolve = databasePaymentFieldResolver.resolve(checkedField, paymentModel); List eventFields = databasePaymentFieldResolver.resolveListFields(paymentModel, list); if (Objects.isNull(resolve.getValue())) { - return CURRENT_ONE; + return 0; } Integer count = paymentRepository.countOperationErrorWithGroupBy( resolve.getName(), diff --git a/src/test/java/dev/vality/fraudbusters/resource/payment/handler/FraudInspectorHandlerTest.java b/src/test/java/dev/vality/fraudbusters/resource/payment/handler/FraudInspectorHandlerTest.java index 5081afcb..18107aa6 100644 --- a/src/test/java/dev/vality/fraudbusters/resource/payment/handler/FraudInspectorHandlerTest.java +++ b/src/test/java/dev/vality/fraudbusters/resource/payment/handler/FraudInspectorHandlerTest.java @@ -19,7 +19,7 @@ import org.springframework.test.context.bean.override.mockito.MockitoBean; import org.springframework.test.context.junit.jupiter.SpringExtension; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.when; @@ -50,15 +50,15 @@ void isExistInBlackList() throws TException { when(wbListServiceSrv.isExist(any())).thenReturn(false); boolean existInBlackList = fraudInspectorHandler.isBlacklisted(createBlackListContext()); - assertEquals(false, existInBlackList); + assertFalse(existInBlackList); when(wbListServiceSrv.isExist(any())).thenReturn(true); existInBlackList = fraudInspectorHandler.isBlacklisted(createBlackListContext()); - assertEquals(true, existInBlackList); + assertTrue(existInBlackList); when(wbListServiceSrv.isExist(any())).thenThrow(new ListNotFound()); existInBlackList = fraudInspectorHandler.isBlacklisted(createBlackListContext()); - assertEquals(false, existInBlackList); + assertFalse(existInBlackList); } private BlackListContext createBlackListContext() { @@ -68,10 +68,4 @@ private BlackListContext createBlackListContext() { .setFirstId("test_id") .setSecondId("test_sec_id"); } - - private CheckedResultModel createCheckedResult(ResultStatus status) { - CheckedResultModel checkedResultModel = new CheckedResultModel(); - checkedResultModel.setResultModel(new ConcreteResultModel(status, null, null)); - return checkedResultModel; - } } diff --git a/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml index 774d0fb5..21d91ba8 100644 --- a/src/test/resources/logback-test.xml +++ b/src/test/resources/logback-test.xml @@ -3,7 +3,7 @@ - + From 032e8e4b8d607082469226e940cf4181d8c368e1 Mon Sep 17 00:00:00 2001 From: kostyastruga Date: Tue, 24 Mar 2026 18:17:58 +0300 Subject: [PATCH 3/3] Fix unkonown fields --- src/test/resources/logback-test.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml index 21d91ba8..774d0fb5 100644 --- a/src/test/resources/logback-test.xml +++ b/src/test/resources/logback-test.xml @@ -3,7 +3,7 @@ - +