poc completed

This commit is contained in:
2025-07-11 12:25:46 +02:00
parent 6ad1f55d4b
commit 1ba7a8cda4
28 changed files with 807 additions and 88 deletions

View File

@@ -30,6 +30,13 @@ public class ProviderService {
@Value("${sbz.aggregator.url}")
private String aggregatorUrl;
public SBZProductDto getProviderProduct(UUID providerId, UUID productId) {
return getProviderProducts(providerId).stream()
.filter(product -> product.getUid().equals(productId))
.findFirst()
.orElse(null);
}
public List<SBZProductDto> getProviderProducts(UUID providerId) {
String token = restService.getMerchantToken();
@@ -57,13 +64,15 @@ public class ProviderService {
return products;
}
public Object getProviders(String category) {
String token = restService.getMerchantToken();
public Object getProviderByClientId(String clientId) {
Provider provider = providerRepository.findByClientId(clientId);
if (provider != null) {
return ((List)getProviders(Collections.singletonList(provider))).stream().findFirst().orElse(null);
}
return null;
}
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));
headers.setBearerAuth(token);
public Object getProvidersByCategory(String category) {
List<Provider> existingProviders;
if (category != null && !category.isEmpty()) {
@@ -72,6 +81,17 @@ public class ProviderService {
existingProviders = getProviderRepository().findAll();
}
return getProviders(existingProviders);
}
public Object getProviders(List<Provider> existingProviders) {
String token = restService.getMerchantToken();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));
headers.setBearerAuth(token);
List<String> existingProviderIds = existingProviders.stream()
.map(Provider::getClientId)
.collect(Collectors.toList());
@@ -100,6 +120,7 @@ public class ProviderService {
provider.put("image", existingProvider.getImage());
provider.put("label", existingProvider.getLabel());
provider.put("category", existingProvider.getCategory());
provider.put("accountFieldName", existingProvider.getAccountFieldName());
}
}
}