meta.1.xml вернул нужные *History mapstore. Скоро будет обновление до meta.2.xml + ddl

This commit is contained in:
AKurakin 2023-04-09 20:34:13 +03:00
parent ce9ea6b1b2
commit e3bc062346
44 changed files with 910 additions and 48 deletions

View file

@ -8,7 +8,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.backendapi.controller.queue.AbstractQueueController;
import ru.spcex.clearing.backendapi.controller.request.cud.common.CommonDeleteAction;
import ru.spcex.clearing.backendapi.controller.request.cud.company.ClearingMemberCategoryNewAction;

View file

@ -3,7 +3,7 @@ package ru.spcex.clearing.backendapi.controller.response.entity.company;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.backendapi.controller.response.BasicSpcexResponse;
import java.util.ArrayList;

View file

@ -421,7 +421,7 @@
</put>
</actions>
</companyInfo>
<clearingMemberCategory name="Категории участника клиринга" destination="clearing-member-categories" class="ru.clearing.classes.statics.data.generated.ClearingMemberCategory" logUpdates="true" table="clearing_member_category">
<clearingMemberCategory name="Категории участника клиринга" destination="clearing-member-categories" class="ru.clearing.classes.statics.data.company.ClearingMemberCategory" logUpdates="true" table="clearing_member_category">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<clearingMemberCategory type="12" dbname="Код категории участника клиринга" name="Категория участника клиринга" shortname="Категория" searchable="true" sortable="true" visible="true" link="clearingCategory"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>

View file

@ -4,7 +4,7 @@ import org.junit.jupiter.api.Test;
import org.springframework.core.NestedExceptionUtils;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.request.cud.common.CommonDeleteAction;
import ru.spcex.clearing.backendapi.controller.request.cud.company.ClearingMemberCategoryNewAction;

View file

@ -7,7 +7,7 @@ import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.account.Account;
import ru.clearing.classes.statics.data.account.AccountBalance;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.balance.validation.AccountBalanceValidation;
import ru.spcex.clearing.balance.validation.ValidationStored;
import ru.spcex.clearing.imdg.IMDGDistributedNames;

View file

@ -1,4 +1,4 @@
package ru.clearing.classes.statics.data.generated;
package ru.clearing.classes.statics.data.company;
import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.company;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* DB: CLEARING_MEMBER_CATEGORY_HISTORY
*/
public class ClearingMemberCategoryHistory extends BusinessEvent<ClearingMemberCategory> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private ClearingMemberCategory object;
@Override
public ClearingMemberCategory getObject() {
return object;
}
@Override
public void setObject(ClearingMemberCategory object) {
this.object = object;
}
}

View file

@ -0,0 +1,27 @@
package ru.clearing.classes.statics.data.company;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* DB: COMPANY_SYMBOLS_HISTORY
*/
public class CompanySymbolsHistory extends BusinessEvent<CompanySymbols> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private CompanySymbols object;
@Override
public CompanySymbols getObject() {
return object;
}
@Override
public void setObject(CompanySymbols object) {
this.object = object;
}
}

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* DB: COUPON_PERIOD_HISTORY
*/
public class CouponPeriodHistory extends BusinessEvent<CouponPeriod> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private CouponPeriod object;
@Override
public CouponPeriod getObject() {
return object;
}
@Override
public void setObject(CouponPeriod object) {
this.object = object;
}
}

View file

@ -0,0 +1,23 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
public class EquitySecurityHistory extends BusinessEvent<EquitySecurity> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private EquitySecurity object;
@Override
public EquitySecurity getObject() {
return object;
}
@Override
public void setObject(EquitySecurity object) {
this.object = object;
}
}

View file

@ -0,0 +1,23 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
public class FixedIncomeCashFlowHistory extends BusinessEvent<FixedIncomeCashFlow> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private FixedIncomeCashFlow object;
@Override
public FixedIncomeCashFlow getObject() {
return object;
}
@Override
public void setObject(FixedIncomeCashFlow object) {
this.object = object;
}
}

View file

@ -0,0 +1,23 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
public class FixedIncomeSecurityHistory extends BusinessEvent<FixedIncomeSecurity> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private FixedIncomeSecurity object;
@Override
public FixedIncomeSecurity getObject() {
return object;
}
@Override
public void setObject(FixedIncomeSecurity object) {
this.object = object;
}
}

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.misc;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* DB table: MONEY_MARKET_SECURITY_HISTORY
**/
public class MoneyMarketSecurityHistory extends BusinessEvent<MoneyMarketSecurity> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private MoneyMarketSecurity object;
@Override
public MoneyMarketSecurity getObject() {
return object;
}
@Override
public void setObject(MoneyMarketSecurity object) {
this.object = object;
}
}

View file

@ -0,0 +1,27 @@
package ru.clearing.classes.statics.data.profile;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* DB: PROFILE_DOCUMENT_HISTORY
*/
public class ProfileDocumentHistory extends BusinessEvent<ProfileDocument> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private ProfileDocument object;
@Override
public ProfileDocument getObject() {
return object;
}
@Override
public void setObject(ProfileDocument object) {
this.object = object;
}
}

View file

@ -3,7 +3,7 @@ package ru.spcex.clearing.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.platform.enumeration.ClearingCategory;
import ru.spcex.platform.imdg.api.Imdg;

View file

@ -5,7 +5,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsMoney;
import ru.clearing.classes.statics.data.payment.PaymentInstruction;

View file

@ -5,7 +5,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.payment.PaymentInstruction;
import ru.clearing.classes.statics.data.sdf.SDf03;
import ru.clearing.classes.statics.data.sdf.SDf11;

View file

@ -5,7 +5,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.account.Account;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.payment.PaymentInstruction;
import ru.spcex.clearing.error.ClearingError;
import ru.spcex.clearing.imdg.IMDGDistributedNames;

View file

@ -9,7 +9,7 @@ import ru.clearing.classes.statics.data.account.AccountBalance;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.relation.Relation;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsMoney;
import ru.clearing.classes.statics.data.payment.PaymentInstruction;

View file

@ -3,7 +3,7 @@ package ru.spcex.clearing.company.config.validation;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.platform.dictionary.ClearingCategoryDictionary;
import ru.spcex.clearing.company.error.CompanyErrors;
import ru.spcex.clearing.imdg.IMDGDistributedNames;

View file

@ -4,7 +4,7 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.profile.Contact;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.clearing.platform.dictionary.*;

View file

@ -8,7 +8,7 @@ import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
import ru.spcex.clearing.platform.messaging.domain.Consts;

View file

@ -14,7 +14,7 @@ import org.springframework.boot.test.mock.mockito.SpyBean;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.platform.dictionary.ClearingCategoryDictionary;
import ru.spcex.clearing.company.config.BeanConfiguration;
import ru.spcex.clearing.company.config.validation.ClearingMemberCategoryValidationConfig;

View file

@ -15,7 +15,7 @@ import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.platform.dictionary.CompanySymbolDictionary;
import ru.clearing.platform.dictionary.WorkflowStatusDictionary;
import ru.spcex.clearing.company.config.BeanConfiguration;

View file

@ -0,0 +1,49 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategoryHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
@Component
public class ClearingMemberCategoryHistoryMapStore extends TemplateEventMapStore<ClearingMemberCategoryHistory> {
public ClearingMemberCategoryHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_ClearingMemberCategoryHistory;
}
@Override
public String getTableName() {
return "CLEARING_MEMBER_CATEGORY_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"CLEARING_MEMBER_CATEGORY_ID", "COMPANY_ID", "CLEARING_MEMBER_CATEGORY"
};
}
@Override
public Object[] objectToField(ClearingMemberCategoryHistory historyLog) {
ClearingMemberCategory object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
object.getCompanyId(),
object.getClearingMemberCategory()
};
return args;
}
}

View file

@ -0,0 +1,50 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.company.CompanySymbolsHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
@Component
public class CompanySymbolsHistoryMapStore extends TemplateEventMapStore<CompanySymbolsHistory> {
public CompanySymbolsHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_CompanySymbolsHistory;
}
@Override
public String getTableName() {
return "COMPANY_SYMBOLS_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"company_symbols_id", "company_id", "company_symbol", "company_symbol_value"
};
}
@Override
public Object[] objectToField(CompanySymbolsHistory historyLog) {
CompanySymbols object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
object.getCompanyId(),
object.getCompanySymbol(),
object.getCompanySymbolValue()
};
return args;
}
}

View file

@ -0,0 +1,53 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.CouponPeriod;
import ru.clearing.classes.statics.data.instrument.issue.CouponPeriodHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
@Component
public class CouponPeriodHistoryMapStore extends TemplateEventMapStore<CouponPeriodHistory> {
public CouponPeriodHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_CouponPeriodHistory;
}
@Override
public String getTableName() {
return "COUPON_PERIOD_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"COUPON_PERIOD_ID", "SECURITY_ID", "COUPON_RATE", "NUMBER", "PERIOD_END_DATE", "PERIOD_START_DATE"
};
}
@Override
public Object[] objectToField(CouponPeriodHistory historyLog) {
CouponPeriod object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
object.getSecurityId(),
object.getCouponRate(),
object.getNumber(),
TimeUtil.toDateFromLocalDate(object.getPeriodEndDate()),
TimeUtil.toDateFromLocalDate(object.getPeriodStartDate()),
};
return args;
}
}

View file

@ -0,0 +1,107 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity;
import ru.clearing.classes.statics.data.instrument.issue.EquitySecurityHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Component
public class EquitySecurityHistoryMapStore extends TemplateEventMapStore<EquitySecurityHistory> {
public EquitySecurityHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_EquitySecurityHistory;
}
@Override
public String getTableName() {
return "EQUITY_SECURITY_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"EQUITY_SECURITY_ID", "SECURITY_ID", "SHARE_TYPE"};
}
public String[] getFieldsSecurity() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"SECURITY_ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
}
private final String insertToSecurityStatement = makeInsertSql("SECURITY",
getFieldsSecurity(), "id");
@Override
protected Object[] objectToField(EquitySecurityHistory historyLog) {
EquitySecurity equitySecurity = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
equitySecurity.getId(),
equitySecurity.getSecurityId(),
equitySecurity.getShareType()
};
return args;
}
protected Object[] securityField(EquitySecurityHistory historyLog) {
EquitySecurity object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getSecurityId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getInstrumentType(),
object.getIssuerId(),
object.getShortName(),
object.getFullName(),
object.getShortNameEng(),
object.getFullNameEng(),
object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus()
};
return args;
}
@Override
public void store(Map<Long, EquitySecurityHistory> map) {
List<Object[]> moneyMarketArgs = new ArrayList<>();
List<Object[]> securityArgs = new ArrayList<>();
for (Map.Entry<Long, EquitySecurityHistory> entry : map.entrySet()) {
EquitySecurityHistory obj = entry.getValue();
Object[] args = objectToField(obj);
if (args.length != validateSize) {
throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize);
}
moneyMarketArgs.add(args);
securityArgs.add(securityField(obj));
}
batchInsertUpdate(insertStatement, moneyMarketArgs);
batchInsertUpdate(insertToSecurityStatement, securityArgs);
}
}

View file

@ -0,0 +1,57 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlowHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
@Component
public class FixedIncomeCashFlowHistoryMapStore extends TemplateEventMapStore<FixedIncomeCashFlowHistory> {
public FixedIncomeCashFlowHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_FixedIncomeCashFlowHistory;
}
@Override
public String getTableName() {
return "FIXED_INCOME_CASH_FLOW_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"FIXED_INCOME_CASH_FLOW_ID", "SECURITY_ID", "ACCRUED_COUPON", "NOMINAL_VALUE", "NUMBER", "VALUE_DATE"
};
}
@Override
protected Object[] objectToField(FixedIncomeCashFlowHistory historyLog) {
FixedIncomeCashFlow fixedIncomeCashFlow = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
fixedIncomeCashFlow.getId(),
fixedIncomeCashFlow.getSecurityId(),
fixedIncomeCashFlow.getAccruedCoupon(),
fixedIncomeCashFlow.getNominalValue(),
fixedIncomeCashFlow.getNumber(),
TimeUtil.toDateFromLocalDate(fixedIncomeCashFlow.getValueDate()),
};
return args;
}
}

View file

@ -0,0 +1,113 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurityHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Component
public class FixedIncomeSecurityHistoryMapStore extends TemplateEventMapStore<FixedIncomeSecurityHistory> {
public FixedIncomeSecurityHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_FixedIncomeSecurityHistory;
}
@Override
public String getTableName() {
return "FIXED_INCOME_SECURITY_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"FIXED_INCOME_SECURITY_ID", "SECURITY_ID", "BOND_TYPE", "MATURITY_DATE", "NOMINAL_VALUE", "NOMINAL_CURRENCY", "COUPON", "COUPON_FREQUENCY"
};
}
public String[] getFieldsSecurity() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"SECURITY_ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
}
private final String insertToSecurityStatement = makeInsertSql("SECURITY",
getFieldsSecurity(), "id");
@Override
protected Object[] objectToField(FixedIncomeSecurityHistory historyLog) {
FixedIncomeSecurity fixedIncomeSecurity = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
fixedIncomeSecurity.getId(),
fixedIncomeSecurity.getSecurityId(),
fixedIncomeSecurity.getBondType(),
TimeUtil.toDateFromLocalDate(fixedIncomeSecurity.getMaturityDate()),
fixedIncomeSecurity.getNominalValue(),
fixedIncomeSecurity.getNominalCurrency(),
fixedIncomeSecurity.getCoupon(),
fixedIncomeSecurity.getCouponFrequency()
};
return args;
}
protected Object[] securityField(FixedIncomeSecurityHistory historyLog) {
FixedIncomeSecurity object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getSecurityId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getInstrumentType(),
object.getIssuerId(),
object.getShortName(),
object.getFullName(),
object.getShortNameEng(),
object.getFullNameEng(),
object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus()
};
return args;
}
@Override
public void store(Map<Long, FixedIncomeSecurityHistory> map) {
List<Object[]> moneyMarketArgs = new ArrayList<>();
List<Object[]> securityArgs = new ArrayList<>();
for (Map.Entry<Long, FixedIncomeSecurityHistory> entry : map.entrySet()) {
FixedIncomeSecurityHistory obj = entry.getValue();
Object[] args = objectToField(obj);
if (args.length != validateSize) {
throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize);
}
moneyMarketArgs.add(args);
securityArgs.add(securityField(obj));
}
batchInsertUpdate(insertStatement, moneyMarketArgs);
batchInsertUpdate(insertToSecurityStatement, securityArgs);
}
}

View file

@ -0,0 +1,112 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.clearing.classes.statics.data.misc.MoneyMarketSecurity;
import ru.clearing.classes.statics.data.misc.MoneyMarketSecurityHistory;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Component
public class MoneyMarketSecurityHistoryMapStore extends TemplateEventMapStore<MoneyMarketSecurityHistory> {
public MoneyMarketSecurityHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_MoneyMarketSecurityHistory;
}
@Override
public String getTableName() {
return "MONEY_MARKET_SECURITY_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"MONEY_MARKET_SECURITY_ID", "SECURITY_ID", "DESCRIPTION", "START_DATE", "END_DATE", "NOMINAL_VALUE", "NOMINAL_CURRENCY", "TERM_TYPE"};
}
public String[] getFieldsSecurity() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"SECURITY_ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
}
private final String insertToSecurityStatement = makeInsertSql("SECURITY",
getFieldsSecurity(), "id");
@Override
protected Object[] objectToField(MoneyMarketSecurityHistory historyLog) {
MoneyMarketSecurity moneyMarketSecurity = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
moneyMarketSecurity.getId(),
moneyMarketSecurity.getSecurityId(),
moneyMarketSecurity.getDescription(),
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getStartDate()),
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getEndDate()),
moneyMarketSecurity.getNominalValue(),
moneyMarketSecurity.getNominalCurrency(),
moneyMarketSecurity.getTermType()
};
return args;
}
protected Object[] securityField(MoneyMarketSecurityHistory historyLog) {
MoneyMarketSecurity object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getSecurityId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getInstrumentType(),
object.getIssuerId(),
object.getShortName(),
object.getFullName(),
object.getShortNameEng(),
object.getFullNameEng(),
object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus()
};
return args;
}
@Override
public void store(Map<Long, MoneyMarketSecurityHistory> map) {
List<Object[]> moneyMarketArgs = new ArrayList<>();
List<Object[]> securityArgs = new ArrayList<>();
for (Map.Entry<Long, MoneyMarketSecurityHistory> entry : map.entrySet()) {
MoneyMarketSecurityHistory obj = entry.getValue();
Object[] args = objectToField(obj);
if (args.length != validateSize) {
throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize);
}
moneyMarketArgs.add(args);
securityArgs.add(securityField(obj));
}
batchInsertUpdate(insertStatement, moneyMarketArgs);
batchInsertUpdate(insertToSecurityStatement, securityArgs);
}
}

View file

@ -0,0 +1,61 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.clearing.classes.statics.data.profile.ProfileDocumentHistory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
@Component
public class ProfileDocumentHistoryMapStore extends TemplateEventMapStore<ProfileDocumentHistory> {
public ProfileDocumentHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_ProfileDocumentHistory;
}
@Override
public String getTableName() {
return "PROFILE_DOCUMENT_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"profile_document_id", "company_id", "document_type", "issue_date", "issue_place", "issuer", "issuer_code",
"name", "number", "place", "valid_from_date", "valid_to_date", "link"
};
}
@Override
public Object[] objectToField(ProfileDocumentHistory historyLog) {
ProfileDocument object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
object.getCompanyId(),
object.getDocumentType(),
TimeUtil.toDateFromLocalDate(object.getIssueDate()),
object.getIssuePlace(),
object.getIssuer(),
object.getIssuerCode(),
object.getName(),
object.getNumber(),
object.getPlace(),
TimeUtil.toDateFromLocalDate(object.getValidFromDate()),
TimeUtil.toDateFromLocalDate(object.getValidToDate()),
object.getLink()
};
return args;
}
}

View file

@ -85,16 +85,16 @@ public class FixedIncomeSecurityMapStore extends TemplateMapStore<FixedIncomeSec
}
@Override
protected Object[] objectToField(FixedIncomeSecurity equity) {
protected Object[] objectToField(FixedIncomeSecurity object) {
Object[] args = new Object[]{
equity.getId(),
equity.getSecurityId(),
equity.getBondType(),
TimeUtil.toDateFromLocalDate(equity.getMaturityDate()),
equity.getNominalValue(),
equity.getNominalCurrency(),
equity.getCoupon(),
equity.getCouponFrequency()
object.getId(),
object.getSecurityId(),
object.getBondType(),
TimeUtil.toDateFromLocalDate(object.getMaturityDate()),
object.getNominalValue(),
object.getNominalCurrency(),
object.getCoupon(),
object.getCouponFrequency()
};
return args;
}

View file

@ -2,7 +2,7 @@ package ru.spcex.clearing.imdg.object;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;

View file

@ -8,11 +8,13 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import ru.clearing.classes.statics.data.account.*;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanyHistory;
import ru.clearing.classes.statics.data.company.*;
import ru.clearing.classes.statics.data.company.relation.Relation;
import ru.clearing.classes.statics.data.company.relation.RelationHistory;
import ru.clearing.classes.statics.data.instrument.issue.*;
import ru.clearing.classes.statics.data.misc.*;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.clearing.classes.statics.data.profile.ProfileDocumentHistory;
import ru.clearing.classes.statics.data.security.Security;
import ru.clearing.classes.statics.data.security.SecurityHistory;
import ru.clearing.classes.statics.data.user.User;
@ -37,14 +39,22 @@ public class UpdateMapService extends AbstractUpdateMapService {
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_AccountRouting).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_BankAccount).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Company).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CompanySymbols).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_ProfileDocument).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_ClearingMemberCategory).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_InformationAccount).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Relation).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Security).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Security).addLocalEntryListener(this, Predicates.alwaysTrue(), true); // // Существуют наследники этой таблицы
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_UserConnect).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_User).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Currency).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MoneyMarketSecurity).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_EquitySecurity).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_FixedIncomeSecurity).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_FixedIncomeCashFlow).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CouponPeriod).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Listing).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MarketHistory).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Market).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
}
@Override
@ -76,6 +86,21 @@ public class UpdateMapService extends AbstractUpdateMapService {
createBusinessEvent(companyHistory, eventType);
companyHistory.setObject((Company) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CompanyHistory).put(companyHistory.getId(), companyHistory);
} else if (value instanceof CompanySymbols) {
CompanySymbolsHistory companySymbolsHistory = new CompanySymbolsHistory();
createBusinessEvent(companySymbolsHistory, eventType);
companySymbolsHistory.setObject((CompanySymbols) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CompanySymbolsHistory).put(companySymbolsHistory.getId(), companySymbolsHistory);
} else if (value instanceof ProfileDocument) {
ProfileDocumentHistory profileDocumentHistory = new ProfileDocumentHistory();
createBusinessEvent(profileDocumentHistory, eventType);
profileDocumentHistory.setObject((ProfileDocument) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_ProfileDocumentHistory).put(profileDocumentHistory.getId(), profileDocumentHistory);
} else if (value instanceof ClearingMemberCategory) {
ClearingMemberCategoryHistory clearingMemberCategoryHistory = new ClearingMemberCategoryHistory();
createBusinessEvent(clearingMemberCategoryHistory, eventType);
clearingMemberCategoryHistory.setObject((ClearingMemberCategory) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_ClearingMemberCategoryHistory).put(clearingMemberCategoryHistory.getId(), clearingMemberCategoryHistory);
} else if (value instanceof InformationAccount) {
InformationAccountHistory informationAccountHistory = new InformationAccountHistory();
createBusinessEvent(informationAccountHistory, eventType);
@ -101,6 +126,11 @@ public class UpdateMapService extends AbstractUpdateMapService {
createBusinessEvent(currencyHistory, eventType);
currencyHistory.setObject((Currency) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CurrencyHistory).put(currencyHistory.getId(), currencyHistory);
} else if (value instanceof MoneyMarketSecurity) {
MoneyMarketSecurityHistory moneyMarketSecurityHistory = new MoneyMarketSecurityHistory();
createBusinessEvent(moneyMarketSecurityHistory, eventType);
moneyMarketSecurityHistory.setObject((MoneyMarketSecurity) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MoneyMarketSecurityHistory).put(moneyMarketSecurityHistory.getId(), moneyMarketSecurityHistory);
} else if (value instanceof Listing) {
ListingHistory listingHistory = new ListingHistory();
createBusinessEvent(listingHistory, eventType);
@ -111,6 +141,26 @@ public class UpdateMapService extends AbstractUpdateMapService {
createBusinessEvent(marketHistory, eventType);
marketHistory.setObject((Market) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MarketHistory).put(marketHistory.getId(), marketHistory);
} else if (value instanceof EquitySecurity) {
EquitySecurityHistory equitySecurityHistory = new EquitySecurityHistory();
createBusinessEvent(equitySecurityHistory, eventType);
equitySecurityHistory.setObject((EquitySecurity) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_EquitySecurityHistory).put(equitySecurityHistory.getId(), equitySecurityHistory);
} else if (value instanceof FixedIncomeSecurity) {
FixedIncomeSecurityHistory fixedIncomeSecurityHistory = new FixedIncomeSecurityHistory();
createBusinessEvent(fixedIncomeSecurityHistory, eventType);
fixedIncomeSecurityHistory.setObject((FixedIncomeSecurity) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_FixedIncomeSecurityHistory).put(fixedIncomeSecurityHistory.getId(), fixedIncomeSecurityHistory);
} else if (value instanceof FixedIncomeCashFlow) {
FixedIncomeCashFlowHistory fixedIncomeCashFlowHistory = new FixedIncomeCashFlowHistory();
createBusinessEvent(fixedIncomeCashFlowHistory, eventType);
fixedIncomeCashFlowHistory.setObject((FixedIncomeCashFlow) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MarketHistory).put(fixedIncomeCashFlowHistory.getId(), fixedIncomeCashFlowHistory);
} else if (value instanceof CouponPeriod) {
CouponPeriodHistory couponPeriodHistory = new CouponPeriodHistory();
createBusinessEvent(couponPeriodHistory, eventType);
couponPeriodHistory.setObject((CouponPeriod) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CouponPeriodHistory).put(couponPeriodHistory.getId(), couponPeriodHistory);
} else if (value instanceof Security) { // Существуют наследники этой таблицы, по этому в последнюю очередь делать эту проверку.

View file

@ -2,18 +2,11 @@ package ru.spcex.clearing.imdg.structure;
import ru.clearing.classes.statics.data.account.*;
import ru.clearing.classes.statics.data.clearing.VerificationResult;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanyHistory;
import ru.clearing.classes.statics.data.company.CompanyRoleSet;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.company.*;
import ru.clearing.classes.statics.data.company.relation.Relation;
import ru.clearing.classes.statics.data.company.relation.RelationHistory;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.instrument.issue.CouponPeriod;
import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
import ru.clearing.classes.statics.data.instrument.issue.*;
import ru.clearing.classes.statics.data.journal.InDocumentJournal;
import ru.clearing.classes.statics.data.journal.ManagementJournal;
import ru.clearing.classes.statics.data.journal.OutDocumentJournal;
@ -24,6 +17,7 @@ import ru.clearing.classes.statics.data.misc.*;
import ru.clearing.classes.statics.data.payment.PaymentInstruction;
import ru.clearing.classes.statics.data.profile.Contact;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.clearing.classes.statics.data.profile.ProfileDocumentHistory;
import ru.clearing.classes.statics.data.register.*;
import ru.clearing.classes.statics.data.scheduler.*;
import ru.clearing.classes.statics.data.sdf.*;
@ -65,12 +59,20 @@ public class RunnableMapNamesForTesting {
usingIgnoringFieldsComparator("object.profile.clearingCode", "object.profile.fullName", "object.profile.registrationCode", "object.profile.shortName", "object.profile.tradingCode")));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_InformationAccountHistory, InformationAccountHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_RelationHistory, RelationHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SecurityHistory, SecurityHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SecurityHistory, SecurityHistory.class)); // parent table
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserConnectHistory, UserConnectHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserHistory, UserHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CurrencyHistory, CurrencyHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_ListingHistory, ListingHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_MarketHistory, MarketHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CompanySymbolsHistory, CompanySymbolsHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_ProfileDocumentHistory, ProfileDocumentHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_ClearingMemberCategoryHistory, ClearingMemberCategoryHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_MoneyMarketSecurityHistory, MoneyMarketSecurityHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_EquitySecurityHistory, EquitySecurityHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_FixedIncomeSecurityHistory, FixedIncomeSecurityHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_FixedIncomeCashFlowHistory, FixedIncomeCashFlowHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CouponPeriodHistory, CouponPeriodHistory.class));
//business object
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class));

View file

@ -4,7 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P1;

View file

@ -4,7 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.clearing.platform.dictionary.CurrencyCodeDictionary;
import ru.spcex.clearing.imdg.IMDGDistributedNames;

View file

@ -4,7 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.clearing.platform.dictionary.ClearingStatusDictionary;
import ru.spcex.clearing.imdg.IMDGDistributedNames;

View file

@ -4,7 +4,7 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.misc.Listing;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.clearing.platform.dictionary.ClearingStatusDictionary;

View file

@ -4,7 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsMoney;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
@ -16,7 +16,6 @@ import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgProvider;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.LocalDate;
import java.util.Collection;
import java.util.List;

View file

@ -1,7 +1,7 @@
package ru.spcex.clearing.reports.services.collector;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_B;

View file

@ -1,7 +1,7 @@
package ru.spcex.clearing.reports.services.collector;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.clearing.platform.dictionary.ClearingStatusDictionary;
import ru.spcex.clearing.imdg.IMDGDistributedNames;

View file

@ -126,6 +126,14 @@ public final class IMDGDistributedNames {
public static final String Map_ShareTypeDictionary = "Map_ShareTypeDictionary";
public static final String Map_BondTypeDictionary = "Map_BondTypeDictionary";
public static final String Map_CurrencyHistory = "Map_CurrencyHistory";
public static final String Map_MoneyMarketSecurityHistory = "Map_MoneyMarketSecurityHistory";
public static final String Map_CompanySymbolsHistory = "Map_CompanySymbolsHistory";
public static final String Map_ProfileDocumentHistory = "Map_ProfileDocumentHistory";
public static final String Map_ClearingMemberCategoryHistory = "Map_ClearingMemberCategoryHistory";
public static final String Map_EquitySecurityHistory = "Map_EquitySecurityHistory";
public static final String Map_FixedIncomeSecurityHistory = "Map_FixedIncomeSecurityHistory";
public static final String Map_FixedIncomeCashFlowHistory = "Map_FixedIncomeCashFlowHistory";
public static final String Map_CouponPeriodHistory = "Map_CouponPeriodHistory";
public static final String Map_EquitySecurity = "Map_EquitySecurity";
public static final String Map_FixedIncomeSecurity = "Map_FixedIncomeSecurity";
public static final String Map_FixedIncomeCashFlow = "Map_FixedIncomeCashFlow";