parent
5fa0bcd9be
commit
dab63ad8be
9 changed files with 72 additions and 32 deletions
|
|
@ -17,7 +17,10 @@ import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.registry.AdmittedLiabilitiesRegisterNewRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.registry.AdmittedLiabilitiesRegisterNewRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.platform.enumeration.*;
|
import ru.spcex.platform.enumeration.RegistryCode;
|
||||||
|
import ru.spcex.platform.enumeration.RegistryDesignation;
|
||||||
|
import ru.spcex.platform.enumeration.RegistryInstrumentType;
|
||||||
|
import ru.spcex.platform.enumeration.RegistryStatus;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
|
|
@ -25,8 +28,8 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_ADLR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_ADLR;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GBRR;
|
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
|
|
@ -68,7 +71,8 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
registries.forEach((registry -> {
|
registries.forEach((registry -> {
|
||||||
Collection<AdmittedLiabilitiesRegister> admittedLiabilitiesRegistersBySessionIdAndCompanyId = admittedLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
|
Collection<AdmittedLiabilitiesRegister> admittedLiabilitiesRegistersBySessionIdAndCompanyId = admittedLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
if (admittedLiabilitiesRegistersBySessionIdAndCompanyId == null || admittedLiabilitiesRegistersBySessionIdAndCompanyId.isEmpty()) {
|
if (admittedLiabilitiesRegistersBySessionIdAndCompanyId == null || admittedLiabilitiesRegistersBySessionIdAndCompanyId.isEmpty()) {
|
||||||
insertAdmittedLiabilitiesRegister(registry);
|
insertAdmittedLiabilitiesRegister(registry);
|
||||||
}
|
}
|
||||||
|
|
@ -104,7 +108,7 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
return String.format("registryDesignation = '%s' and " +
|
return String.format("registryDesignation = '%s' and " +
|
||||||
"registryInstrumentType in ('%s','%s') and " +
|
"registryInstrumentType in ('%s','%s') and " +
|
||||||
"registryUnit = '%s' and " +
|
"registryUnit = '%s' and " +
|
||||||
"status in ('%s','%s','%s','%s','%s')"
|
"registryStatus in ('%s','%s','%s','%s','%s')"
|
||||||
,
|
,
|
||||||
RegistryDesignation.O.getKey(),
|
RegistryDesignation.O.getKey(),
|
||||||
RegistryInstrumentType.S.getKey(),
|
RegistryInstrumentType.S.getKey(),
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,10 @@ import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.registry.CoveredLiabilitiesRegisterNewRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.registry.CoveredLiabilitiesRegisterNewRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.platform.enumeration.*;
|
import ru.spcex.platform.enumeration.RegistryCode;
|
||||||
|
import ru.spcex.platform.enumeration.RegistryDesignation;
|
||||||
|
import ru.spcex.platform.enumeration.RegistryInstrumentType;
|
||||||
|
import ru.spcex.platform.enumeration.RegistryStatus;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
|
|
@ -25,7 +28,7 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_ADLR;
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_CDLR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_CDLR;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -69,7 +72,8 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
registries.forEach((registry -> {
|
registries.forEach((registry -> {
|
||||||
Collection<CoveredLiabilitiesRegister> coveredLiabilitiesRegisterBySessionIdAndCompanyId = coveredLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
|
Collection<CoveredLiabilitiesRegister> coveredLiabilitiesRegisterBySessionIdAndCompanyId = coveredLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
if (coveredLiabilitiesRegisterBySessionIdAndCompanyId == null || coveredLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
if (coveredLiabilitiesRegisterBySessionIdAndCompanyId == null || coveredLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
insertCoveredLiabilitiesRegister(registry);
|
insertCoveredLiabilitiesRegister(registry);
|
||||||
}
|
}
|
||||||
|
|
@ -104,7 +108,7 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
private String getSqlForRegistries() {
|
private String getSqlForRegistries() {
|
||||||
return String.format("registryDesignation = '%s' and " +
|
return String.format("registryDesignation = '%s' and " +
|
||||||
"registryInstrumentType in ('%s','%s') and " +
|
"registryInstrumentType in ('%s','%s') and " +
|
||||||
"registryUnit = '%s' and" +
|
"registryUnit = '%s' and " +
|
||||||
"registryStatus = '%s'",
|
"registryStatus = '%s'",
|
||||||
RegistryDesignation.O.getKey(),
|
RegistryDesignation.O.getKey(),
|
||||||
RegistryInstrumentType.S.getKey(),
|
RegistryInstrumentType.S.getKey(),
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -57,7 +58,8 @@ public class DepoBalanceRegisterService extends QueueConsumer implements Initial
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
registries.forEach((registry -> {
|
registries.forEach((registry -> {
|
||||||
Collection<DepoBalanceRegister> depoBalanceRegisterBySessionIdAndCompanyId = depoBalanceRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
|
Collection<DepoBalanceRegister> depoBalanceRegisterBySessionIdAndCompanyId = depoBalanceRegisterMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
if (depoBalanceRegisterBySessionIdAndCompanyId == null || depoBalanceRegisterBySessionIdAndCompanyId.isEmpty()) {
|
if (depoBalanceRegisterBySessionIdAndCompanyId == null || depoBalanceRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
insertDepoBalanceRegister(registry);
|
insertDepoBalanceRegister(registry);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
||||||
|
|
||||||
|
|
@ -64,8 +65,9 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for (Session session : actualSessions) {
|
for (Session session : actualSessions) {
|
||||||
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of("sessionId", session.getId()));
|
||||||
Collection<PaymentInstruction> paymentInstructionBySessionId =
|
Collection<PaymentInstruction> paymentInstructionBySessionId =
|
||||||
paymentInstructionMap.getCollectionObjectsByFieldValues(Map.of("sessionId", session.getId()));
|
paymentInstructionMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
||||||
DepoPaymentInstructionRegister depoPaymentInstructionRegister = depoPaymentInstructionRegisterMap.getSingleObjectByFieldValues(Map.of(
|
DepoPaymentInstructionRegister depoPaymentInstructionRegister = depoPaymentInstructionRegisterMap.getSingleObjectByFieldValues(Map.of(
|
||||||
"companyId", paymentInstruction.getSenderId(),
|
"companyId", paymentInstruction.getSenderId(),
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,8 @@ import java.time.LocalDate;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_EXLR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_EXLR;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
|
|
@ -73,7 +73,8 @@ public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
registries.forEach((registry -> {
|
registries.forEach((registry -> {
|
||||||
Collection<ExcludeLiabilitiesRegister> excludeLiabilitiesRegisterBySessionIdAndCompanyId = excludeLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
|
Collection<ExcludeLiabilitiesRegister> excludeLiabilitiesRegisterBySessionIdAndCompanyId = excludeLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
if (excludeLiabilitiesRegisterBySessionIdAndCompanyId == null || excludeLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
if (excludeLiabilitiesRegisterBySessionIdAndCompanyId == null || excludeLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
insertExcludeLiabilitiesRegister(registry);
|
insertExcludeLiabilitiesRegister(registry);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_EXLR;
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_LBSR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_LBSR;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -73,7 +73,8 @@ public class LiabilitiesRegisterService extends QueueConsumer implements Initial
|
||||||
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry);
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry);
|
||||||
//checking for duplicates
|
//checking for duplicates
|
||||||
registries.forEach((registry -> {
|
registries.forEach((registry -> {
|
||||||
Collection<LiabilitiesRegister> liabilitiesRegisterBySessionIdAndCompanyId = liabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
|
Collection<LiabilitiesRegister> liabilitiesRegisterBySessionIdAndCompanyId = liabilitiesRegisterMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
if (liabilitiesRegisterBySessionIdAndCompanyId == null || liabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
if (liabilitiesRegisterBySessionIdAndCompanyId == null || liabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
insertLiabilitiesRegister(registry);
|
insertLiabilitiesRegister(registry);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GBRR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GBRR;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -65,14 +66,14 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
registries.forEach((registry -> {
|
registries.forEach((registry -> {
|
||||||
Collection<MoneyBalanceRegister> moneyBalanceRegisterBySessionIdAndCompanyId = moneyBalanceRegisterMap.getCollectionObjectsByFieldValues(
|
Map<String, ? extends Comparable<?>> fieldValues = getFieldValuesOrThrowException(Map.of(
|
||||||
Map.of(
|
|
||||||
"companyId",
|
"companyId",
|
||||||
registry.getCompanyId(),
|
registry.getCompanyId(),
|
||||||
"sessionId",
|
"sessionId",
|
||||||
registry.getSessionId()
|
registry.getSessionId()
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
Collection<MoneyBalanceRegister> moneyBalanceRegisterBySessionIdAndCompanyId = moneyBalanceRegisterMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
if (moneyBalanceRegisterBySessionIdAndCompanyId == null || moneyBalanceRegisterBySessionIdAndCompanyId.isEmpty()) {
|
if (moneyBalanceRegisterBySessionIdAndCompanyId == null || moneyBalanceRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
insertMoneyBalanceRegister(registry);
|
insertMoneyBalanceRegister(registry);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,13 @@ import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static ru.spcex.clearing.registry.util.FieldValuesValidator.getFieldValuesOrThrowException;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class MoneyPaymentInstructionRegisterService extends QueueConsumer implements InitializingBean {
|
public class MoneyPaymentInstructionRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
|
private final static String TOPIC_NAME = createRegistry_GORR.topic();
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
private final Imdg<MoneyPaymentInstructionRegister> moneyPaymentInstructionRegisterMap;
|
private final Imdg<MoneyPaymentInstructionRegister> moneyPaymentInstructionRegisterMap;
|
||||||
private final Imdg<PaymentInstruction> paymentInstructionMap;
|
private final Imdg<PaymentInstruction> paymentInstructionMap;
|
||||||
private final Imdg<Session> sessionMap;
|
private final Imdg<Session> sessionMap;
|
||||||
|
|
@ -45,26 +46,18 @@ public class MoneyPaymentInstructionRegisterService extends QueueConsumer implem
|
||||||
public void afterPropertiesSet() {
|
public void afterPropertiesSet() {
|
||||||
callback(LauncherCommandRequest.class)
|
callback(LauncherCommandRequest.class)
|
||||||
.setConsumer(this::moneyPaymentInstructionRegisterNew)
|
.setConsumer(this::moneyPaymentInstructionRegisterNew)
|
||||||
.forDestination(createRegistry_GORR.topic(), callbacks::put);
|
.forDestination(TOPIC_NAME, callbacks::put);
|
||||||
init();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void moneyPaymentInstructionRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void moneyPaymentInstructionRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic());
|
log.debug("LauncherCommandRequest received from {}", TOPIC_NAME);
|
||||||
Collection<Session> actualSessions = sessionMap.getCollectionObjectsByFieldValues(
|
Map<String, ? extends Comparable<?>> fieldValuesSectionMkr = getFieldValuesOrThrowException(Map.of("section", "MKR"));
|
||||||
Map.of(
|
Collection<Session> actualSessions = sessionMap.getCollectionObjectsByFieldValues(fieldValuesSectionMkr);
|
||||||
"section",
|
|
||||||
"MKR"
|
|
||||||
)
|
|
||||||
);
|
|
||||||
actualSessions.forEach(session -> {
|
actualSessions.forEach(session -> {
|
||||||
Collection <PaymentInstruction> paymentInstructionBySessionId =
|
Map<String, ? extends Comparable<?>> fieldValuesSessionId = getFieldValuesOrThrowException(Map.of("sessionId", session.getId()));
|
||||||
paymentInstructionMap.getCollectionObjectsByFieldValues(
|
Collection<PaymentInstruction> paymentInstructionBySessionId =
|
||||||
Map.of(
|
paymentInstructionMap.getCollectionObjectsByFieldValues(fieldValuesSessionId);
|
||||||
"sessionId",
|
|
||||||
session.getId()
|
|
||||||
)
|
|
||||||
);
|
|
||||||
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
||||||
MoneyPaymentInstructionRegister moneyPaymentInstructionRegister = moneyPaymentInstructionRegisterMap.getSingleObjectByFieldValues(Map.of(
|
MoneyPaymentInstructionRegister moneyPaymentInstructionRegister = moneyPaymentInstructionRegisterMap.getSingleObjectByFieldValues(Map.of(
|
||||||
"companyId", paymentInstruction.getSenderId(),
|
"companyId", paymentInstruction.getSenderId(),
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
package ru.spcex.clearing.registry.util;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
|
public class FieldValuesValidator {
|
||||||
|
public static List<String> validateFieldValues(Map<String, ?> map) {
|
||||||
|
List<String> errors = new ArrayList<>();
|
||||||
|
map.forEach((key, value) -> {
|
||||||
|
if (key == null) {
|
||||||
|
errors.add("Key is null!");
|
||||||
|
} else if (key.isEmpty()) {
|
||||||
|
errors.add("Key is empty!");
|
||||||
|
}
|
||||||
|
if (value == null) {
|
||||||
|
errors.add("Value is null!");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return errors;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Map<String, ? extends Comparable<?>> getFieldValuesOrThrowException(Map<String, ? extends Comparable<?>> fieldValues) {
|
||||||
|
List<String> errors = validateFieldValues(fieldValues);
|
||||||
|
if (!errors.isEmpty()) {
|
||||||
|
Optional<String> error = errors.stream().findFirst();
|
||||||
|
throw new IllegalStateException("Illegal state of field and values :" + error.orElse(null));
|
||||||
|
}
|
||||||
|
return fieldValues;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue