Merge branch 'tmpCLS-585' into dev
This commit is contained in:
commit
2a400e1a8a
3 changed files with 38 additions and 8 deletions
|
|
@ -70,6 +70,7 @@ public class ClearingAccountService extends QueueConsumer implements Initializin
|
||||||
private final Function<ClearingAccountUpdateRequest, IValidator> clearingAccountUpdateRequestValidator;
|
private final Function<ClearingAccountUpdateRequest, IValidator> clearingAccountUpdateRequestValidator;
|
||||||
|
|
||||||
private final Imdg<Account> accountImdg;
|
private final Imdg<Account> accountImdg;
|
||||||
|
private final Imdg<ClearingAccount> clearingAccountImdg;
|
||||||
private final Imdg<Company> companyImdg;
|
private final Imdg<Company> companyImdg;
|
||||||
private final Imdg<Relation> relationImdg;
|
private final Imdg<Relation> relationImdg;
|
||||||
private final Imdg<ClearingMemberCategory> clearingMemberCategoryImdg;
|
private final Imdg<ClearingMemberCategory> clearingMemberCategoryImdg;
|
||||||
|
|
@ -103,6 +104,7 @@ public class ClearingAccountService extends QueueConsumer implements Initializin
|
||||||
this.clearingAccountUpdateRequestValidator = clearingAccountUpdateRequestValidator;
|
this.clearingAccountUpdateRequestValidator = clearingAccountUpdateRequestValidator;
|
||||||
|
|
||||||
this.accountImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Account, Account.class);
|
this.accountImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
|
this.clearingAccountImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ClearingAccount, ClearingAccount.class);
|
||||||
this.companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
this.companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
this.relationImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
this.relationImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
||||||
this.clearingMemberCategoryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ClearingMemberCategory, ClearingMemberCategory.class);
|
this.clearingMemberCategoryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ClearingMemberCategory, ClearingMemberCategory.class);
|
||||||
|
|
@ -362,11 +364,16 @@ public class ClearingAccountService extends QueueConsumer implements Initializin
|
||||||
);
|
);
|
||||||
Account account = sDf52.getAccount() == null ? null : accountImdg.getFirstObjectByFieldValues(accountQuery);
|
Account account = sDf52.getAccount() == null ? null : accountImdg.getFirstObjectByFieldValues(accountQuery);
|
||||||
if (account == null) {
|
if (account == null) {
|
||||||
String msg = messageResolver.resolve(new EnumMessage(AccountError.AccountNotFound, sDf52.getAccount()));
|
if (SDFProcessService.SDF52_STATUS_3Open.equals(sDf52.getStatus())) {
|
||||||
log.warn("By generationId={} s_df52[{}] (query: {}) error: {}", groupId, sDf52.getId(), accountQuery, msg);
|
log.debug("By generationId={} s_df52[{}].status={}, but account not found (query: {}). COntinuse with result OK for status 3",
|
||||||
toProcessSDF53.add(new MutableTriple<>(sDf52, null,
|
groupId, sDf52.getId(), sDf52.getStatus(), accountQuery);
|
||||||
makeSdfErrorText(AccountError.AccountNotFound, SDFProcessService.SDF_STATUS_ERROR_COMPANY_NOT_FOUND)));
|
} else {
|
||||||
continue;
|
String msg = messageResolver.resolve(new EnumMessage(AccountError.AccountNotFound, sDf52.getAccount()));
|
||||||
|
log.warn("By generationId={} s_df52[{}] (query: {}) error: {}", groupId, sDf52.getId(), accountQuery, msg);
|
||||||
|
toProcessSDF53.add(new MutableTriple<>(sDf52, null,
|
||||||
|
makeSdfErrorText(AccountError.AccountNotFound, SDFProcessService.SDF_STATUS_ERROR_COMPANY_NOT_FOUND)));
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
toProcessSDF53.add(new MutableTriple<>(sDf52, account, SDFProcessService.SDF_STATUS_OK));
|
toProcessSDF53.add(new MutableTriple<>(sDf52, account, SDFProcessService.SDF_STATUS_OK));
|
||||||
toUpdate.add(new Pair<>(sDf52, account));
|
toUpdate.add(new Pair<>(sDf52, account));
|
||||||
|
|
|
||||||
|
|
@ -38,6 +38,11 @@ public class SDFProcessService {
|
||||||
public static final String SDF_STATUS_ERROR_NO_TRADE = "4"; // (Ошибка. Торги не идут)
|
public static final String SDF_STATUS_ERROR_NO_TRADE = "4"; // (Ошибка. Торги не идут)
|
||||||
public static final String SDF_STATUS_ERROR = "9"; // (Другие ошибки, выявленные в КС) - если получены другие ошибки (т.е. account НЕ обновлена по sDf52).
|
public static final String SDF_STATUS_ERROR = "9"; // (Другие ошибки, выявленные в КС) - если получены другие ошибки (т.е. account НЕ обновлена по sDf52).
|
||||||
|
|
||||||
|
protected static final Long SDF52_STATUS_0Blocked = 0L;
|
||||||
|
protected static final Long SDF52_STATUS_1Unblocked = 1L;
|
||||||
|
protected static final Long SDF52_STATUS_2Closed = 2L;
|
||||||
|
protected static final Long SDF52_STATUS_3Open = 3L;
|
||||||
|
|
||||||
final protected Logger log = LoggerFactory.getLogger(getClass());
|
final protected Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
protected final Producer<String, Object> kafkaResponseQueue;
|
protected final Producer<String, Object> kafkaResponseQueue;
|
||||||
|
|
@ -129,12 +134,12 @@ public class SDFProcessService {
|
||||||
* @return AccountStatus или null
|
* @return AccountStatus или null
|
||||||
*/
|
*/
|
||||||
public AccountStatus parseSdf52Status(Long status) {
|
public AccountStatus parseSdf52Status(Long status) {
|
||||||
if (Long.valueOf(1L).equals(status) || Long.valueOf(3L).equals(status)) {
|
if (SDF52_STATUS_1Unblocked.equals(status) || SDF52_STATUS_3Open.equals(status)) {
|
||||||
return AccountStatus.ACTIVE;
|
return AccountStatus.ACTIVE;
|
||||||
} else if (Long.valueOf(0L).equals(status)) {
|
} else if (SDF52_STATUS_0Blocked.equals(status)) {
|
||||||
return AccountStatus.BLOCKED;
|
return AccountStatus.BLOCKED;
|
||||||
}
|
}
|
||||||
if (Long.valueOf(2L).equals(status)) {
|
if (SDF52_STATUS_2Closed.equals(status)) {
|
||||||
return AccountStatus.CLOSE;
|
return AccountStatus.CLOSE;
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
package ru.spcex.platform.enumeration;
|
||||||
|
|
||||||
|
import ru.spcex.platform.utils.enumeration.IEnumKey;
|
||||||
|
|
||||||
|
public enum ClearingAccountType implements IEnumKey {
|
||||||
|
A("A"), B("B");
|
||||||
|
|
||||||
|
private final String key;
|
||||||
|
|
||||||
|
ClearingAccountType(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue