diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/profile/CompanyInfo.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/profile/CompanyInfo.java index f77984590..22691446c 100644 --- a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/profile/CompanyInfo.java +++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/profile/CompanyInfo.java @@ -1,5 +1,6 @@ package ru.clearing.classes.statics.data.profile; +import java.time.LocalDate; import ru.clearing.classes.ConstSerializable; import ru.spcex.platform.classes.base.SpcexObjectBase; @@ -21,6 +22,8 @@ public class CompanyInfo extends SpcexObjectBase { // private String fullName; // extends Company private String shortNameEng; private String fullNameEng; + private String taxNumber; + private LocalDate registrationDate; // private String tradingCode; // extends Company // private String clearingCode; // extends Company // private String registrationCode; // extends Company @@ -106,4 +109,19 @@ public class CompanyInfo extends SpcexObjectBase { this.fullNameEng = fullNameEng; } + public String getTaxNumber() { + return taxNumber; + } + + public void setTaxNumber(String taxNumber) { + this.taxNumber = taxNumber; + } + + public LocalDate getRegistrationDate() { + return registrationDate; + } + + public void setRegistrationDate(LocalDate registrationDate) { + this.registrationDate = registrationDate; + } } \ No newline at end of file diff --git a/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/ResidenceDictionary.java b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/ResidenceDictionary.java new file mode 100644 index 000000000..8be5b73f5 --- /dev/null +++ b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/ResidenceDictionary.java @@ -0,0 +1,8 @@ +package ru.clearing.platform.dictionary; + +/** + * Database table: RESIDENCE_DICTIONARY + */ +public class ResidenceDictionary extends AbstractDictionary { + private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID; +} \ No newline at end of file diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CompanyMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CompanyMapStore.java index ee0891db9..c6d4eeff3 100644 --- a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CompanyMapStore.java +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CompanyMapStore.java @@ -1,5 +1,11 @@ package ru.spcex.clearing.imdg.businessobject; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.List; +import java.util.Map; import org.springframework.dao.support.DataAccessUtils; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.lang.NonNull; @@ -9,8 +15,6 @@ import ru.clearing.classes.statics.data.profile.CompanyInfo; import ru.spcex.clearing.imdg.base.BusinessObjectMapStore; import ru.spcex.platform.utils.time.TimeUtil; -import java.util.*; - @Component public class CompanyMapStore extends BusinessObjectMapStore { @@ -37,7 +41,7 @@ public class CompanyMapStore extends BusinessObjectMapStore { return new String[]{ "id", "company_id", "corporation_sole_type", "country_code", "description", "professional_sign", "legal_kind", "organization_type", "residence", - "short_name_eng", "full_name_eng" + "short_name_eng", "full_name_eng", "tax_number", "registration_date" // , "short_name", "full_name", "trading_code","clearing_code", "registration_code" }; } @@ -114,6 +118,8 @@ public class CompanyMapStore extends BusinessObjectMapStore { companyInfo.setResidence(rs.getString("RESIDENCE")); companyInfo.setShortNameEng(rs.getString("SHORT_NAME_ENG")); companyInfo.setFullNameEng(rs.getString("FULL_NAME_ENG")); + companyInfo.setTaxNumber(rs.getString("TAX_NUMBER")); + companyInfo.setRegistrationDate(getLocalDateFromSqlDate(rs, "REGISTRATION_DATE")); // companyInfo.setShortName(rs.getString("SHORT_NAME")); // companyInfo.setFullName(rs.getString("FULL_NAME")); // companyInfo.setTradingCode(rs.getString("TRADING_CODE")); @@ -151,7 +157,9 @@ public class CompanyMapStore extends BusinessObjectMapStore { companyInfo.getOrganizationType(), companyInfo.getResidence(), companyInfo.getShortNameEng(), - companyInfo.getFullNameEng() + companyInfo.getFullNameEng(), + companyInfo.getTaxNumber(), + TimeUtil.toDateFromLocalDate(companyInfo.getRegistrationDate()) // companyInfo.getShortName(), // companyInfo.getFullName(), // companyInfo.getTradingCode(), diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/ResidenceDictionaryMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/ResidenceDictionaryMapStore.java new file mode 100644 index 000000000..3c6905bcf --- /dev/null +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/ResidenceDictionaryMapStore.java @@ -0,0 +1,30 @@ +package ru.spcex.clearing.imdg.dictionary; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import ru.clearing.platform.dictionary.ResidenceDictionary; +import ru.spcex.clearing.imdg.IMDGDistributedNames; +import ru.spcex.clearing.imdg.base.DictionaryTMapStore; + +@Component +public class ResidenceDictionaryMapStore extends DictionaryTMapStore { + + public ResidenceDictionaryMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + public String getMapName() { + return IMDGDistributedNames.Map_ResidenceDictionary; + } + + @Override + public String getTableName() { + return "RESIDENCE_DICTIONARY"; + } + + @Override + public ResidenceDictionary getDictionaryObject() { + return new ResidenceDictionary(); + } +} diff --git a/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java b/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java index b6a018f39..704f3312a 100644 --- a/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java +++ b/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java @@ -1,39 +1,124 @@ 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.*; -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.*; -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; -import ru.clearing.classes.statics.data.messages.ErrorText; -import ru.clearing.classes.statics.data.misc.*; -import ru.clearing.classes.statics.data.payment.Operation; -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.registry.TradingClearingRegistryList; -import ru.clearing.classes.statics.data.registry.TradingClearingRegistryListHistory; -import ru.clearing.classes.statics.data.scheduler.*; -import ru.clearing.classes.statics.data.sdf.*; -import ru.clearing.classes.statics.data.security.*; -import ru.clearing.classes.statics.data.statement.Statement; -import ru.clearing.classes.statics.data.user.*; -import ru.clearing.platform.dictionary.*; -import ru.spcex.clearing.imdg.IMDGDistributedNames; -import ru.spcex.clearing.imdg.structure.CheckerBusinessMapStore.SettingOperation; - import java.math.BigDecimal; import java.time.Instant; import java.util.LinkedList; import java.util.List; - +import ru.clearing.classes.statics.data.account.Account; +import ru.clearing.classes.statics.data.account.AccountHistory; +import ru.clearing.classes.statics.data.account.BankAccount; +import ru.clearing.classes.statics.data.account.BankAccountHistory; +import ru.clearing.classes.statics.data.account.InformationAccount; +import ru.clearing.classes.statics.data.account.InformationAccountHistory; +import ru.clearing.classes.statics.data.clearing.VerificationResult; +import ru.clearing.classes.statics.data.company.ClearingMemberCategory; +import ru.clearing.classes.statics.data.company.ClearingMemberCategoryHistory; +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.CompanySymbolsHistory; +import ru.clearing.classes.statics.data.company.SettlementHouseProperties; +import ru.clearing.classes.statics.data.company.SettlementHousePropertiesHistory; +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.ExecutionCurrency; +import ru.clearing.classes.statics.data.execution.ExecutionCurrencyHistory; +import ru.clearing.classes.statics.data.execution.ExecutionDeposit; +import ru.clearing.classes.statics.data.execution.ExecutionDepositHistory; +import ru.clearing.classes.statics.data.execution.ExecutionFond; +import ru.clearing.classes.statics.data.execution.ExecutionFondHistory; +import ru.clearing.classes.statics.data.instrument.issue.CouponPeriod; +import ru.clearing.classes.statics.data.instrument.issue.CouponPeriodHistory; +import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity; +import ru.clearing.classes.statics.data.instrument.issue.EquitySecurityHistory; +import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow; +import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlowHistory; +import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity; +import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurityHistory; +import ru.clearing.classes.statics.data.journal.InDocumentJournal; +import ru.clearing.classes.statics.data.journal.ManagementJournal; +import ru.clearing.classes.statics.data.journal.OutDocumentJournal; +import ru.clearing.classes.statics.data.messages.ErrorText; +import ru.clearing.classes.statics.data.misc.Currency; +import ru.clearing.classes.statics.data.misc.CurrencyHistory; +import ru.clearing.classes.statics.data.misc.Listing; +import ru.clearing.classes.statics.data.misc.ListingHistory; +import ru.clearing.classes.statics.data.misc.Market; +import ru.clearing.classes.statics.data.misc.MarketDataLiquidation; +import ru.clearing.classes.statics.data.misc.MarketHistory; +import ru.clearing.classes.statics.data.misc.Notification; +import ru.clearing.classes.statics.data.misc.NotificationHistory; +import ru.clearing.classes.statics.data.misc.STrades; +import ru.clearing.classes.statics.data.misc.Session; +import ru.clearing.classes.statics.data.misc.SessionHistory; +import ru.clearing.classes.statics.data.misc.ValidationSymbols; +import ru.clearing.classes.statics.data.payment.Operation; +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.AdmittedLiabilitiesRegister; +import ru.clearing.classes.statics.data.register.ContractRegister; +import ru.clearing.classes.statics.data.register.CoveredLiabilitiesRegister; +import ru.clearing.classes.statics.data.register.DepoBalanceRegister; +import ru.clearing.classes.statics.data.register.DepoPaymentInstructionRegister; +import ru.clearing.classes.statics.data.register.ExcludeLiabilitiesRegister; +import ru.clearing.classes.statics.data.register.ExecutionRegister; +import ru.clearing.classes.statics.data.register.GatewayResult; +import ru.clearing.classes.statics.data.register.LiabilitiesRegister; +import ru.clearing.classes.statics.data.register.MoneyBalanceRegister; +import ru.clearing.classes.statics.data.register.MoneyPaymentInstructionRegister; +import ru.clearing.classes.statics.data.register.PairSdf; +import ru.clearing.classes.statics.data.register.ReportRegister; +import ru.clearing.classes.statics.data.registry.TradingClearingRegistryList; +import ru.clearing.classes.statics.data.registry.TradingClearingRegistryListHistory; +import ru.clearing.classes.statics.data.scheduler.ClearingCalendar; +import ru.clearing.classes.statics.data.scheduler.Launcher; +import ru.clearing.classes.statics.data.scheduler.Planner; +import ru.clearing.classes.statics.data.scheduler.PlannerAllToday; +import ru.clearing.classes.statics.data.scheduler.PlannerTemplate; +import ru.clearing.classes.statics.data.sdf.SDf01; +import ru.clearing.classes.statics.data.sdf.SDf02; +import ru.clearing.classes.statics.data.sdf.SDf03; +import ru.clearing.classes.statics.data.sdf.SDf04; +import ru.clearing.classes.statics.data.sdf.SDf05; +import ru.clearing.classes.statics.data.sdf.SDf06; +import ru.clearing.classes.statics.data.sdf.SDf07; +import ru.clearing.classes.statics.data.sdf.SDf08; +import ru.clearing.classes.statics.data.sdf.SDf09; +import ru.clearing.classes.statics.data.sdf.SDf10; +import ru.clearing.classes.statics.data.sdf.SDf11; +import ru.clearing.classes.statics.data.sdf.SDf12; +import ru.clearing.classes.statics.data.sdf.SDf13; +import ru.clearing.classes.statics.data.sdf.SDf14; +import ru.clearing.classes.statics.data.sdf.SDf20; +import ru.clearing.classes.statics.data.sdf.SDf21; +import ru.clearing.classes.statics.data.sdf.SDf51; +import ru.clearing.classes.statics.data.sdf.SDf52; +import ru.clearing.classes.statics.data.sdf.SDf53; +import ru.clearing.classes.statics.data.sdf.SDf54; +import ru.clearing.classes.statics.data.sdf.SDf55; +import ru.clearing.classes.statics.data.sdf.SDf56; +import ru.clearing.classes.statics.data.sdf.SDf57; +import ru.clearing.classes.statics.data.security.CurrencyPairSecurity; +import ru.clearing.classes.statics.data.security.CurrencyPairSecurityHistory; +import ru.clearing.classes.statics.data.security.DigitalCertificateSecurity; +import ru.clearing.classes.statics.data.security.DigitalCertificateSecurityHistory; +import ru.clearing.classes.statics.data.security.MoneyMarketSecurity; +import ru.clearing.classes.statics.data.security.MoneyMarketSecurityHistory; +import ru.clearing.classes.statics.data.security.UtilitarianDigitalRight; +import ru.clearing.classes.statics.data.security.UtilitarianDigitalRightHistory; +import ru.clearing.classes.statics.data.statement.Statement; +import ru.clearing.classes.statics.data.user.User; +import ru.clearing.classes.statics.data.user.UserConnect; +import ru.clearing.classes.statics.data.user.UserConnectHistory; +import ru.clearing.classes.statics.data.user.UserHistory; +import ru.clearing.classes.statics.data.user.UserRoleSession; +import ru.clearing.classes.statics.data.user.UserSettings; +import ru.clearing.platform.dictionary.*; +import ru.spcex.clearing.imdg.IMDGDistributedNames; +import ru.spcex.clearing.imdg.structure.CheckerBusinessMapStore.SettingOperation; import static ru.spcex.clearing.imdg.utils.DbDataUtils.generatingRandomBigDecimal; import static ru.spcex.clearing.imdg.utils.DbDataUtils.generatingRandomInstant; import static ru.spcex.clearing.imdg.utils.MatcherFactory.usingIgnoringFieldsComparator; @@ -292,6 +377,7 @@ public class RunnableMapNamesForTesting { checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_RegistryDesignationDictionary, RegistryDesignationDictionary.class)); checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_RegistryInstrumentTypeDictionary, RegistryInstrumentTypeDictionary.class)); checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_RegistryCapacityDictionary, RegistryCapacityDictionary.class)); + checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_ResidenceDictionary, ResidenceDictionary.class)); checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_RegistryUnitDictionary, RegistryUnitDictionary.class)); checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_RegistryCodeDictionary, RegistryCodeDictionary.class)); checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_RegistryStatusDictionary, RegistryStatusDictionary.class)); diff --git a/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java b/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java index c584104b3..604254c43 100644 --- a/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java +++ b/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java @@ -119,6 +119,7 @@ public final class IMDGDistributedNames { public static final String Map_ParentDictionary = "Map_ParentDictionary"; public static final String Map_ConnectionStateDictionary = "Map_ConnectionStateDictionary"; public static final String Map_UserRoleDictionary = "Map_UserRoleDictionary"; + public static final String Map_ResidenceDictionary = "Map_ResidenceDictionary"; public static final String Map_UserSettings = "Map_UserSettings"; public static final String Map_UserRoleSession = "Map_UserRoleSession"; @Deprecated