sdf54 поля SCLIENTN1, INN_DEB, KPP_DEB
This commit is contained in:
parent
301ffed9d6
commit
54b0f08050
2 changed files with 22 additions and 9 deletions
|
|
@ -68,6 +68,9 @@ public class Sdf54Creator {
|
||||||
Status.Active.getKey(),
|
Status.Active.getKey(),
|
||||||
pmt.getCreditLeg_currencyCode()
|
pmt.getCreditLeg_currencyCode()
|
||||||
));
|
));
|
||||||
|
if (anltAcc == null) {
|
||||||
|
throw new IllegalStateException("couldn't fill acc_deb - no ANLT account for " + pmt.getCreditLeg_currencyCode());
|
||||||
|
}
|
||||||
// c_acc_deb = c_acc_deb == null ? paymentInstruction.getCreditLeg_account() : c_acc_deb;
|
// c_acc_deb = c_acc_deb == null ? paymentInstruction.getCreditLeg_account() : c_acc_deb;
|
||||||
c_acc_cred = c_acc_cred == null ? pmt.getDebitLeg_account() : c_acc_cred;
|
c_acc_cred = c_acc_cred == null ? pmt.getDebitLeg_account() : c_acc_cred;
|
||||||
|
|
||||||
|
|
@ -77,6 +80,9 @@ public class Sdf54Creator {
|
||||||
sDf54.setId(idGenerator.nextId());
|
sDf54.setId(idGenerator.nextId());
|
||||||
sDf54.setSeg_type("V");
|
sDf54.setSeg_type("V");
|
||||||
|
|
||||||
|
Long debCompanyId = anltAcc.getCompanyId();
|
||||||
|
sDf54.setAcc_deb(anltAcc.getAccount());
|
||||||
|
|
||||||
//**********************
|
//**********************
|
||||||
String tranBic = selectSymbolValue(Sender.Prc.getId(), CompanySymbol.BIC);
|
String tranBic = selectSymbolValue(Sender.Prc.getId(), CompanySymbol.BIC);
|
||||||
if (tranBic == null) {
|
if (tranBic == null) {
|
||||||
|
|
@ -103,22 +109,19 @@ public class Sdf54Creator {
|
||||||
sDf54::setSbanknam5);
|
sDf54::setSbanknam5);
|
||||||
sDf54.setOp_type("01");
|
sDf54.setOp_type("01");
|
||||||
sDf54.setOp_order("5");
|
sDf54.setOp_order("5");
|
||||||
String innDeb = selectSymbolValue(Sender.One.getId(), CompanySymbol.INN);
|
String innDeb = selectSymbolValue(debCompanyId, CompanySymbol.INN);
|
||||||
if (innDeb == null) {
|
if (innDeb == null) {
|
||||||
log.warn("CompanySymbols INN not found for companyId={}", Sender.One.getId());
|
log.warn("CompanySymbols INN not found for companyId={}", debCompanyId);
|
||||||
} else {
|
} else {
|
||||||
sDf54.setInn_deb(innDeb);
|
sDf54.setInn_deb(innDeb);
|
||||||
}
|
}
|
||||||
String kppDeb = selectSymbolValue(Sender.One.getId(), CompanySymbol.CPP);
|
String kppDeb = selectSymbolValue(debCompanyId, CompanySymbol.CPP);
|
||||||
if (kppDeb == null) {
|
if (kppDeb == null) {
|
||||||
log.warn("CompanySymbols CPP not found for companyId={}", Sender.One.getId());
|
log.warn("CompanySymbols CPP not found for companyId={}", debCompanyId);
|
||||||
} else {
|
} else {
|
||||||
sDf54.setKpp_deb(kppDeb);
|
sDf54.setKpp_deb(kppDeb);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (anltAcc != null) {
|
|
||||||
sDf54.setAcc_deb(anltAcc.getAccount());
|
|
||||||
}
|
|
||||||
Account accDebAcc = accountImdg.getSingleObjectByID(pmt.getDebitLeg_accountId());
|
Account accDebAcc = accountImdg.getSingleObjectByID(pmt.getDebitLeg_accountId());
|
||||||
if (accDebAcc == null || !AccountStatus.ACTIVE.equalsByKey(accDebAcc.getStatus())) {
|
if (accDebAcc == null || !AccountStatus.ACTIVE.equalsByKey(accDebAcc.getStatus())) {
|
||||||
log.warn("paymentInstruction[{}].DebitLeg_accountId={} account not exist or not active.", pmt.getId(), pmt.getDebitLeg_accountId());
|
log.warn("paymentInstruction[{}].DebitLeg_accountId={} account not exist or not active.", pmt.getId(), pmt.getDebitLeg_accountId());
|
||||||
|
|
@ -177,7 +180,7 @@ public class Sdf54Creator {
|
||||||
sDf54.setC_acc_cred(c_acc_cred);
|
sDf54.setC_acc_cred(c_acc_cred);
|
||||||
|
|
||||||
{
|
{
|
||||||
Company company1 = companyImdg.getSingleObjectByID(Sender.One.getId());
|
Company company1 = companyImdg.getSingleObjectByID(debCompanyId);
|
||||||
if (company1 != null) { // "АО СПВБ" company.shortName[id = 1]
|
if (company1 != null) { // "АО СПВБ" company.shortName[id = 1]
|
||||||
String sclientn;
|
String sclientn;
|
||||||
if (LocaleUtil.isRus(locale)) {
|
if (LocaleUtil.isRus(locale)) {
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,7 @@ import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||||
import ru.spcex.platform.utils.enumeration.IEnumId;
|
import ru.spcex.platform.utils.enumeration.IEnumId;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.localization.SpringPropertiesLocalizer;
|
import ru.spcex.platform.utils.localization.SpringPropertiesLocalizer;
|
||||||
|
import ru.spcex.platform.utils.log.ExceptionUtils;
|
||||||
import static ru.spcex.platform.utils.number.BigDecimalUtil.safeBD;
|
import static ru.spcex.platform.utils.number.BigDecimalUtil.safeBD;
|
||||||
import ru.spcex.platform.utils.text.TextUtil;
|
import ru.spcex.platform.utils.text.TextUtil;
|
||||||
import ru.spcex.platform.utils.validation.IValidator;
|
import ru.spcex.platform.utils.validation.IValidator;
|
||||||
|
|
@ -195,7 +196,16 @@ public class PaymentInstructionOutboundService {
|
||||||
}
|
}
|
||||||
log.debug("assets found and balance is ok. am*b.id={}, am*t.id={}, am*f.id={}",
|
log.debug("assets found and balance is ok. am*b.id={}, am*t.id={}, am*f.id={}",
|
||||||
assets.get().a__b().getId(), assets.get().a__t().getId(), assets.get().a__f().getId());
|
assets.get().a__b().getId(), assets.get().a__t().getId(), assets.get().a__f().getId());
|
||||||
SDf54 sDf54 = sdf54Creator.create(pmt);
|
SDf54 sDf54 = null;
|
||||||
|
try {
|
||||||
|
sDf54 = sdf54Creator.create(pmt);
|
||||||
|
} catch (IllegalStateException e) {
|
||||||
|
log.error(ExceptionUtils.getStackTrace(e));
|
||||||
|
pmt.setTransactionStatus(TransactionStatus.fail.getKey());
|
||||||
|
pmt.setUpdated(now);
|
||||||
|
pmtImdg.update(pmt);
|
||||||
|
return error(req.getId(), ClearingError.GeneralError);
|
||||||
|
}
|
||||||
sDf54.setId(idGenerator.nextId());
|
sDf54.setId(idGenerator.nextId());
|
||||||
sDf54.setGenerationId(pmt.getId());
|
sDf54.setGenerationId(pmt.getId());
|
||||||
if (time.isTradingTime()) {
|
if (time.isTradingTime()) {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue