clearing-service http://jira.mfd.msk:8088/browse/CLS-189 доделки 2.2.2.2
This commit is contained in:
parent
118ad70db0
commit
560ffc160a
1 changed files with 16 additions and 10 deletions
|
|
@ -22,10 +22,7 @@ import java.math.BigDecimal;
|
|||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
|
@ -507,29 +504,38 @@ public class PaymentInstructionCreator {
|
|||
if (liabilitiesClaimsAssets == null) {
|
||||
throw new RuntimeException("IMDG not found LiabilitiesClaimsMoney.id=" + lmId);
|
||||
}
|
||||
|
||||
updateFieldLiabilitiesClaimsMoneyByPayment(liabilitiesClaimsMoney, liabilitiesClaimsAssets, paymentInstructions, clearingCategory);
|
||||
if (!Objects.equals(liabilitiesClaimsMoney.getSettlementDate(), liabilitiesClaimsAssets.getSettlementDate())) {
|
||||
log.warn("Date not match: LiabilitiesClaimsMoney[{}].settlementDate={} and LiabilitiesClaimsAssets[{}].settlementDate={}. It is first leg?",
|
||||
liabilitiesClaimsMoney.getId(), liabilitiesClaimsMoney.getSettlementDate(), liabilitiesClaimsAssets.getId(), liabilitiesClaimsAssets.getSettlementDate()
|
||||
);
|
||||
}
|
||||
updateFieldLiabilitiesClaimsMoneyByPayment(liabilitiesClaimsMoney, paymentInstructions, clearingCategory);
|
||||
|
||||
liabilitiesClaimsMoneyImdg.update(liabilitiesClaimsMoney);
|
||||
return liabilitiesClaimsMoney;
|
||||
}
|
||||
|
||||
/**
|
||||
* Обновление liabilitiesClaimsMoney первой ноги по liabilitiesClaimsAssets
|
||||
* @param liabilitiesClaimsMoney обновить этот объект
|
||||
* @param paymentInstructions
|
||||
* @param clearingCategory
|
||||
* @return были внесены изменения в liabilitiesClaimsMoney
|
||||
*/
|
||||
protected boolean updateFieldLiabilitiesClaimsMoneyByPayment(LiabilitiesClaimsMoney liabilitiesClaimsMoney,
|
||||
LiabilitiesClaimsAssets liabilitiesClaimsAssets,
|
||||
List<PaymentInstruction> paymentInstructions,
|
||||
Collection<ClearingCategory> clearingCategory) {
|
||||
boolean modified = false;
|
||||
boolean isFirstLeg = true; // todo уточню ТЗ и допишу.
|
||||
|
||||
PaymentInstruction paymentIAny=paymentInstructions.iterator().next();
|
||||
|
||||
if ((clearingCategory.contains(ClearingCategory.I) || clearingCategory.contains(ClearingCategory.V)) && isFirstLeg) {
|
||||
if ((clearingCategory.contains(ClearingCategory.I) || clearingCategory.contains(ClearingCategory.V))) {
|
||||
BigDecimal amount = liabilitiesClaimsMoney.getLiabilitiesAmount().subtract(new BigDecimal((Long)paymentIAny.getCreditLegAmount()));
|
||||
liabilitiesClaimsMoney.setLiabilitiesAmount(amount);
|
||||
modified = true;
|
||||
}
|
||||
|
||||
if ((clearingCategory.contains(ClearingCategory.B)) && isFirstLeg) {
|
||||
if ((clearingCategory.contains(ClearingCategory.B))) {
|
||||
BigDecimal amount = liabilitiesClaimsMoney.getClaimsAmount().subtract(new BigDecimal((Long)paymentIAny.getDebitLegAmount()));
|
||||
liabilitiesClaimsMoney.setClaimsAmount(amount);
|
||||
modified = true;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue