Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
swiftMtMx
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
isc-v3.1-tmp
swiftMtMx
Commits
0dfd1aa2
Commit
0dfd1aa2
authored
Apr 28, 2022
by
zhanghou
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
将一些常量提取出来
parent
91498bcd
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
253 additions
and
33 deletions
+253
-33
SwiftDto2MtContextIdentifier.java
...iance/swift/swiftdto2mt/SwiftDto2MtContextIdentifier.java
+29
-0
SwiftDto2Mt900910Creator.java
.../swift/swiftdto2mt/mt900910/SwiftDto2Mt900910Creator.java
+5
-2
SwiftDto2Mt940950Creator.java
.../swift/swiftdto2mt/mt940950/SwiftDto2Mt940950Creator.java
+5
-2
Tag60aGenerate.java
...iance/swift/swiftdto2mt/mt940950/impl/Tag60aGenerate.java
+9
-7
Tag61Generate.java
...liance/swift/swiftdto2mt/mt940950/impl/Tag61Generate.java
+9
-6
Tag62aGenerate.java
...iance/swift/swiftdto2mt/mt940950/impl/Tag62aGenerate.java
+9
-6
Tag64Generate.java
...liance/swift/swiftdto2mt/mt940950/impl/Tag64Generate.java
+8
-5
Tag65Generate.java
...liance/swift/swiftdto2mt/mt940950/impl/Tag65Generate.java
+8
-5
SwiftDto2MxCamt054001Creator.java
...ftdto2mx/camt054001/v09/SwiftDto2MxCamt054001Creator.java
+171
-0
No files found.
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/SwiftDto2MtContextIdentifier.java
View file @
0dfd1aa2
...
...
@@ -9,4 +9,33 @@ public class SwiftDto2MtContextIdentifier {
public
static
final
String
SWIFT_DTO_OBJ
=
"swift.dto.obj"
;
public
static
final
String
MT_IO_TYPE
=
"mt.io.type"
;
public
static
final
String
MT_TYPE_900
=
"900"
;
public
static
final
String
MT_TYPE_910
=
"910"
;
public
static
final
String
MT_TYPE_940
=
"940"
;
public
static
final
String
MT_TYPE_950
=
"950"
;
public
static
final
String
DRCRMARK_C
=
"C"
;
public
static
final
String
DRCRMARK_D
=
"D"
;
public
static
final
String
DRCRMARK_RC
=
"RC"
;
public
static
final
String
DRCRMARK_RD
=
"RD"
;
public
static
final
String
CD_60F
=
"PRCD"
;
public
static
final
String
CD_60M
=
"ITBD"
;
public
static
final
String
CD_62F
=
"CLBD"
;
public
static
final
String
CD_62M
=
"ITBD"
;
public
static
final
String
CD_64
=
"CLAV"
;
public
static
final
String
CD_65
=
"FWAV"
;
}
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt900910/SwiftDto2Mt900910Creator.java
View file @
0dfd1aa2
...
...
@@ -9,6 +9,9 @@ import com.brilliance.swift.vo.BankToCustomerDebitCreditNotification;
import
java.util.ArrayList
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.
MT_TYPE_900
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.
MT_TYPE_910
;
public
class
SwiftDto2Mt900910Creator
extends
AbstractSwiftDto2MtCreator
{
@Override
public
List
<
SwiftDto2MtTagGenerate
>
getGenerateTagList
()
{
...
...
@@ -29,9 +32,9 @@ public class SwiftDto2Mt900910Creator extends AbstractSwiftDto2MtCreator {
protected
String
getMtType
()
{
BankToCustomerDebitCreditNotification
bankToCustomerDebitCreditNotification
=
(
BankToCustomerDebitCreditNotification
)
context
.
get
(
SwiftDto2MtContextIdentifier
.
SWIFT_DTO_OBJ
,
true
);
if
(
bankToCustomerDebitCreditNotification
.
getCdtDbtCode
().
equals
(
"DBIT"
)){
return
"900"
;
return
MT_TYPE_900
;
}
else
{
return
"910"
;
return
MT_TYPE_910
;
}
}
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt940950/SwiftDto2Mt940950Creator.java
View file @
0dfd1aa2
...
...
@@ -9,6 +9,9 @@ import com.brilliance.swift.vo.BankToCustomerStatement;
import
java.util.ArrayList
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.
MT_TYPE_940
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.
MT_TYPE_950
;
public
class
SwiftDto2Mt940950Creator
extends
AbstractSwiftDto2MtCreator
{
@Override
public
List
<
SwiftDto2MtTagGenerate
>
getGenerateTagList
()
{
...
...
@@ -30,9 +33,9 @@ public class SwiftDto2Mt940950Creator extends AbstractSwiftDto2MtCreator {
protected
String
getMtType
()
{
BankToCustomerStatement
bankToCustomerStatement
=
(
BankToCustomerStatement
)
context
.
get
(
SwiftDto2MtContextIdentifier
.
SWIFT_DTO_OBJ
,
true
);
if
(
bankToCustomerStatement
.
getCd
().
equals
(
"FWAV"
)||
bankToCustomerStatement
.
getAddtlStmtInf
()!=
null
){
return
"940"
;
return
MT_TYPE_940
;
}
else
{
return
"950"
;
return
MT_TYPE_950
;
}
}
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt940950/impl/Tag60aGenerate.java
View file @
0dfd1aa2
...
...
@@ -4,16 +4,18 @@ import com.brilliance.swift.exception.SwiftException;
import
com.brilliance.swift.swiftdto2mt.AbstractSwiftDto2MtTagGenerate
;
import
com.brilliance.swift.swiftdto2mt.SwiftDto2MtContextIdentifier
;
import
com.brilliance.swift.util.DateUtil
;
import
com.brilliance.swift.util.StringUtil
;
import
com.brilliance.swift.vo.BankToCustomerStatement
;
import
com.brilliance.swift.vo.common.BalDto
;
import
com.prowidesoftware.swift.model.SwiftMessage
;
import
com.prowidesoftware.swift.model.Tag
;
import
com.prowidesoftware.swift.model.mx.dic.CreditDebitCode
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.*;
public
class
Tag60aGenerate
extends
AbstractSwiftDto2MtTagGenerate
{
...
...
@@ -31,13 +33,13 @@ public class Tag60aGenerate extends AbstractSwiftDto2MtTagGenerate {
if
(
openBalance
!=
null
){
String
value
=
""
;
String
dcMark
=
""
;
if
(
"PRCD"
.
equals
(
openBalance
.
getCd
())){
if
(
CD_60F
.
equals
(
openBalance
.
getCd
())){
tags
.
add
(
new
Tag
(
name_F
,
""
));
}
else
if
(
"ITBD"
.
equals
(
openBalance
.
getCd
())){
if
(
"CRDT"
.
equals
(
openBalance
.
getCdtDbtInd
())){
dcMark
=
"C"
;
}
else
if
(
"DBIT"
.
equals
(
openBalance
.
getCdtDbtInd
())){
dcMark
=
"D"
;
}
else
if
(
CD_60M
.
equals
(
openBalance
.
getCd
())){
if
(
CreditDebitCode
.
CRDT
.
value
()
.
equals
(
openBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_C
;
}
else
if
(
CreditDebitCode
.
DBIT
.
value
()
.
equals
(
openBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_D
;
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"cannot find filed60 D/C Mark."
);
}
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt940950/impl/Tag61Generate.java
View file @
0dfd1aa2
...
...
@@ -10,11 +10,14 @@ import com.brilliance.swift.vo.BankToCustomerStatement;
import
com.brilliance.swift.vo.common.statementBreakdown
;
import
com.prowidesoftware.swift.model.SwiftMessage
;
import
com.prowidesoftware.swift.model.Tag
;
import
com.prowidesoftware.swift.model.mx.dic.CreditDebitCode
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.*;
public
class
Tag61Generate
extends
AbstractSwiftDto2MtTagGenerate
{
...
...
@@ -45,17 +48,17 @@ public class Tag61Generate extends AbstractSwiftDto2MtTagGenerate {
if
(
bookDate
!=
null
){
bookDateStr
=
DateUtil
.
format
(
valueDate
,
"yyMMdd"
);
}
if
(
"CRDT"
.
equals
(
statementBreakdown
.
getCdtDbtInd
())){
if
(
CreditDebitCode
.
CRDT
.
value
()
.
equals
(
statementBreakdown
.
getCdtDbtInd
())){
if
(
"true"
.
equals
(
statementBreakdown
.
getCdtDbtInd
())){
dcMark
=
"RD"
;
dcMark
=
DRCRMARK_RD
;
}
else
{
dcMark
=
"C"
;
dcMark
=
DRCRMARK_C
;
}
}
else
if
(
"DBIT"
.
equals
(
statementBreakdown
.
getCdtDbtInd
())){
}
else
if
(
CreditDebitCode
.
DBIT
.
value
()
.
equals
(
statementBreakdown
.
getCdtDbtInd
())){
if
(
"true"
.
equals
(
statementBreakdown
.
getCdtDbtInd
())){
dcMark
=
"RC"
;
dcMark
=
DRCRMARK_RC
;
}
else
{
dcMark
=
"D"
;
dcMark
=
DRCRMARK_D
;
}
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"cannot find filed61 D/C Mark."
);
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt940950/impl/Tag62aGenerate.java
View file @
0dfd1aa2
...
...
@@ -9,11 +9,14 @@ import com.brilliance.swift.vo.BankToCustomerStatement;
import
com.brilliance.swift.vo.common.BalDto
;
import
com.prowidesoftware.swift.model.SwiftMessage
;
import
com.prowidesoftware.swift.model.Tag
;
import
com.prowidesoftware.swift.model.mx.dic.CreditDebitCode
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.*;
public
class
Tag62aGenerate
extends
AbstractSwiftDto2MtTagGenerate
{
...
...
@@ -31,13 +34,13 @@ public class Tag62aGenerate extends AbstractSwiftDto2MtTagGenerate {
if
(
closingBalance
!=
null
){
String
value
=
""
;
String
dcMark
=
""
;
if
(
"CLBD"
.
equals
(
closingBalance
.
getCd
())){
if
(
CD_62F
.
equals
(
closingBalance
.
getCd
())){
tags
.
add
(
new
Tag
(
name_F
,
""
));
}
else
if
(
"ITBD"
.
equals
(
closingBalance
.
getCd
())){
if
(
"CRDT"
.
equals
(
closingBalance
.
getCdtDbtInd
())){
dcMark
=
"C"
;
}
else
if
(
"DBIT"
.
equals
(
closingBalance
.
getCdtDbtInd
())){
dcMark
=
"D"
;
}
else
if
(
CD_62M
.
equals
(
closingBalance
.
getCd
())){
if
(
CreditDebitCode
.
CRDT
.
value
()
.
equals
(
closingBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_C
;
}
else
if
(
CreditDebitCode
.
DBIT
.
value
()
.
equals
(
closingBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_D
;
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"cannot find filed60 D/C Mark."
);
}
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt940950/impl/Tag64Generate.java
View file @
0dfd1aa2
...
...
@@ -9,11 +9,14 @@ import com.brilliance.swift.vo.BankToCustomerStatement;
import
com.brilliance.swift.vo.common.BalDto
;
import
com.prowidesoftware.swift.model.SwiftMessage
;
import
com.prowidesoftware.swift.model.Tag
;
import
com.prowidesoftware.swift.model.mx.dic.CreditDebitCode
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.*;
public
class
Tag64Generate
extends
AbstractSwiftDto2MtTagGenerate
{
...
...
@@ -26,13 +29,13 @@ public class Tag64Generate extends AbstractSwiftDto2MtTagGenerate {
SwiftMessage
swiftMessage
=
context
.
get
(
SwiftMessage
.
class
);
List
<
Tag
>
tags
=
swiftMessage
.
getBlock4
().
getTags
();
BalDto
closingAvailableBalance
=
bankToCustomerStatement
.
getClosingAvailableBalance
();
if
(
closingAvailableBalance
!=
null
&&
"CLBD"
.
equals
(
closingAvailableBalance
.
getCd
())){
if
(
closingAvailableBalance
!=
null
&&
CD_64
.
equals
(
closingAvailableBalance
.
getCd
())){
String
value
=
""
;
String
dcMark
=
""
;
if
(
"CRDT"
.
equals
(
closingAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
"C"
;
}
else
if
(
"DBIT"
.
equals
(
closingAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
"D"
;
if
(
CreditDebitCode
.
CRDT
.
value
()
.
equals
(
closingAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_C
;
}
else
if
(
CreditDebitCode
.
DBIT
.
value
()
.
equals
(
closingAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_D
;
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"cannot find filed60 D/C Mark."
);
}
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mt/mt940950/impl/Tag65Generate.java
View file @
0dfd1aa2
...
...
@@ -10,12 +10,15 @@ import com.brilliance.swift.vo.BankToCustomerStatement;
import
com.brilliance.swift.vo.common.BalDto
;
import
com.prowidesoftware.swift.model.SwiftMessage
;
import
com.prowidesoftware.swift.model.Tag
;
import
com.prowidesoftware.swift.model.mx.dic.CreditDebitCode
;
import
com.prowidesoftware.swift.model.mx.dic.Value
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
static
com
.
brilliance
.
swift
.
swiftdto2mt
.
SwiftDto2MtContextIdentifier
.*;
public
class
Tag65Generate
extends
AbstractSwiftDto2MtTagGenerate
{
...
...
@@ -35,12 +38,12 @@ public class Tag65Generate extends AbstractSwiftDto2MtTagGenerate {
if
(
count
>=
1
){
sb
.
append
(
Mx2MtConstants
.
NEW_LINE
).
append
(
":65:"
);
}
if
(
forwardAvailableBalance
!=
null
&&
"FWAV"
.
equals
(
forwardAvailableBalance
.
getCd
())){
if
(
forwardAvailableBalance
!=
null
&&
CD_65
.
equals
(
forwardAvailableBalance
.
getCd
())){
String
dcMark
=
""
;
if
(
"CRDT"
.
equals
(
forwardAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
"C"
;
}
else
if
(
"DBIT"
.
equals
(
forwardAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
"D"
;
if
(
CreditDebitCode
.
CRDT
.
value
()
.
equals
(
forwardAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_C
;
}
else
if
(
CreditDebitCode
.
DBIT
.
value
()
.
equals
(
forwardAvailableBalance
.
getCdtDbtInd
())){
dcMark
=
DRCRMARK_D
;
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"cannot find filed60 D/C Mark."
);
}
...
...
swiftCore/src/main/java/com/brilliance/swift/swiftdto2mx/camt054001/v09/SwiftDto2MxCamt054001Creator.java
0 → 100644
View file @
0dfd1aa2
package
com
.
brilliance
.
swift
.
swiftdto2mx
.
camt054001
.
v09
;
import
com.brilliance.swift.exception.SwiftException
;
import
com.brilliance.swift.swiftdto2mx.AbstractSwiftDto2MxCreator
;
import
com.brilliance.swift.swiftdto2mx.SwiftDto2MxContextIdentifier
;
import
com.brilliance.swift.util.DateUtil
;
import
com.brilliance.swift.util.StringUtil
;
import
com.brilliance.swift.vo.BankToCustomerDebitCreditNotification
;
import
com.brilliance.swift.vo.common.CcyFormatAmount
;
import
com.brilliance.swift.vo.common.MessagePriority
;
import
com.brilliance.swift.vo.common.PartyDto
;
import
com.prowidesoftware.swift.model.mx.BusinessAppHdrV02
;
import
com.prowidesoftware.swift.model.mx.MxCamt05400102
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
javax.xml.datatype.XMLGregorianCalendar
;
import
java.io.File
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author zh
* @create 2022-04-26 11:44
*/
public
class
SwiftDto2MxCamt054001Creator
extends
AbstractSwiftDto2MxCreator
{
@Override
public
void
create
()
throws
SwiftException
{
try
{
BankToCustomerDebitCreditNotification
bankToCustomerDebitCreditNotification
=
(
BankToCustomerDebitCreditNotification
)
context
.
get
(
SwiftDto2MxContextIdentifier
.
SWIFT_DTO_OBJ
,
true
);
if
(
bankToCustomerDebitCreditNotification
==
null
)
{
return
;
}
MxCamt05400102
mxCamt05400102
=
new
MxCamt05400102
();
//set AppHdr
BusinessAppHdrV02
businessAppHdrV02
=
new
BusinessAppHdrV02
();
//fr
Party44Choice
fr
=
new
Party44Choice
();
BranchAndFinancialInstitutionIdentification6
fiId
=
new
BranchAndFinancialInstitutionIdentification6
();
FinancialInstitutionIdentification18
finInstnId
=
new
FinancialInstitutionIdentification18
();
finInstnId
.
setBICFI
(
bankToCustomerDebitCreditNotification
.
getSenderBic
());
fiId
.
setFinInstnId
(
finInstnId
);
fr
.
setFIId
(
fiId
);
businessAppHdrV02
.
setFr
(
fr
);
//to
Party44Choice
to
=
new
Party44Choice
();
BranchAndFinancialInstitutionIdentification6
toFiId
=
new
BranchAndFinancialInstitutionIdentification6
();
FinancialInstitutionIdentification18
toFinInstnId
=
new
FinancialInstitutionIdentification18
();
toFinInstnId
.
setBICFI
(
bankToCustomerDebitCreditNotification
.
getReceiverBic
());
toFiId
.
setFinInstnId
(
toFinInstnId
);
to
.
setFIId
(
toFiId
);
businessAppHdrV02
.
setTo
(
to
);
//
XMLGregorianCalendar
creDt
=
DateUtil
.
parseXMLGregorianCalendar
(
bankToCustomerDebitCreditNotification
.
getCreateDate
());
businessAppHdrV02
.
setCreDt
(
creDt
);
if
(
MessagePriority
.
NORM
.
equals
(
bankToCustomerDebitCreditNotification
.
getMessagePriority
()))
{
businessAppHdrV02
.
setPrty
(
Priority2Code
.
NORM
.
value
());
}
else
if
(
MessagePriority
.
HIGH
.
equals
(
bankToCustomerDebitCreditNotification
.
getMessagePriority
()))
{
businessAppHdrV02
.
setPrty
(
Priority2Code
.
HIGH
.
value
());
}
businessAppHdrV02
.
setMsgDefIdr
(
"camt.054.001.02"
);
businessAppHdrV02
.
setBizMsgIdr
(
bankToCustomerDebitCreditNotification
.
getMessageId
());
mxCamt05400102
.
setAppHdr
(
businessAppHdrV02
);
//grpHdr
BankToCustomerDebitCreditNotificationV02
bkToCstmrDbtCdtNtfctn
=
new
BankToCustomerDebitCreditNotificationV02
();
mxCamt05400102
.
setBkToCstmrDbtCdtNtfctn
(
bkToCstmrDbtCdtNtfctn
);
GroupHeader42
grpHdr
=
new
GroupHeader42
();
grpHdr
.
setMsgId
(
bankToCustomerDebitCreditNotification
.
getMessageId
());
grpHdr
.
setCreDtTm
(
DateUtil
.
parseXMLGregorianCalendar
(
bankToCustomerDebitCreditNotification
.
getCreateDate
()));
grpHdr
.
setAddtlInf
(
""
);
bkToCstmrDbtCdtNtfctn
.
setGrpHdr
(
grpHdr
);
//ntfcn
AccountNotification2
ntfctn
=
new
AccountNotification2
();
bkToCstmrDbtCdtNtfctn
.
addNtfctn
(
ntfctn
);
String
endToEndId
=
bankToCustomerDebitCreditNotification
.
getEndToEndId
();
//21
String
account
=
bankToCustomerDebitCreditNotification
.
getAccount
().
getAccount
();
//25
Date
valueDate
=
bankToCustomerDebitCreditNotification
.
getValueDate
();
//25a
CcyFormatAmount
valueAmount
=
bankToCustomerDebitCreditNotification
.
getValueAmount
();
//25a
PartyDto
debitParty
=
bankToCustomerDebitCreditNotification
.
getDebitParty
();
//50
PartyDto
debitAgtParty
=
bankToCustomerDebitCreditNotification
.
getDebitAgtParty
();
//52
PartyDto
intrmyAgtParty
=
bankToCustomerDebitCreditNotification
.
getIntrmyAgtParty
();
//56
String
addtlTxInf
=
bankToCustomerDebitCreditNotification
.
getAddtlTxInf
();
//72
//EndToEndId
ReportEntry2
ntry
=
new
ReportEntry2
();
ntfctn
.
addNtry
(
ntry
);
EntryDetails1
ntryDtls
=
new
EntryDetails1
();
ntry
.
addNtryDtls
(
ntryDtls
);
EntryTransaction2
txDtls
=
new
EntryTransaction2
();
ntryDtls
.
addTxDtls
(
txDtls
);
if
(
endToEndId
!=
null
){
TransactionReferences2
refs
=
new
TransactionReferences2
();
refs
.
setEndToEndId
(
endToEndId
);
txDtls
.
setRefs
(
refs
);
}
//IBAN Othr/Id
if
(
account
!=
null
){
CashAccount20
acct
=
new
CashAccount20
();
ntfctn
.
setAcct
(
acct
);
AccountIdentification4Choice
id
=
new
AccountIdentification4Choice
();
id
.
setIBAN
(
account
);
acct
.
setId
(
id
);
}
//Dt Amt Ccy="XXX"
if
(
valueDate
!=
null
&&
valueAmount
!=
null
){
DateAndDateTimeChoice
valDt
=
new
DateAndDateTimeChoice
();
ntry
.
setValDt
(
valDt
);
XMLGregorianCalendar
dt
=
DateUtil
.
parseXMLGregorianCalendar
(
valueDate
);
valDt
.
setDt
(
dt
);
ActiveOrHistoricCurrencyAndAmount
amt
=
new
ActiveOrHistoricCurrencyAndAmount
();
amt
.
setCcy
(
valueAmount
.
getCcy
());
amt
.
setValue
(
valueAmount
.
getAmt
());
ntry
.
setAmt
(
amt
);
}
//<Ntfctn><Ntry><NtryDtls><TxDtls><RltdPties><Dbtr><Nm>
TransactionParty2
rltdPties
=
new
TransactionParty2
();
txDtls
.
setRltdPties
(
rltdPties
);
PartyIdentification32
dbtr
=
new
PartyIdentification32
();
PostalAddress6
pstlAdr
=
new
PostalAddress6
();
dbtr
.
setPstlAdr
(
pstlAdr
);
rltdPties
.
setDbtr
(
dbtr
);
if
(
debitParty
!=
null
){
dbtr
.
setNm
(
debitParty
.
getPartyName
());
List
<
String
>
adrLineList
=
debitParty
.
getAddressList
();
for
(
String
adrLine
:
adrLineList
)
{
pstlAdr
.
addAdrLine
(
adrLine
);
}
}
//<Ntfctn><Ntry><NtryDtls><TxDtls><RltdPties><Dbtr><Nm>
if
(
debitAgtParty
!=
null
){
dbtr
.
setNm
(
debitAgtParty
.
getPartyName
());
List
<
String
>
adrLineList
=
debitAgtParty
.
getAddressList
();
for
(
String
adrLine
:
adrLineList
)
{
pstlAdr
.
addAdrLine
(
adrLine
);
}
CashAccount16
dbtrAcct
=
new
CashAccount16
();
rltdPties
.
setDbtrAcct
(
dbtrAcct
);
AccountIdentification4Choice
id
=
new
AccountIdentification4Choice
();
id
.
setIBAN
(
debitAgtParty
.
getPartyAcct
().
getIbanAcct
());
dbtrAcct
.
setId
(
id
);
}
//<Ntfctn><Ntry><NtryDtls><TxDtls><RltdAgts><IntrmyAgt1><FinInstnId><BICFI>
if
(
intrmyAgtParty
!=
null
){
TransactionAgents2
rltdAgts
=
new
TransactionAgents2
();
txDtls
.
setRltdAgts
(
rltdAgts
);
BranchAndFinancialInstitutionIdentification4
intrmyAgt1
=
new
BranchAndFinancialInstitutionIdentification4
();
rltdAgts
.
setIntrmyAgt1
(
intrmyAgt1
);
FinancialInstitutionIdentification7
finInstnId7
=
new
FinancialInstitutionIdentification7
();
intrmyAgt1
.
setFinInstnId
(
finInstnId7
);
finInstnId7
.
setNm
(
intrmyAgtParty
.
getPartyName
());
PostalAddress6
pstlAdr7
=
new
PostalAddress6
();
List
<
String
>
adrLineList7
=
intrmyAgtParty
.
getAddressList
();
for
(
String
adrLine
:
adrLineList7
)
{
pstlAdr7
.
addAdrLine
(
adrLine
);
}
finInstnId7
.
setPstlAdr
(
pstlAdr7
);
}
if
(
addtlTxInf
!=
null
){
txDtls
.
setAddtlTxInf
(
addtlTxInf
);
}
String
xmlStr
=
mxCamt05400102
.
message
();
context
.
set
(
SwiftDto2MxContextIdentifier
.
MX_XML
,
xmlStr
);
String
outputFilePath
=
(
String
)
context
.
get
(
SwiftDto2MxContextIdentifier
.
MX_OUTPUT_FILE_PATH
,
true
);
if
(
StringUtil
.
isNotEmpty
(
outputFilePath
))
{
mxCamt05400102
.
write
(
new
File
(
outputFilePath
));
}
}
catch
(
Exception
e
)
{
throw
new
SwiftException
(
"ERROR"
,
e
.
getMessage
());
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment