backend-api account-service http://jira.mfd.msk:8088/browse/CLS-631 изменение API для TradingClearingRegistryList
This commit is contained in:
parent
8305137de5
commit
97bdf20975
10 changed files with 172 additions and 123 deletions
|
|
@ -14,12 +14,14 @@ import ru.spcex.clearing.validation.common.rules.DictionaryPresentRule;
|
|||
import ru.spcex.clearing.validation.common.rules.IdPresentRule;
|
||||
import ru.spcex.platform.classes.base.SpcexObjectBase;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.ServiceStatus;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||
import ru.spcex.platform.imdg.validation.ImdgValidationContext;
|
||||
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||
import ru.spcex.platform.utils.enumeration.IEnumKey;
|
||||
import ru.spcex.platform.utils.validation.IValidationRule;
|
||||
import ru.spcex.platform.utils.validation.IValidator;
|
||||
import ru.spcex.platform.utils.validation.ValidatorImpl;
|
||||
|
|
@ -43,15 +45,15 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
addImdg.accept(IMDGDistributedNames.Map_TradingClearingRegistry);
|
||||
addImdg.accept(IMDGDistributedNames.Map_ServiceStatusDictionary);
|
||||
return new ValidatorImpl<>(context,
|
||||
IdPresentRule.instance("id",
|
||||
IdPresentRule.instance("tradingClearingRegistryId",
|
||||
TradingClearingRegistryListNewRequest::getTradingClearingRegistryId,
|
||||
IMDGDistributedNames.Map_TradingClearingRegistry,
|
||||
TradingClearingRegistry.class,
|
||||
AccountError.RequiredFieldEmpty,
|
||||
AccountError.TradingClearingRegistryNotFound,
|
||||
false),
|
||||
new ExistAllCurrencyAccountId<>("currencyAccountList",
|
||||
TradingClearingRegistryListNewRequest::getCurrencyAccountList,
|
||||
new ExistAllCurrencyAccountId<>("accountId",
|
||||
TradingClearingRegistryListNewRequest::getAccountId,
|
||||
false,
|
||||
null),
|
||||
DictionaryPresentRule.instance("stauts",
|
||||
|
|
@ -60,7 +62,7 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
ServiceStatusDictionary.class,
|
||||
AccountError.RequiredFieldEmpty,
|
||||
AccountError.DictionaryNotFound,
|
||||
true)
|
||||
false)
|
||||
);
|
||||
};
|
||||
}
|
||||
|
|
@ -76,19 +78,36 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
addImdg.accept(IMDGDistributedNames.Map_TradingClearingRegistry);
|
||||
addImdg.accept(IMDGDistributedNames.Map_ServiceStatusDictionary);
|
||||
return new ValidatorImpl<ImdgValidationContext<TradingClearingRegistryListUpdateRequest>>(context,
|
||||
IdPresentRule.instance("id",
|
||||
IdPresentRule.instance2("id",
|
||||
TradingClearingRegistryListUpdateRequest::getTradingClearingRegistryId,
|
||||
IMDGDistributedNames.Map_TradingClearingRegistry,
|
||||
TradingClearingRegistry.class,
|
||||
IMDGDistributedNames.Map_TradingClearingRegistryList,
|
||||
TradingClearingRegistryList.class,
|
||||
AccountError.RequiredFieldEmpty,
|
||||
AccountError.TradingClearingRegistryNotFound,
|
||||
false),
|
||||
new ExistAllCurrencyAccountId<>("currencyAccountList",
|
||||
TradingClearingRegistryListUpdateRequest::getCurrencyAccountList,
|
||||
false,
|
||||
TradingClearingRegistryListUpdateRequest::getId
|
||||
),
|
||||
DictionaryPresentRule.instance("stauts",
|
||||
true,
|
||||
(tcrList)-> {
|
||||
Long accountId = tcrList.getAccountId();
|
||||
if (accountId==null)
|
||||
return null;
|
||||
if (!IEnumKey.contains(context.getValidatedObject().getStatus(), ServiceStatus.Active, ServiceStatus.Reopened))
|
||||
return null;
|
||||
|
||||
Imdg<TradingClearingRegistryList> tradingClearingRegistryListImdg = context.obtainMap(IMDGDistributedNames.Map_TradingClearingRegistryList, TradingClearingRegistryList.class);
|
||||
ImdgPredicateBuilder pb = tradingClearingRegistryListImdg.predicateBuilder();
|
||||
ImdgPredicate query = pb.and(pb.equals("status", WorkflowStatus.Active.getKey()),
|
||||
pb.equals("accountId", accountId));
|
||||
query = pb.and(query, pb.not(pb.equals("id", tcrList.getId())));
|
||||
Collection<TradingClearingRegistryList> inOtherLists = tradingClearingRegistryListImdg.getCollectionObjectsByPredicate(query);
|
||||
if (!inOtherLists.isEmpty()) {
|
||||
Collection<Long> duplicateAccounts = inOtherLists.stream()
|
||||
.map(TradingClearingRegistryList::getAccountId)
|
||||
.filter(accountId::equals)
|
||||
.collect(Collectors.toSet());
|
||||
return new EnumMessage(AccountError.AccountForTradingClearingRegistryAlreadyUsed, duplicateAccounts, "accountId"); // (5023) «Счет %s уже используется»
|
||||
}
|
||||
return null;
|
||||
}),
|
||||
DictionaryPresentRule.instance("status",
|
||||
TradingClearingRegistryListUpdateRequest::getStatus,
|
||||
IMDGDistributedNames.Map_ServiceStatusDictionary,
|
||||
ServiceStatusDictionary.class,
|
||||
|
|
@ -102,13 +121,13 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
|
||||
public static class ExistAllCurrencyAccountId<R> implements IValidationRule<ImdgValidationContext<R>> {
|
||||
String fieldName;
|
||||
Function<R, List<Long>> idListGetter;
|
||||
Function<R, Long> accountIdGetter;
|
||||
boolean required;
|
||||
Function<R, Long> idGetter;
|
||||
|
||||
public ExistAllCurrencyAccountId(String fieldName, Function<R, List<Long>> idListGetter, boolean required, Function<R, Long> idGetter) {
|
||||
public ExistAllCurrencyAccountId(String fieldName, Function<R, Long> accountIdGetter, boolean required, Function<R, Long> idGetter) {
|
||||
this.fieldName = fieldName;
|
||||
this.idListGetter = idListGetter;
|
||||
this.accountIdGetter = accountIdGetter;
|
||||
this.required = required;
|
||||
this.idGetter = idGetter;
|
||||
}
|
||||
|
|
@ -116,8 +135,8 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
@Override
|
||||
public Optional<EnumMessage> validate(ImdgValidationContext<R> context) {
|
||||
R validatedObject = context.getValidatedObject();
|
||||
List<Long> ids = idListGetter.apply(validatedObject);
|
||||
if (ids == null || ids.isEmpty()) {
|
||||
Long accountId = accountIdGetter.apply(validatedObject);
|
||||
if (accountId == null) {
|
||||
if (required)
|
||||
return of(AccountError.RequiredFieldEmpty, fieldName); // обязательное поле
|
||||
else
|
||||
|
|
@ -125,15 +144,12 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
}
|
||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||
// Проверить существование счетов
|
||||
for (Long id : ids) {
|
||||
if (id == null) { // null значения в массиве не ожидаются
|
||||
return of(AccountError.RequiredFieldEmpty, fieldName);
|
||||
}
|
||||
Account byIdObject = accountImdg.getSingleObjectByID(id);
|
||||
{
|
||||
Account byIdObject = accountImdg.getSingleObjectByID(accountId);
|
||||
if (byIdObject == null)
|
||||
return of(AccountError.AccountNotFound, id, fieldName);
|
||||
return of(AccountError.AccountNotFound, accountId, fieldName);
|
||||
if (!AccountType.Curr.equalsByKey(byIdObject.getAccountType())) {
|
||||
return of(AccountError.AccountIsNotACurrency, id, fieldName); // Счет %S не валютный
|
||||
return of(AccountError.AccountIsNotACurrency, accountId, fieldName); // Счет %S не валютный
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -141,7 +157,7 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
Imdg<TradingClearingRegistryList> tradingClearingRegistryListImdg = context.obtainMap(IMDGDistributedNames.Map_TradingClearingRegistryList, TradingClearingRegistryList.class);
|
||||
ImdgPredicateBuilder pb = tradingClearingRegistryListImdg.predicateBuilder();
|
||||
ImdgPredicate query = pb.and(pb.equals("status", WorkflowStatus.Active.getKey()),
|
||||
pb.in("accountId", ids.toArray(new Comparable[0])));
|
||||
pb.equals("accountId", accountId));
|
||||
if (idGetter != null) {
|
||||
Long id = idGetter.apply(validatedObject);
|
||||
if (id == null) // never
|
||||
|
|
@ -152,7 +168,7 @@ public class TradingClearingRegistryListValidationConfig {
|
|||
if (!inOtherLists.isEmpty()) {
|
||||
Collection<Long> duplicateAccounts = inOtherLists.stream()
|
||||
.map(TradingClearingRegistryList::getAccountId)
|
||||
.filter(ids::contains)
|
||||
.filter(accountId::equals)
|
||||
.collect(Collectors.toSet());
|
||||
return of(AccountError.AccountForTradingClearingRegistryAlreadyUsed, duplicateAccounts, fieldName); // (5023) «Счет %s уже используется»
|
||||
}
|
||||
|
|
|
|||
|
|
@ -124,10 +124,12 @@ public class TradingClearingRegistryListService extends QueueConsumer implements
|
|||
}
|
||||
|
||||
public RequestInfoUpdate tradingClearingRegistryListNew(BaseRequest<TradingClearingRegistryListNewRequest> userRequest) {
|
||||
return tradingClearingRegistryListNew0(userRequest, false);
|
||||
return tradingClearingRegistryListNew1(userRequest, false);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
protected RequestInfoUpdate tradingClearingRegistryListNew0(BaseRequest<TradingClearingRegistryListNewRequest> userRequest, boolean innerCall) {
|
||||
// fixme объединить с путом а то лист может быть пустой. и чистить...
|
||||
log.debug("TradingClearingRegistryListNewRequest received");
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) {
|
||||
|
|
@ -194,6 +196,70 @@ public class TradingClearingRegistryListService extends QueueConsumer implements
|
|||
return null;
|
||||
}
|
||||
|
||||
|
||||
protected RequestInfoUpdate tradingClearingRegistryListNew1(BaseRequest<TradingClearingRegistryListNewRequest> userRequest, boolean innerCall) {
|
||||
log.debug("TradingClearingRegistryListNewRequest received");
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) {
|
||||
return requestInfoUpdate;
|
||||
}
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, tradingClearingRegistryListNewRequestValidator);
|
||||
if (requestInfoUpdate != null) {
|
||||
return requestInfoUpdate;
|
||||
}
|
||||
|
||||
TradingClearingRegistryListNewRequest req = userRequest.getRequestPayload();
|
||||
Instant now = Instant.now();
|
||||
|
||||
Long id = tradingClearingRegistryListImdg.nextIDSequenceFor();
|
||||
TradingClearingRegistryList tradingClearingRegistryList = new TradingClearingRegistryList();
|
||||
tradingClearingRegistryList.setId(id);
|
||||
tradingClearingRegistryList.setCreated(now);
|
||||
tradingClearingRegistryList.setUpdated(now);
|
||||
tradingClearingRegistryList.setTradingClearingRegistryId(req.getTradingClearingRegistryId());
|
||||
tradingClearingRegistryList.setAccountId(req.getAccountId());
|
||||
if (req.getStatus() == null) {
|
||||
tradingClearingRegistryList.setStatus(ServiceStatus.Active.getKey());
|
||||
log.trace("TCRList status in request not set. Use default: {}", tradingClearingRegistryList.getStatus());
|
||||
} else {
|
||||
tradingClearingRegistryList.setStatus(req.getStatus());
|
||||
}
|
||||
tradingClearingRegistryListImdg.insert(tradingClearingRegistryList);
|
||||
|
||||
log.info("New TCRList.id={} has created.", id);
|
||||
|
||||
if (!innerCall) {
|
||||
// Для каждого счета из списка (currencyAccountList) должна быть создана отдельная запись объекте clientCode с данным счетом для данного клиента, т.е. у одного клиента может быть несколько валютных счетов.
|
||||
try {
|
||||
TradingClearingRegistry tcr = tradingClearingRegistryImdg.getSingleObjectByID(req.getTradingClearingRegistryId());
|
||||
ClientCodeNewRequest cCodeReq = new ClientCodeNewRequest();
|
||||
cCodeReq.setTradingClearingRegistryId(req.getTradingClearingRegistryId());
|
||||
cCodeReq.setDepoAccountId(tcr.getDepoAccountId());
|
||||
cCodeReq.setMoneyAccountId(tcr.getMoneyAccountId());
|
||||
cCodeReq.setCompanyId(tcr.getCompanyId());
|
||||
cCodeReq.setCurrencyAccountList(Arrays.asList(req.getAccountId())); // todo rewrite API
|
||||
cCodeReq.setStatus(tradingClearingRegistryList.getStatus());
|
||||
//todo cCodeReq.setCode();
|
||||
BaseRequest<ClientCodeNewRequest> request2 = new BaseRequest<>();
|
||||
request2.setRequestPayload(cCodeReq);
|
||||
requestInfoUpdate = clientCodeService.clientCodeNew0(request2, true);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
} catch (Exception e) {
|
||||
log.error("Can not wait creation of tradingClearingRegistryList. request id={}; {}",
|
||||
userRequest.getId(),
|
||||
ExceptionUtils.getStackTrace(e));
|
||||
return requestHelper.makeErrorResponse(userRequest, AccountError.GeneralError, "Can not create TCR: " + e.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
sendNotificationToClearingSvc(id);
|
||||
|
||||
log.debug("successfully processed, id {}", id);
|
||||
return null;
|
||||
}
|
||||
|
||||
public RequestInfoUpdate tradingClearingRegistryListUpdate(BaseRequest<TradingClearingRegistryListUpdateRequest> userRequest) {
|
||||
return tradingClearingRegistryListUpdate0(userRequest, false);
|
||||
}
|
||||
|
|
@ -209,7 +275,6 @@ public class TradingClearingRegistryListService extends QueueConsumer implements
|
|||
TradingClearingRegistryListUpdateRequest req = userRequest.getRequestPayload();
|
||||
TradingClearingRegistryList tradingClearingRegistryList = tradingClearingRegistryListImdg.getSingleObjectByID(req.getId());
|
||||
|
||||
//todo какие поля нужно обновлять?
|
||||
if (req.getStatus() != null && !Objects.equals(req.getStatus(), tradingClearingRegistryList.getStatus())) {
|
||||
Instant now = Instant.now();
|
||||
tradingClearingRegistryList.setUpdated(now);
|
||||
|
|
@ -220,18 +285,24 @@ public class TradingClearingRegistryListService extends QueueConsumer implements
|
|||
log.debug("Nothing to update TCRList.id={}.", tradingClearingRegistryList.getId());
|
||||
}
|
||||
|
||||
//todo нужно ли слать уведомления sendNotificationToClearingSvc?
|
||||
|
||||
log.debug("successfully processed, id {}", tradingClearingRegistryList.getId());
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Deprecated
|
||||
protected void sendNotificationToClearingSvc(List<Long> tradingClearingRegistries) {
|
||||
for (Long tradingClearingRegistryId:tradingClearingRegistries)
|
||||
sendNotificationToClearingSvc(tradingClearingRegistryId);
|
||||
}
|
||||
/**
|
||||
* clearing-service сообщение на открытие клиринговых регистров;
|
||||
*/
|
||||
protected void sendNotificationToClearingSvc(List<Long> tradingClearingRegistries) {
|
||||
protected void sendNotificationToClearingSvc(Long tradingClearingRegistryId) {
|
||||
CreateRegistryByTCRListRequest request = new CreateRegistryByTCRListRequest();
|
||||
request.setTradingClearingRegistryListIds(tradingClearingRegistries);
|
||||
request.setTradingClearingRegistryListId(tradingClearingRegistryId);
|
||||
log.debug("Send message to kafka \"{}\": {}", Consts.DESTINATION_TRADING_CLEARING_REGISTRY_ON_TCRLIST_NEW, LogFormatter.toStringWrapper(request));
|
||||
kafkaSender.sendRequestToQueue(Consts.DESTINATION_TRADING_CLEARING_REGISTRY_ON_TCRLIST_NEW, request);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,19 +12,19 @@ public class TradingClearingRegistryListNewAction implements IAction<TradingClea
|
|||
@ApiModelProperty(value = "Торгово-клиринговый регистр", example = "1200")
|
||||
@JsonProperty
|
||||
private Long tradingClearingRegistryId;
|
||||
@ApiModelProperty(value = "Список валютных счетов", example = "[123,456]")
|
||||
@ApiModelProperty(value = "Идентификатор валютного счёта", example = "123")
|
||||
@JsonProperty
|
||||
private List<Long> currencyAccountList;
|
||||
@ApiModelProperty(value = "Наименование статуса", example = "ACTV")
|
||||
@JsonProperty
|
||||
private String status;
|
||||
private Long accountId;
|
||||
// @ApiModelProperty(value = "Наименование статуса", example = "ACTV", required = false)
|
||||
// @JsonProperty
|
||||
// private String status;
|
||||
|
||||
@Override
|
||||
public TradingClearingRegistryListNewRequest toRequest() {
|
||||
var req = new TradingClearingRegistryListNewRequest();
|
||||
req.setTradingClearingRegistryId(this.tradingClearingRegistryId);
|
||||
req.setCurrencyAccountList(this.currencyAccountList);
|
||||
req.setStatus(this.status);
|
||||
req.setAccountId(this.accountId);
|
||||
// req.setStatus(this.status);
|
||||
return req;
|
||||
}
|
||||
|
||||
|
|
@ -42,19 +42,11 @@ public class TradingClearingRegistryListNewAction implements IAction<TradingClea
|
|||
this.tradingClearingRegistryId = tradingClearingRegistryId;
|
||||
}
|
||||
|
||||
public List<Long> getCurrencyAccountList() {
|
||||
return currencyAccountList;
|
||||
public Long getAccountId() {
|
||||
return accountId;
|
||||
}
|
||||
|
||||
public void setCurrencyAccountList(List<Long> currencyAccountList) {
|
||||
this.currencyAccountList = currencyAccountList;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
public void setAccountId(Long accountId) {
|
||||
this.accountId = accountId;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,12 +13,6 @@ public class TradingClearingRegistryListUpdateAction implements IAction<TradingC
|
|||
@ApiModelProperty(hidden = true)
|
||||
@JsonProperty
|
||||
public Long id;
|
||||
@ApiModelProperty(value = "Торгово-клиринговый регистр", example = "1200")
|
||||
@JsonProperty
|
||||
private Long tradingClearingRegistryId;
|
||||
@ApiModelProperty(value = "Список валютных счетов", example = "[123,456]")
|
||||
@JsonProperty
|
||||
private List<Long> currencyAccountList;
|
||||
@ApiModelProperty(value = "Наименование статуса", example = "ACTV")
|
||||
@JsonProperty
|
||||
private String status;
|
||||
|
|
@ -28,8 +22,6 @@ public class TradingClearingRegistryListUpdateAction implements IAction<TradingC
|
|||
public TradingClearingRegistryListUpdateRequest toRequest() {
|
||||
var req = new TradingClearingRegistryListUpdateRequest();
|
||||
req.setId(this.id);
|
||||
req.setTradingClearingRegistryId(this.tradingClearingRegistryId);
|
||||
req.setCurrencyAccountList(this.currencyAccountList);
|
||||
req.setStatus(this.status);
|
||||
return req;
|
||||
}
|
||||
|
|
@ -48,22 +40,6 @@ public class TradingClearingRegistryListUpdateAction implements IAction<TradingC
|
|||
this.id = id;
|
||||
}
|
||||
|
||||
public Long getTradingClearingRegistryId() {
|
||||
return tradingClearingRegistryId;
|
||||
}
|
||||
|
||||
public void setTradingClearingRegistryId(Long tradingClearingRegistryId) {
|
||||
this.tradingClearingRegistryId = tradingClearingRegistryId;
|
||||
}
|
||||
|
||||
public List<Long> getCurrencyAccountList() {
|
||||
return currencyAccountList;
|
||||
}
|
||||
|
||||
public void setCurrencyAccountList(List<Long> currencyAccountList) {
|
||||
this.currencyAccountList = currencyAccountList;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
{
|
||||
"version": "3.11.0.81",
|
||||
"version": "3.11.0.82",
|
||||
|
||||
"enums": {
|
||||
|
||||
|
|
@ -4340,12 +4340,8 @@
|
|||
"type": 1,"name": "Торгово-клиринговый регистр","shortname": "ТКР","link": "tradingClearingRegistry","linkCode": "code"
|
||||
}
|
||||
,
|
||||
{"code": "currencyAccountList",
|
||||
"type": 7,"name": "Список валютных счетов","shortname": "Список валютных счетов","link": "account","linkCode": "account"
|
||||
}
|
||||
,
|
||||
{"code": "status",
|
||||
"type": 12,"name": "Наименование статуса","shortname": "Статус","link": "serviceStatus","required": true
|
||||
{"code": "accountId",
|
||||
"type": 1,"name": "Идентификатор счёта","shortname": "Счёт","link": "account","linkCode": "account"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -4362,14 +4358,6 @@
|
|||
{"code": "id",
|
||||
"type": 1,"name": "Идентификатор записи","shortname": "ID","link": "clientCode","linkCode": "id","required": true
|
||||
}
|
||||
,
|
||||
{"code": "tradingClearingRegistryId",
|
||||
"type": 1,"name": "Торгово-клиринговый регистр","shortname": "ТКР","link": "tradingClearingRegistry","linkCode": "code"
|
||||
}
|
||||
,
|
||||
{"code": "currencyAccountList",
|
||||
"type": 7,"name": "Список валютных счетов","shortname": "Список валютных счетов","link": "account","linkCode": "account"
|
||||
}
|
||||
,
|
||||
{"code": "status",
|
||||
"type": 12,"name": "Наименование статуса","shortname": "Статус","link": "serviceStatus","required": true
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--?xml-stylesheet type="text/xsl" href="\..\corp-reports\src\data\meta\meta.server.xslt"?-->
|
||||
<meta version="3.11.0.81">
|
||||
<meta version="3.11.0.82">
|
||||
<!-- _xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" _xsi:noNamespaceSchemaLocation="file:///E:/d/projects/meta/from/meta.xsd" -->
|
||||
<!--Здесь словари-->
|
||||
<enums>
|
||||
|
|
@ -1006,13 +1006,10 @@
|
|||
<actions>
|
||||
<post name="Добавление списка счетов ТКР" confirmation="tradingClearingRegistryId,accountId,status" class="ru.spcex.clearing.backendapi.controller.request.cud.registry.TradingClearingRegistryListNewAction">
|
||||
<tradingClearingRegistryId type="1" name="Торгово-клиринговый регистр" shortname="ТКР" link="tradingClearingRegistry" linkCode="code"/>
|
||||
<currencyAccountList type="7" name="Список валютных счетов" shortname="Список валютных счетов" link="account" linkCode="account"/>
|
||||
<status type="12" name="Наименование статуса" shortname="Статус" link="serviceStatus" required="true"/>
|
||||
<accountId type="1" name="Идентификатор счёта" shortname="Счёт" link="account" linkCode="account"/>
|
||||
</post>
|
||||
<put name="Изменение списка счетов ТКР" confirmation="tradingClearingRegistryId,accountId,status" class="ru.spcex.clearing.backendapi.controller.request.cud.registry.TradingClearingRegistryListUpdateAction">
|
||||
<id type="1" name="Идентификатор записи" shortname="ID" link="clientCode" linkCode="id" required="true"/>
|
||||
<tradingClearingRegistryId type="1" name="Торгово-клиринговый регистр" shortname="ТКР" link="tradingClearingRegistry" linkCode="code"/>
|
||||
<currencyAccountList type="7" name="Список валютных счетов" shortname="Список валютных счетов" link="account" linkCode="account"/>
|
||||
<status type="12" name="Наименование статуса" shortname="Статус" link="serviceStatus" required="true"/>
|
||||
</put>
|
||||
</actions>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
{
|
||||
"version": "3.11.0.81",
|
||||
"version": "3.11.0.82",
|
||||
|
||||
"enums": {
|
||||
|
||||
|
|
@ -4340,12 +4340,8 @@
|
|||
"type": 1,"name": "Торгово-клиринговый регистр","shortname": "ТКР","link": "tradingClearingRegistry","linkCode": "code"
|
||||
}
|
||||
,
|
||||
{"code": "currencyAccountList",
|
||||
"type": 7,"name": "Список валютных счетов","shortname": "Список валютных счетов","link": "account","linkCode": "account"
|
||||
}
|
||||
,
|
||||
{"code": "status",
|
||||
"type": 12,"name": "Наименование статуса","shortname": "Статус","link": "serviceStatus","required": true
|
||||
{"code": "accountId",
|
||||
"type": 1,"name": "Идентификатор счёта","shortname": "Счёт","link": "account","linkCode": "account"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -4362,14 +4358,6 @@
|
|||
{"code": "id",
|
||||
"type": 1,"name": "Идентификатор записи","shortname": "ID","link": "clientCode","linkCode": "id","required": true
|
||||
}
|
||||
,
|
||||
{"code": "tradingClearingRegistryId",
|
||||
"type": 1,"name": "Торгово-клиринговый регистр","shortname": "ТКР","link": "tradingClearingRegistry","linkCode": "code"
|
||||
}
|
||||
,
|
||||
{"code": "currencyAccountList",
|
||||
"type": 7,"name": "Список валютных счетов","shortname": "Список валютных счетов","link": "account","linkCode": "account"
|
||||
}
|
||||
,
|
||||
{"code": "status",
|
||||
"type": 12,"name": "Наименование статуса","shortname": "Статус","link": "serviceStatus","required": true
|
||||
|
|
|
|||
|
|
@ -2,17 +2,15 @@ package ru.spcex.clearing.platform.messaging.domain.cud.clearing;
|
|||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class CreateRegistryByTCRListRequest {
|
||||
@JsonProperty
|
||||
private List<Long> tradingClearingRegistryListIds;
|
||||
private Long tradingClearingRegistryListId;
|
||||
|
||||
public List<Long> getTradingClearingRegistryListIds() {
|
||||
return tradingClearingRegistryListIds;
|
||||
public Long getTradingClearingRegistryListId() {
|
||||
return tradingClearingRegistryListId;
|
||||
}
|
||||
|
||||
public void setTradingClearingRegistryListIds(List<Long> tradingClearingRegistryListIds) {
|
||||
this.tradingClearingRegistryListIds = tradingClearingRegistryListIds;
|
||||
public void setTradingClearingRegistryListId(Long tradingClearingRegistryListId) {
|
||||
this.tradingClearingRegistryListId = tradingClearingRegistryListId;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,8 +13,15 @@ import java.util.List;
|
|||
public class TradingClearingRegistryListNewRequest {
|
||||
@JsonProperty
|
||||
private Long tradingClearingRegistryId;
|
||||
|
||||
@JsonProperty
|
||||
private Long accountId;
|
||||
|
||||
|
||||
@Deprecated
|
||||
@JsonProperty
|
||||
private List<Long> currencyAccountList;
|
||||
@Deprecated
|
||||
@JsonProperty
|
||||
private String status;
|
||||
|
||||
|
|
@ -26,18 +33,29 @@ public class TradingClearingRegistryListNewRequest {
|
|||
this.tradingClearingRegistryId = tradingClearingRegistryId;
|
||||
}
|
||||
|
||||
public Long getAccountId() {
|
||||
return accountId;
|
||||
}
|
||||
|
||||
public void setAccountId(Long accountId) {
|
||||
this.accountId = accountId;
|
||||
}
|
||||
|
||||
// todo возможно перепишут API, уберут:
|
||||
@Deprecated
|
||||
public List<Long> getCurrencyAccountList() {
|
||||
return currencyAccountList;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public void setCurrencyAccountList(List<Long> currencyAccountList) {
|
||||
this.currencyAccountList = currencyAccountList;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,14 @@ import java.util.List;
|
|||
public class TradingClearingRegistryListUpdateRequest {
|
||||
@JsonProperty
|
||||
private Long id;
|
||||
|
||||
@Deprecated
|
||||
@JsonProperty
|
||||
private Long tradingClearingRegistryId;
|
||||
@Deprecated
|
||||
@JsonProperty
|
||||
private List<Long> currencyAccountList;
|
||||
|
||||
@JsonProperty
|
||||
private String status;
|
||||
|
||||
|
|
@ -22,18 +26,19 @@ public class TradingClearingRegistryListUpdateRequest {
|
|||
this.id = id;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public Long getTradingClearingRegistryId() {
|
||||
return tradingClearingRegistryId;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public void setTradingClearingRegistryId(Long tradingClearingRegistryId) {
|
||||
this.tradingClearingRegistryId = tradingClearingRegistryId;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public List<Long> getCurrencyAccountList() {
|
||||
return currencyAccountList;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public void setCurrencyAccountList(List<Long> currencyAccountList) {
|
||||
this.currencyAccountList = currencyAccountList;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue