Added tests for object MapStore

This commit is contained in:
psemenkov 2022-10-13 09:50:55 +03:00
parent b53dfda7a1
commit 3216c04a9f
21 changed files with 190 additions and 120 deletions

View file

@ -4,7 +4,8 @@ import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalTime;
/**
* Журнал входящих документов
@ -14,34 +15,34 @@ import java.time.Instant;
public class InDocumentJournal extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Instant registrationDate;
private Instant registrationTime;
private LocalDate registrationDate;
private LocalTime registrationTime;
private Long registrationNumber;
private String documentName;
private String sender;
private Long quantity;
private String clearingCode;
private String courierType;
private Instant emailDate;
private LocalDate emailDate;
private BigDecimal amount;
private String dossierNumber;
private String comment;
private Instant receiptDate;
private LocalDate receiptDate;
private String resultStatus;
public Instant getRegistrationDate() {
public LocalDate getRegistrationDate() {
return registrationDate;
}
public void setRegistrationDate(Instant value) {
public void setRegistrationDate(LocalDate value) {
this.registrationDate = value;
}
public Instant getRegistrationTime() {
public LocalTime getRegistrationTime() {
return registrationTime;
}
public void setRegistrationTime(Instant value) {
public void setRegistrationTime(LocalTime value) {
this.registrationTime = value;
}
@ -93,11 +94,11 @@ public class InDocumentJournal extends SpcexObjectBase {
this.courierType = value;
}
public Instant getEmailDate() {
public LocalDate getEmailDate() {
return emailDate;
}
public void setEmailDate(Instant value) {
public void setEmailDate(LocalDate value) {
this.emailDate = value;
}
@ -125,11 +126,11 @@ public class InDocumentJournal extends SpcexObjectBase {
this.comment = value;
}
public Instant getReceiptDate() {
public LocalDate getReceiptDate() {
return receiptDate;
}
public void setReceiptDate(Instant value) {
public void setReceiptDate(LocalDate value) {
this.receiptDate = value;
}

View file

@ -4,7 +4,8 @@ import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalTime;
/**
* Журнал исходящих документов
@ -14,33 +15,33 @@ import java.time.Instant;
public class OutDocumentJournal extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Instant registrationDate;
private Instant registrationTime;
private LocalDate registrationDate;
private LocalTime registrationTime;
private Long registrationNumber;
private String documentName;
private String addressee;
private Long quantity;
private String clearingCode;
private String courierType;
private Instant emailDate;
private LocalDate emailDate;
private BigDecimal amount;
private String dossierNumber;
private Instant postDate;
private LocalDate postDate;
private String resultStatus;
public Instant getRegistrationDate() {
public LocalDate getRegistrationDate() {
return registrationDate;
}
public void setRegistrationDate(Instant value) {
public void setRegistrationDate(LocalDate value) {
this.registrationDate = value;
}
public Instant getRegistrationTime() {
public LocalTime getRegistrationTime() {
return registrationTime;
}
public void setRegistrationTime(Instant value) {
public void setRegistrationTime(LocalTime value) {
this.registrationTime = value;
}
@ -92,11 +93,11 @@ public class OutDocumentJournal extends SpcexObjectBase {
this.courierType = value;
}
public Instant getEmailDate() {
public LocalDate getEmailDate() {
return emailDate;
}
public void setEmailDate(Instant value) {
public void setEmailDate(LocalDate value) {
this.emailDate = value;
}
@ -116,11 +117,11 @@ public class OutDocumentJournal extends SpcexObjectBase {
this.dossierNumber = value;
}
public Instant getPostDate() {
public LocalDate getPostDate() {
return postDate;
}
public void setPostDate(Instant value) {
public void setPostDate(LocalDate value) {
this.postDate = value;
}

View file

@ -3,7 +3,7 @@ package ru.clearing.classes.statics.data.misc;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.LocalDate;
/**
* Ключевая ставка ЦБ
@ -12,8 +12,8 @@ import java.time.Instant;
**/
public class KeyRate extends SpcexObjectBase {
private BigDecimal rate;
private Instant startDate;
private Instant endDate;
private LocalDate startDate;
private LocalDate endDate;
private String document;
private String workflowStatus;
@ -25,19 +25,19 @@ public class KeyRate extends SpcexObjectBase {
this.rate = rate;
}
public Instant getStartDate() {
public LocalDate getStartDate() {
return startDate;
}
public void setStartDate(Instant startDate) {
public void setStartDate(LocalDate startDate) {
this.startDate = startDate;
}
public Instant getEndDate() {
public LocalDate getEndDate() {
return endDate;
}
public void setEndDate(Instant endDate) {
public void setEndDate(LocalDate endDate) {
this.endDate = endDate;
}

View file

@ -3,7 +3,7 @@ package ru.clearing.classes.statics.data.misc;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.LocalDate;
/**
* Инструменты Денежного рынка
@ -13,8 +13,8 @@ import java.time.Instant;
public class MoneyMarketSecurity extends SpcexObjectBase {
private Long securityId;// (linked to security)
private String description;
private Instant startDate;
private Instant endDate;
private LocalDate startDate;
private LocalDate endDate;
private BigDecimal nominalValue;
private Long nominalCurrency; // (linked to currencyCode)
private String instrumentType; // (linked to instrumentType)
@ -37,19 +37,19 @@ public class MoneyMarketSecurity extends SpcexObjectBase {
this.description = description;
}
public Instant getStartDate() {
public LocalDate getStartDate() {
return startDate;
}
public void setStartDate(Instant startDate) {
public void setStartDate(LocalDate startDate) {
this.startDate = startDate;
}
public Instant getEndDate() {
public LocalDate getEndDate() {
return endDate;
}
public void setEndDate(Instant endDate) {
public void setEndDate(LocalDate endDate) {
this.endDate = endDate;
}

View file

@ -3,7 +3,7 @@ package ru.clearing.classes.statics.data.profile;
import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.time.Instant;
import java.time.LocalDate;
/**
* DB: PROFILE_DOCUMENT
@ -13,15 +13,15 @@ public class ProfileDocument extends SpcexObjectBase {
private Long companyId;
private String documentType; // ref CHAR(4)
private Instant issueDate;
private LocalDate issueDate;
private String issuePlace;
private String issuer;
private String issuerCode;
private String name;
private String number;
private String place;
private Instant validFromDate;
private Instant validToDate;
private LocalDate validFromDate;
private LocalDate validToDate;
private String link;
public Long getCompanyId() {
@ -40,11 +40,11 @@ public class ProfileDocument extends SpcexObjectBase {
this.documentType = documentType;
}
public Instant getIssueDate() {
public LocalDate getIssueDate() {
return issueDate;
}
public void setIssueDate(Instant issueDate) {
public void setIssueDate(LocalDate issueDate) {
this.issueDate = issueDate;
}
@ -96,19 +96,19 @@ public class ProfileDocument extends SpcexObjectBase {
this.place = place;
}
public Instant getValidFromDate() {
public LocalDate getValidFromDate() {
return validFromDate;
}
public void setValidFromDate(Instant validFromDate) {
public void setValidFromDate(LocalDate validFromDate) {
this.validFromDate = validFromDate;
}
public Instant getValidToDate() {
public LocalDate getValidToDate() {
return validToDate;
}
public void setValidToDate(Instant validToDate) {
public void setValidToDate(LocalDate validToDate) {
this.validToDate = validToDate;
}

View file

@ -3,7 +3,8 @@ package ru.clearing.classes.statics.data.scheduler;
import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalTime;
/**
* Расписание на текущий день
@ -14,8 +15,8 @@ public class SchedulerAllToday extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private String task;
private Instant taskTime;
private Instant clearingDate;
private LocalTime taskTime;
private LocalDate clearingDate;
private String market;
private String taskStatus;
private Long securityId;
@ -30,19 +31,19 @@ public class SchedulerAllToday extends SpcexObjectBase {
this.task = value;
}
public Instant getTaskTime() {
public LocalTime getTaskTime() {
return taskTime;
}
public void setTaskTime(Instant value) {
public void setTaskTime(LocalTime value) {
this.taskTime = value;
}
public Instant getClearingDate() {
public LocalDate getClearingDate() {
return clearingDate;
}
public void setClearingDate(Instant value) {
public void setClearingDate(LocalDate value) {
this.clearingDate = value;
}

View file

@ -8,14 +8,14 @@ import java.time.Instant;
/**
* ДФ-10 Подтверждение о загрузке по поступлению на клиринговый счет
*
* <p>
* DB table: S_DF10
*/
public class SDf10 extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private String account;
private String sum;
private BigDecimal sum;
private String market;
private String type;
private BigDecimal number;
@ -33,11 +33,11 @@ public class SDf10 extends SpcexObjectBase {
this.account = account;
}
public String getSum() {
public BigDecimal getSum() {
return sum;
}
public void setSum(String sum) {
public void setSum(BigDecimal sum) {
this.sum = sum;
}

View file

@ -3,8 +3,8 @@ package ru.spcex.clearing.imdg.object;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.company.CompanyRoleSet;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import java.sql.ResultSet;
import java.sql.SQLException;
@ -34,15 +34,15 @@ public class CompanyRoleSetMapStore extends TemplateMapStore<CompanyRoleSet> {
@Override
public String[] getFields() {
return new String[]{"id", "roleid", "companyid"};
return new String[]{"ID", "ROLE_ID", "COMPANY_ID"};
}
@Override
protected CompanyRoleSet objectReader(ResultSet resultSet) throws SQLException {
CompanyRoleSet companyRoleSet = new CompanyRoleSet();
companyRoleSet.setId(resultSet.getObject("id", Long.class));
companyRoleSet.setRoleId(resultSet.getObject("roleid", Long.class));
companyRoleSet.setCompanyId(resultSet.getObject("companyid", Long.class));
companyRoleSet.setId(resultSet.getObject("ID", Long.class));
companyRoleSet.setRoleId(resultSet.getObject("ROLE_ID", Long.class));
companyRoleSet.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
return companyRoleSet;
}

View file

@ -37,9 +37,9 @@ public class CompanySymbolsMapStore extends TemplateMapStore<CompanySymbols> {
protected CompanySymbols objectReader(ResultSet resultSet) throws SQLException {
CompanySymbols object = new CompanySymbols();
object.setId(resultSet.getObject("id", Long.class));
object.setCompanyId(resultSet.getObject("companyid", Long.class));
object.setCompanySymbol(resultSet.getObject("companysymbol", String.class));
object.setCompanySymbolValue(resultSet.getObject("companysymbolvalue", String.class));
object.setCompanyId(resultSet.getObject("company_id", Long.class));
object.setCompanySymbol(resultSet.getObject("company_symbol", String.class));
object.setCompanySymbolValue(resultSet.getObject("company_symbol_value", String.class));
return object;
}

View file

@ -39,20 +39,20 @@ public class InDocumentJournalMapStore extends TemplateMapStore<InDocumentJourna
public InDocumentJournal objectReader(ResultSet resultSet) throws SQLException {
InDocumentJournal object = new InDocumentJournal();
object.setId(resultSet.getObject("ID", Long.class));
object.setRegistrationDate(getInstantFromTimestamp(resultSet, "REGISTRATION_DATE"));
object.setRegistrationTime(getInstantFromTimestamp(resultSet, "REGISTRATION_TIME"));
object.setRegistrationDate(getLocalDateFromSqlDate(resultSet, "REGISTRATION_DATE"));
object.setRegistrationTime(getLocalTimeFromSqlTime(resultSet, "REGISTRATION_TIME"));
object.setRegistrationNumber(resultSet.getObject("REGISTRATION_NUMBER", Long.class));
object.setDocumentName(resultSet.getObject("DOCUMENT_NAME", String.class));
object.setSender(resultSet.getObject("SENDER", String.class));
object.setQuantity(resultSet.getObject("QUANTITY", Long.class));
object.setClearingCode(resultSet.getObject("CLEARING_CODE", String.class));
object.setCourierType(resultSet.getObject("COURIER_TYPE", String.class));
object.setEmailDate(getInstantFromTimestamp(resultSet, "EMAIL_DATE"));
object.setEmailDate(getLocalDateFromSqlDate(resultSet, "EMAIL_DATE"));
object.setAmount(resultSet.getObject("AMOUNT", BigDecimal.class));
object.setDossierNumber(resultSet.getObject("DOSSIER_NUMBER", String.class));
object.setResultStatus(resultSet.getObject("RESULT_STATUS", String.class));
object.setComment(resultSet.getObject("COMMENT", String.class));
object.setReceiptDate(getInstantFromTimestamp(resultSet, "RECEIPT_DATE"));
object.setReceiptDate(getLocalDateFromSqlDate(resultSet, "RECEIPT_DATE"));
return object;
}
@ -60,19 +60,19 @@ public class InDocumentJournalMapStore extends TemplateMapStore<InDocumentJourna
public Object[] objectToField(InDocumentJournal object) {
Object[] args = new Object[]{
object.getId(),
TimeUtil.toDateFromInstant(object.getRegistrationDate()),
TimeUtil.toDateFromInstant(object.getRegistrationTime()),
TimeUtil.toDateFromLocalDate(object.getRegistrationDate()),
TimeUtil.toDateFromLocalTime(object.getRegistrationTime()),
object.getRegistrationNumber(),
object.getDocumentName(),
object.getSender(),
object.getQuantity(),
object.getClearingCode(),
object.getCourierType(),
TimeUtil.toDateFromInstant(object.getEmailDate()),
TimeUtil.toDateFromLocalDate(object.getEmailDate()),
object.getAmount(),
object.getDossierNumber(),
object.getComment(),
TimeUtil.toDateFromInstant(object.getReceiptDate()),
TimeUtil.toDateFromLocalDate(object.getReceiptDate()),
object.getResultStatus()
};
return args;

View file

@ -43,8 +43,8 @@ public class KeyRateMapStore extends TemplateMapStore<KeyRate> {
KeyRate keyRate = new KeyRate();
keyRate.setId(resultSet.getObject("ID", Long.class));
keyRate.setRate(resultSet.getObject("RATE", BigDecimal.class));
keyRate.setStartDate(getInstantFromTimestamp(resultSet, "START_DATE"));
keyRate.setEndDate(getInstantFromTimestamp(resultSet, "END_DATE"));
keyRate.setStartDate(getLocalDateFromSqlDate(resultSet, "START_DATE"));
keyRate.setEndDate(getLocalDateFromSqlDate(resultSet, "END_DATE"));
keyRate.setDocument(resultSet.getObject("DOCUMENT", String.class));
keyRate.setWorkflowStatus(resultSet.getObject("WORKFLOW_STATUS", String.class));
return keyRate;
@ -55,8 +55,8 @@ public class KeyRateMapStore extends TemplateMapStore<KeyRate> {
Object[] args = new Object[]{
partnerList.getId(),
partnerList.getRate(),
TimeUtil.toDateFromInstant(partnerList.getStartDate()),
TimeUtil.toDateFromInstant(partnerList.getEndDate()),
TimeUtil.toDateFromLocalDate(partnerList.getStartDate()),
TimeUtil.toDateFromLocalDate(partnerList.getEndDate()),
partnerList.getDocument(),
partnerList.getWorkflowStatus()
};

View file

@ -44,8 +44,8 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
object.setId(resultSet.getObject("ID", Long.class));
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
object.setDescription(resultSet.getObject("DESCRIPTION", String.class));
object.setStartDate(getInstantFromTimestamp(resultSet, "START_DATE"));
object.setEndDate(getInstantFromTimestamp(resultSet, "END_DATE"));
object.setStartDate(getLocalDateFromSqlDate(resultSet, "START_DATE"));
object.setEndDate(getLocalDateFromSqlDate(resultSet, "END_DATE"));
object.setNominalValue(resultSet.getObject("NOMINAL_VALUE", BigDecimal.class));
object.setNominalCurrency(resultSet.getObject("NOMINAL_CURRENCY", Long.class));
object.setInstrumentType(resultSet.getObject("INSTRUMENT_TYPE", String.class));
@ -60,8 +60,8 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
moneyMarketSecurity.getId(),
moneyMarketSecurity.getSecurityId(),
moneyMarketSecurity.getDescription(),
TimeUtil.toDateFromInstant(moneyMarketSecurity.getStartDate()),
TimeUtil.toDateFromInstant(moneyMarketSecurity.getEndDate()),
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getStartDate()),
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getEndDate()),
moneyMarketSecurity.getNominalValue(),
moneyMarketSecurity.getNominalCurrency(),
moneyMarketSecurity.getInstrumentType(),

View file

@ -39,19 +39,19 @@ public class OutDocumentJournalMapStore extends TemplateMapStore<OutDocumentJour
public OutDocumentJournal objectReader(ResultSet resultSet) throws SQLException {
OutDocumentJournal object = new OutDocumentJournal();
object.setId(resultSet.getObject("ID", Long.class));
object.setRegistrationDate(getInstantFromTimestamp(resultSet, "REGISTRATION_DATE"));
object.setRegistrationTime(getInstantFromTimestamp(resultSet, "REGISTRATION_TIME"));
object.setRegistrationDate(getLocalDateFromSqlDate(resultSet, "REGISTRATION_DATE"));
object.setRegistrationTime(getLocalTimeFromSqlTime(resultSet, "REGISTRATION_TIME"));
object.setRegistrationNumber(resultSet.getObject("REGISTRATION_NUMBER", Long.class));
object.setDocumentName(resultSet.getObject("DOCUMENT_NAME", String.class));
object.setAddressee(resultSet.getObject("ADDRESSEE", String.class));
object.setQuantity(resultSet.getObject("QUANTITY", Long.class));
object.setClearingCode(resultSet.getObject("CLEARING_CODE", String.class));
object.setCourierType(resultSet.getObject("COURIER_TYPE", String.class));
object.setEmailDate(getInstantFromTimestamp(resultSet, "EMAIL_DATE"));
object.setEmailDate(getLocalDateFromSqlDate(resultSet, "EMAIL_DATE"));
object.setAmount(resultSet.getObject("AMOUNT", BigDecimal.class));
object.setDossierNumber(resultSet.getObject("DOSSIER_NUMBER", String.class));
object.setResultStatus(resultSet.getObject("RESULT_STATUS", String.class));
object.setPostDate(getInstantFromTimestamp(resultSet, "POST_DATE"));
object.setPostDate(getLocalDateFromSqlDate(resultSet, "POST_DATE"));
return object;
}
@ -59,18 +59,18 @@ public class OutDocumentJournalMapStore extends TemplateMapStore<OutDocumentJour
public Object[] objectToField(OutDocumentJournal object) {
Object[] args = new Object[]{
object.getId(),
TimeUtil.toDateFromInstant(object.getRegistrationDate()),
TimeUtil.toDateFromInstant(object.getRegistrationTime()),
TimeUtil.toDateFromLocalDate(object.getRegistrationDate()),
TimeUtil.toDateFromLocalTime(object.getRegistrationTime()),
object.getRegistrationNumber(),
object.getDocumentName(),
object.getAddressee(),
object.getQuantity(),
object.getClearingCode(),
object.getCourierType(),
TimeUtil.toDateFromInstant(object.getEmailDate()),
TimeUtil.toDateFromLocalDate(object.getEmailDate()),
object.getAmount(),
object.getDossierNumber(),
TimeUtil.toDateFromInstant(object.getPostDate()),
TimeUtil.toDateFromLocalDate(object.getPostDate()),
object.getResultStatus()
};
return args;

View file

@ -41,15 +41,15 @@ public class ProfileDocumentMapStore extends TemplateMapStore<ProfileDocument> {
object.setId(resultSet.getObject("id", Long.class));
object.setCompanyId(resultSet.getObject("company_id", Long.class));
object.setDocumentType(resultSet.getObject("document_type", String.class));
object.setIssueDate(getInstantFromTimestamp(resultSet, "issue_date"));
object.setIssueDate(getLocalDateFromSqlDate(resultSet, "issue_date"));
object.setIssuePlace(resultSet.getObject("issue_place", String.class));
object.setIssuer(resultSet.getObject("issuer", String.class));
object.setIssuerCode(resultSet.getObject("issuer_code", String.class));
object.setName(resultSet.getObject("name", String.class));
object.setNumber(resultSet.getObject("number", String.class));
object.setPlace(resultSet.getObject("place", String.class));
object.setValidFromDate(getInstantFromTimestamp(resultSet, "valid_from_date"));
object.setValidToDate(getInstantFromTimestamp(resultSet, "valid_to_date"));
object.setValidFromDate(getLocalDateFromSqlDate(resultSet, "valid_from_date"));
object.setValidToDate(getLocalDateFromSqlDate(resultSet, "valid_to_date"));
object.setLink(resultSet.getObject("LINK", String.class));
return object;
}
@ -60,15 +60,15 @@ public class ProfileDocumentMapStore extends TemplateMapStore<ProfileDocument> {
resultSet.getId(),
resultSet.getCompanyId(),
resultSet.getDocumentType(),
TimeUtil.toDateFromInstant(resultSet.getIssueDate()),
TimeUtil.toDateFromLocalDate(resultSet.getIssueDate()),
resultSet.getIssuePlace(),
resultSet.getIssuer(),
resultSet.getIssuerCode(),
resultSet.getName(),
resultSet.getNumber(),
resultSet.getPlace(),
TimeUtil.toDateFromInstant(resultSet.getValidFromDate()),
TimeUtil.toDateFromInstant(resultSet.getValidToDate()),
TimeUtil.toDateFromLocalDate(resultSet.getValidFromDate()),
TimeUtil.toDateFromLocalDate(resultSet.getValidToDate()),
resultSet.getLink()
};
return args;

View file

@ -5,6 +5,7 @@ import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.sdf.SDf04;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.sql.ResultSet;
import java.sql.SQLException;
@ -145,7 +146,7 @@ public class SDf04MapStore extends TemplateMapStore<SDf04> {
object.getDoc_result(),
object.getImp_result(),
object.getFile_name(),
object.getGenerationTime(),
TimeUtil.toDateFromInstant(object.getGenerationTime()),
object.getGenerationId()
};
return args;

View file

@ -5,6 +5,7 @@ import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.sdf.SDf09;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal;
import java.sql.ResultSet;
@ -41,6 +42,7 @@ public class SDf09MapStore extends TemplateMapStore<SDf09> {
object.setId(resultSet.getObject("ID", Long.class));
object.setAccount(resultSet.getString("ACCOUNT"));
object.setSum(resultSet.getObject("SUM", BigDecimal.class));
object.setMarket(resultSet.getString("MARKET"));
object.setType(resultSet.getString("TYPE"));
object.setNumber(resultSet.getObject("NUMBER", BigDecimal.class));
object.setInn(resultSet.getObject("_I_N_N", BigDecimal.class));
@ -56,11 +58,12 @@ public class SDf09MapStore extends TemplateMapStore<SDf09> {
object.getId(),
object.getAccount(),
object.getSum(),
object.getMarket(),
object.getType(),
object.getNumber(),
object.getInn(),
object.getFileName(),
object.getGenerationTime(),
TimeUtil.toDateFromInstant(object.getGenerationTime()),
object.getGenerationId()
};
return args;

View file

@ -41,6 +41,7 @@ public class SDf10MapStore extends TemplateMapStore<SDf10> {
SDf10 object = new SDf10();
object.setId(resultSet.getObject("ID", Long.class));
object.setAccount(resultSet.getObject("ACCOUNT", String.class));
object.setSum(resultSet.getObject("SUM", BigDecimal.class));
object.setMarket(resultSet.getObject("MARKET", String.class));
object.setType(resultSet.getObject("TYPE", String.class));
object.setNumber(resultSet.getObject("NUMBER", BigDecimal.class));
@ -57,6 +58,7 @@ public class SDf10MapStore extends TemplateMapStore<SDf10> {
Object[] args = new Object[]{
object.getId(),
object.getAccount(),
object.getSum(),
object.getMarket(),
object.getType(),
object.getNumber(),

View file

@ -30,7 +30,7 @@ public class SchedulerAllTodayMapStore extends TemplateMapStore<SchedulerAllToda
@Override
public String[] getFields() {
return new String[]{
"ID", "TASK", "TASK_TIME", "CLEARING_DATE", "MARKET", "TASK_STATUS", "SECURITY_ID", "SOURCE", "ORIG_ID"
"ID", "TASK", "TASK_TIME", "CLEARING_DATE", "MARKET", "TASK_STATUS", "SECURITY_ID", "SOURCE", "ORIG_ID"
};
}
@ -39,8 +39,8 @@ public class SchedulerAllTodayMapStore extends TemplateMapStore<SchedulerAllToda
SchedulerAllToday object = new SchedulerAllToday();
object.setId(resultSet.getObject("ID", Long.class));
object.setTask(resultSet.getObject("TASK", String.class));
object.setTaskTime(getInstantFromTimestamp(resultSet, "TASK_TIME"));
object.setClearingDate(getInstantFromTimestamp(resultSet, "CLEARING_DATE"));
object.setTaskTime(getLocalTimeFromSqlTime(resultSet, "TASK_TIME"));
object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
object.setMarket(resultSet.getObject("MARKET", String.class));
object.setTaskStatus(resultSet.getObject("TASK_STATUS", String.class));
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
@ -54,8 +54,8 @@ public class SchedulerAllTodayMapStore extends TemplateMapStore<SchedulerAllToda
Object[] args = new Object[]{
object.getId(),
object.getTask(),
TimeUtil.toDateFromInstant(object.getTaskTime()),
TimeUtil.toDateFromInstant(object.getClearingDate()),
TimeUtil.toDateFromLocalTime(object.getTaskTime()),
TimeUtil.toDateFromLocalDate(object.getClearingDate()),
object.getMarket(),
object.getTaskStatus(),
object.getSecurityId(),

View file

@ -38,12 +38,14 @@ import ru.spcex.platform.utils.text.TextUtil;
import javax.annotation.PostConstruct;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.sql.*;
import java.util.*;
import java.util.stream.Collectors;
import static ru.spcex.clearing.imdg.structure.RunnableMapNamesForTesting.businessObjectAndBusinessEventForCheckMapStores;
import static ru.spcex.clearing.imdg.structure.RunnableMapNamesForTesting.dictionaryObjectForCheckMapStores;
import static ru.spcex.clearing.imdg.utils.DbDataUtils.generatingRandomString;
@ContextConfiguration(classes = {
TestConfiguration.class,
@ -77,6 +79,22 @@ public class AllMapStoreTest {
companyInfo.setCompanyId(1000000L);
companyInfo.setId(1000000L);
objectForCheck.setPredictableObj(company);
} else if (objectForCheck.getMapName().startsWith("Map_SDf")) {
trySettingString(object, objectForCheck.getClazz(), "setMarket", 1);
trySettingString(object, objectForCheck.getClazz(), "setFile_type", 1);
trySettingString(object, objectForCheck.getClazz(), "setSeg_type", 1);
trySettingString(object, objectForCheck.getClazz(), "setPriority", 1);
trySettingString(object, objectForCheck.getClazz(), "setPr", 1);
trySettingString(object, objectForCheck.getClazz(), "setType", 1);
trySettingString(object, objectForCheck.getClazz(), "setOp_order", 1);
trySettingString(object, objectForCheck.getClazz(), "setSp_code", 2);
trySettingString(object, objectForCheck.getClazz(), "setDoc_result", 2);
trySettingString(object, objectForCheck.getClazz(), "setAcc_type", 2);
trySettingString(object, objectForCheck.getClazz(), "setOp_type", 2);
trySettingString(object, objectForCheck.getClazz(), "setDoc_result", 2);
trySettingString(object, objectForCheck.getClazz(), "setResult", 3);
trySettingString(object, objectForCheck.getClazz(), "setImp_result", 3);
objectForCheck.setPredictableObj(object);
} else {
objectForCheck.setPredictableObj(object);
}
@ -248,6 +266,14 @@ public class AllMapStoreTest {
}
}
private void trySettingString(SpcexObjectBase object, Class clazz, String methodName, int lenght) {
try {
Method method = clazz.getDeclaredMethod(methodName, String.class);
method.invoke(object, generatingRandomString(lenght));
} catch (Exception ignored) {
}
}
private void makeInsertSql(String tableName, String[] fields, Object[] args, String matchingKey) {
String INSERT_TEMPLATE = "INSERT INTO ${tableName} (${columnsEnumeration}) VALUES (${valuesEnumeration}) ON CONFLICT (${matchingKey}) DO UPDATE SET ${excludedColumns}";

View file

@ -54,15 +54,15 @@ public class BusinessObjectAndBusinessEventForCheckMapStore<T> {
}
public static class SettingOperation {
private static String methodName;
private static Class[] parameterTypes;
private static Object[] params;
private final String methodName;
private final Class[] parameterTypes;
private final Object[] params;
//сеттер для полей значения которых обрезаются при вставке в БД
public SettingOperation(String methodName, Class[] parameterTypes, Object[] params) {
SettingOperation.methodName = methodName;
SettingOperation.parameterTypes = parameterTypes;
SettingOperation.params = params;
this.methodName = methodName;
this.parameterTypes = parameterTypes;
this.params = params;
}
public String getMethodName() {

View file

@ -3,20 +3,24 @@ package ru.spcex.clearing.imdg.structure;
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.CompanyRoleSet;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.company.relation.Relation;
import ru.clearing.classes.statics.data.company.relation.RelationHistory;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.journal.InDocumentJournal;
import ru.clearing.classes.statics.data.journal.OutDocumentJournal;
import ru.clearing.classes.statics.data.messages.ErrorText;
import ru.clearing.classes.statics.data.scheduler.Scheduler;
import ru.clearing.classes.statics.data.scheduler.TaskRunner;
import ru.clearing.classes.statics.data.scheduler.Timetable;
import ru.clearing.classes.statics.data.scheduler.TradingCalendar;
import ru.clearing.classes.statics.data.misc.KeyRate;
import ru.clearing.classes.statics.data.misc.MoneyMarketSecurity;
import ru.clearing.classes.statics.data.profile.Contact;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.clearing.classes.statics.data.scheduler.*;
import ru.clearing.classes.statics.data.sdf.*;
import ru.clearing.classes.statics.data.security.Security;
import ru.clearing.classes.statics.data.security.SecurityHistory;
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.*;
import ru.clearing.platform.dictionary.*;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.structure.BusinessObjectAndBusinessEventForCheckMapStore.SettingOperation;
@ -109,5 +113,36 @@ public class RunnableMapNamesForTesting {
//object
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_AccountRouting, AccountRouting.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_BankAccount, BankAccount.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_ClearingMemberCategory, ClearingMemberCategory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CompanyRoleSet, CompanyRoleSet.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_Contact, Contact.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_InDocumentJournal, InDocumentJournal.class,
new SettingOperation("setAmount", new Class[]{BigDecimal.class}, new Object[]{new BigDecimal("23.22")})));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_InformationAccount, InformationAccount.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_KeyRate, KeyRate.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class,
new SettingOperation("setNominalValue", new Class[]{BigDecimal.class}, new Object[]{new BigDecimal("23.22")})));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_OutDocumentJournal, OutDocumentJournal.class,
new SettingOperation("setAmount", new Class[]{BigDecimal.class}, new Object[]{new BigDecimal("23.22")})));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_ProfileDocument, ProfileDocument.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SchedulerAllToday, SchedulerAllToday.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf01, SDf01.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf02, SDf02.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf03, SDf03.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf04, SDf04.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf05, SDf05.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf08, SDf08.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf09, SDf09.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf10, SDf10.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf11, SDf11.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf12, SDf12.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf13, SDf13.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf16, SDf16.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf17, SDf17.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SDf18, SDf18.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserRoleSession, UserRoleSession.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserSettings, UserSettings.class));
}
}