This commit is contained in:
parent
f02c2eb691
commit
478a1d92db
1 changed files with 20 additions and 10 deletions
|
|
@ -1,5 +1,11 @@
|
||||||
package ru.spcex.clearing.account.config.validation;
|
package ru.spcex.clearing.account.config.validation;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.Optional;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
import java.util.function.Function;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import ru.clearing.classes.statics.data.account.Account;
|
import ru.clearing.classes.statics.data.account.Account;
|
||||||
|
|
@ -30,13 +36,6 @@ import ru.spcex.platform.utils.validation.IValidationRule;
|
||||||
import ru.spcex.platform.utils.validation.IValidator;
|
import ru.spcex.platform.utils.validation.IValidator;
|
||||||
import ru.spcex.platform.utils.validation.ValidatorImpl;
|
import ru.spcex.platform.utils.validation.ValidatorImpl;
|
||||||
|
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Objects;
|
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.function.Consumer;
|
|
||||||
import java.util.function.Function;
|
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class TradingClearingRegistryValidationConfig {
|
public class TradingClearingRegistryValidationConfig {
|
||||||
|
|
||||||
|
|
@ -162,9 +161,20 @@ public class TradingClearingRegistryValidationConfig {
|
||||||
return empty();
|
return empty();
|
||||||
} else {
|
} else {
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectByID(validatedObject.getMoneyAccountId());
|
Account dubAcc = null;
|
||||||
if (account == null && validatedObject.getDepoAccountId() != null) account = accountImdg.getSingleObjectByID(validatedObject.getDepoAccountId());
|
for (TradingClearingRegistry duplicate : existTCR) {
|
||||||
return of(AccountError.AccountForTradingClearingRegistryAlreadyUsed, account.getAccount());
|
if (Objects.equals(duplicate.getMoneyAccountId(), validatedObject.getMoneyAccountId())) {
|
||||||
|
dubAcc = accountImdg.getSingleObjectByID(validatedObject.getMoneyAccountId());
|
||||||
|
}
|
||||||
|
if (Objects.equals(duplicate.getDepoAccountId(), validatedObject.getDepoAccountId())) {
|
||||||
|
dubAcc = accountImdg.getSingleObjectByID(validatedObject.getDepoAccountId());
|
||||||
|
}
|
||||||
|
if (dubAcc != null) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return of(AccountError.AccountForTradingClearingRegistryAlreadyUsed,
|
||||||
|
dubAcc != null ? dubAcc.getAccount() : "null");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue