akulikov 2023-11-23 14:21:27 +03:00
parent 7641b2691c
commit e028aee516
3 changed files with 26 additions and 4 deletions

View file

@ -57,6 +57,10 @@ public class KSCommissionTradesReport {
@CsvBindByPosition(position = 10)
private String execStatus;
@CsvBindByName(column = "TR_ID")
@CsvBindByPosition(position = 11)
private Long trId;
public String getFirmId() {
return firmId;
@ -145,4 +149,12 @@ public class KSCommissionTradesReport {
public void setAgreementSettlementDate(LocalDate agreementSettlementDate) {
this.agreementSettlementDate = agreementSettlementDate;
}
public Long getTrId() {
return trId;
}
public void setTrId(Long trId) {
this.trId = trId;
}
}

View file

@ -125,8 +125,17 @@ public class KSCommissionTradesReportBuilder extends CSVReportBuilder<EmptyParam
RegistryStatus registryStatus = IEnumKey.getEnumByKey(RegistryStatus.class, registry.getRegistryStatus());
if (registryStatus == RegistryStatus.CLRD) execStatus = "Исполнен";
else if (registryStatus == RegistryStatus.FAIL) execStatus = "Не исполнен";
else if (registryStatus == RegistryStatus.MNG || registryStatus == RegistryStatus.PROC)
execStatus = "Срок исполнения не наступил";
else if (registryStatus == RegistryStatus.MNG || registryStatus == RegistryStatus.PROC) {
if (registry.getSettlementDate() == null) {
log.warn("Can't define status: registry.settlementDate is null. Registry was skipped");
continue;
}
if (nowDate.isBefore(registry.getSettlementDate())) {
execStatus = "Срок исполнения не наступил";
} else {
execStatus = "Ожидает исполнения";
}
}
String agreementNumber = registry.getContract();
if (agreementNumber != null && agreementNumber.contains("~"))
@ -163,6 +172,7 @@ public class KSCommissionTradesReportBuilder extends CSVReportBuilder<EmptyParam
ksCommissionTradesReport.setRepaymDate(registry.getRefundDate());
ksCommissionTradesReport.setExecStatus(execStatus);
ksCommissionTradesReport.setAgreementSettlementDate(registry.getValueDate());
ksCommissionTradesReport.setTrId(registry.getGroupId());
rows.add(ksCommissionTradesReport);
} catch (Throwable e) {

View file

@ -1,2 +1,2 @@
"FIRM_ID","FIRM_ID_INITIATOR","SECCODE","CLASS_CODE","AGREEMENT_NUMBER","AGREEMENT_NUMBER_POSTFIX","AGREEMENT_DATE","AGREEMENT_SETTLEMENT_DATE","SUM","REPAYM_DATE","EXEC_STATUS"
"CLEARING_CODE","TRADING_CODE","CONT~RACT","market","CONT","CONT~RACT","01.01.1991","06.11.2023","-77.78","16.11.2023","Исполнен"
"FIRM_ID","FIRM_ID_INITIATOR","SECCODE","CLASS_CODE","AGREEMENT_NUMBER","AGREEMENT_NUMBER_POSTFIX","AGREEMENT_DATE","AGREEMENT_SETTLEMENT_DATE","SUM","REPAYM_DATE","EXEC_STATUS","TR_ID"
"CLEARING_CODE","TRADING_CODE","CONT~RACT","market","CONT","CONT~RACT","01.01.1991","13.11.2023","-77.78","23.11.2023","Исполнен","23071812300"

1 FIRM_ID FIRM_ID_INITIATOR SECCODE CLASS_CODE AGREEMENT_NUMBER AGREEMENT_NUMBER_POSTFIX AGREEMENT_DATE AGREEMENT_SETTLEMENT_DATE SUM REPAYM_DATE EXEC_STATUS TR_ID
2 CLEARING_CODE TRADING_CODE CONT~RACT market CONT CONT~RACT 01.01.1991 06.11.2023 13.11.2023 -77.78 16.11.2023 23.11.2023 Исполнен 23071812300