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
fc92d441
Commit
fc92d441
authored
Apr 08, 2022
by
chengzhuoshen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.rewrite MT202,MT202Cov, MT900910 used new template
2.remove logger code
parent
75cc02d6
Hide whitespace changes
Inline
Side-by-side
Showing
34 changed files
with
1167 additions
and
931 deletions
+1167
-931
Mx2MtConstants.java
.../prowidesoftware/brilliance/constants/Mx2MtConstants.java
+32
-0
AbstractMx2MtCreator.java
...rowidesoftware/brilliance/mx2mt/AbstractMx2MtCreator.java
+139
-4
AbstractMx2MtFieldsGenerate.java
...oftware/brilliance/mx2mt/AbstractMx2MtFieldsGenerate.java
+30
-0
Mx2MtCreateManager.java
.../prowidesoftware/brilliance/mx2mt/Mx2MtCreateManager.java
+5
-0
Mx2MtCreator.java
...va/com/prowidesoftware/brilliance/mx2mt/Mx2MtCreator.java
+22
-0
Mx2Mt103Creator.java
...owidesoftware/brilliance/mx2mt/mt103/Mx2Mt103Creator.java
+5
-0
Mx2Mt202Creator.java
...oftware/brilliance/mx2mt/mt202cov202/Mx2Mt202Creator.java
+29
-29
CommonFieldFor202Generate.java
...nce/mx2mt/mt202cov202/impl/CommonFieldFor202Generate.java
+0
-40
Field13CGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field13CGenerate.java
+8
-11
Field20Generate.java
...re/brilliance/mx2mt/mt202cov202/impl/Field20Generate.java
+2
-4
Field21Generate.java
...re/brilliance/mx2mt/mt202cov202/impl/Field21Generate.java
+3
-5
Field32AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field32AGenerate.java
+14
-9
Field52AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field52AGenerate.java
+65
-44
Field53AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field53AGenerate.java
+75
-55
Field54AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field54AGenerate.java
+64
-36
Field56AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field56AGenerate.java
+65
-40
Field57AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field57AGenerate.java
+65
-39
Field58AGenerate.java
...e/brilliance/mx2mt/mt202cov202/impl/Field58AGenerate.java
+65
-39
Field72Generate.java
...re/brilliance/mx2mt/mt202cov202/impl/Field72Generate.java
+85
-61
ReceiverBicFieldGenerate.java
...ance/mx2mt/mt202cov202/impl/ReceiverBicFieldGenerate.java
+0
-56
SenderBicFieldGenerate.java
...liance/mx2mt/mt202cov202/impl/SenderBicFieldGenerate.java
+0
-52
Field50AGenerate.java
...illiance/mx2mt/mt202cov202/impl/cov/Field50AGenerate.java
+64
-45
FieldB33BGenerate.java
...lliance/mx2mt/mt202cov202/impl/cov/FieldB33BGenerate.java
+3
-3
FieldB52AGenerate.java
...lliance/mx2mt/mt202cov202/impl/cov/FieldB52AGenerate.java
+66
-44
FieldB56Generate.java
...illiance/mx2mt/mt202cov202/impl/cov/FieldB56Generate.java
+65
-70
FieldB57Generate.java
...illiance/mx2mt/mt202cov202/impl/cov/FieldB57Generate.java
+64
-70
FieldB59Generate.java
...illiance/mx2mt/mt202cov202/impl/cov/FieldB59Generate.java
+61
-49
FieldB70Generate.java
...illiance/mx2mt/mt202cov202/impl/cov/FieldB70Generate.java
+5
-5
FieldB72Generate.java
...illiance/mx2mt/mt202cov202/impl/cov/FieldB72Generate.java
+22
-0
Mx2Mt900910Creator.java
...oftware/brilliance/mx2mt/mt900910/Mx2Mt900910Creator.java
+33
-13
Field50aGenerate.java
...ware/brilliance/mx2mt/mt900910/impl/Field50aGenerate.java
+2
-2
ReceiverBicFieldGenerate.java
...lliance/mx2mt/mt900910/impl/ReceiverBicFieldGenerate.java
+0
-52
SenderBicFieldGenerate.java
...rilliance/mx2mt/mt900910/impl/SenderBicFieldGenerate.java
+0
-54
Mx2Mt950Creator.java
...desoftware/brilliance/mx2mt/mt940950/Mx2Mt950Creator.java
+9
-0
No files found.
src/main/java/com/prowidesoftware/brilliance/constants/Mx2MtConstants.java
View file @
fc92d441
...
@@ -37,6 +37,36 @@ public class Mx2MtConstants {
...
@@ -37,6 +37,36 @@ public class Mx2MtConstants {
public
static
final
String
MT_TYPE
=
"mtType"
;
public
static
final
String
MT_TYPE
=
"mtType"
;
public
static
final
String
MT_IO_TYPE
=
"mtIOType"
;
public
static
final
String
MT_IO_TYPE_INPUT
=
"I"
;
public
static
final
String
MT_IO_TYPE_OUTPUT
=
"O"
;
public
static
final
String
HEADER_APPLICATION_IDEN_F
=
"F"
;
public
static
final
String
HEADER_APPLICATION_IDEN_A
=
"A"
;
public
static
final
String
HEADER_APPLICATION_IDEN_L
=
"L"
;
/**
* GPA USER-TO-USER
*/
public
static
final
String
HEADER_SERVICE_TYPE_01
=
"01"
;
/**
* ACK/NAK,UAK/UNK
*/
public
static
final
String
HEADER_SERVICE_TYPE_21
=
"21"
;
/**
* SELECT
*/
public
static
final
String
HEADER_SERVICE_TYPE_03
=
"03"
;
public
static
final
String
HEADER_PRIORITY_NORMAL
=
"N"
;
public
static
final
String
HEADER_PRIORITY_HIGH
=
"U"
;
public
static
final
String
INS
=
"/INS/"
;
public
static
final
String
INS
=
"/INS/"
;
public
static
final
String
ACC
=
"/ACC/"
;
public
static
final
String
ACC
=
"/ACC/"
;
public
static
final
String
PHONBEN
=
"/PHONBEN/"
;
public
static
final
String
PHONBEN
=
"/PHONBEN/"
;
...
@@ -44,4 +74,6 @@ public class Mx2MtConstants {
...
@@ -44,4 +74,6 @@ public class Mx2MtConstants {
public
static
final
String
TELE
=
"/TELE/"
;
public
static
final
String
TELE
=
"/TELE/"
;
public
static
final
String
REC
=
"/REC/"
;
public
static
final
String
REC
=
"/REC/"
;
public
static
final
String
PHONIBK
=
"/PHONIBK/"
;
public
static
final
String
PHONIBK
=
"/PHONIBK/"
;
public
static
final
String
HEAD3_MT202_COVER
=
"{119:COV}"
;
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/AbstractMx2MtCreator.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.*
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader42
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader42
;
import
com.prowidesoftware.swift.model.mx.dic.Priority2Code
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Random
;
public
abstract
class
AbstractMx2MtCreator
implements
Mx2MtCreator
{
public
abstract
class
AbstractMx2MtCreator
implements
Mx2MtCreator
{
...
@@ -18,6 +22,7 @@ public abstract class AbstractMx2MtCreator implements Mx2MtCreator {
...
@@ -18,6 +22,7 @@ public abstract class AbstractMx2MtCreator implements Mx2MtCreator {
protected
AbstractMx2MtCreator
withObj
(
Object
obj
)
{
protected
AbstractMx2MtCreator
withObj
(
Object
obj
)
{
map
.
put
(
Mx2MtConstants
.
MX_OBJECT
,
obj
);
map
.
put
(
Mx2MtConstants
.
MX_OBJECT
,
obj
);
map
.
put
(
Mx2MtConstants
.
MT_IO_TYPE
,
Mx2MtConstants
.
MT_IO_TYPE_OUTPUT
);
return
this
;
return
this
;
}
}
...
@@ -39,6 +44,14 @@ public abstract class AbstractMx2MtCreator implements Mx2MtCreator {
...
@@ -39,6 +44,14 @@ public abstract class AbstractMx2MtCreator implements Mx2MtCreator {
return
this
;
return
this
;
}
}
public
Map
<
String
,
Object
>
getMap
()
{
return
map
;
}
public
void
setMap
(
Map
<
String
,
Object
>
map
)
{
this
.
map
=
map
;
}
protected
void
generateCommonField
(
GroupHeader42
grpHdr
)
{
protected
void
generateCommonField
(
GroupHeader42
grpHdr
)
{
if
(
grpHdr
!=
null
)
{
if
(
grpHdr
!=
null
)
{
String
createDateStr
=
DateUtil
.
format
(
grpHdr
.
getCreDtTm
(),
"YYMMdd"
);
String
createDateStr
=
DateUtil
.
format
(
grpHdr
.
getCreDtTm
(),
"YYMMdd"
);
...
@@ -52,11 +65,133 @@ public abstract class AbstractMx2MtCreator implements Mx2MtCreator {
...
@@ -52,11 +65,133 @@ public abstract class AbstractMx2MtCreator implements Mx2MtCreator {
}
}
}
}
public
Map
<
String
,
Object
>
getMap
()
{
//TODO
return
map
;
protected
String
getRandomNumber
(
int
length
)
{
String
randomNumber
=
""
;
Random
random
=
new
Random
();
for
(
int
i
=
0
;
i
<
length
;
i
++)
{
randomNumber
+=
random
.
nextInt
(
9
);
}
return
randomNumber
;
}
}
public
void
setMap
(
Map
<
String
,
Object
>
map
)
{
protected
String
getPriority
(
AppHdr
appHdr
)
{
this
.
map
=
map
;
String
priority
=
Mx2MtConstants
.
HEADER_PRIORITY_NORMAL
;
if
(
appHdr
!=
null
)
{
if
(
appHdr
instanceof
BusinessAppHdrV01
)
{
BusinessAppHdrV01
businessAppHdrV01
=
(
BusinessAppHdrV01
)
appHdr
;
if
(
StringUtil
.
isNotEmpty
(
businessAppHdrV01
.
getPrty
()))
{
if
(
Priority2Code
.
HIGH
.
equals
(
Priority2Code
.
fromValue
(
businessAppHdrV01
.
getPrty
())))
{
priority
=
Mx2MtConstants
.
HEADER_PRIORITY_HIGH
;
}
}
}
else
if
(
appHdr
instanceof
BusinessAppHdrV02
)
{
BusinessAppHdrV02
businessAppHdrV02
=
(
BusinessAppHdrV02
)
appHdr
;
if
(
StringUtil
.
isNotEmpty
(
businessAppHdrV02
.
getPrty
()))
{
if
(
Priority2Code
.
HIGH
.
equals
(
Priority2Code
.
fromValue
(
businessAppHdrV02
.
getPrty
())))
{
priority
=
Mx2MtConstants
.
HEADER_PRIORITY_HIGH
;
}
}
}
}
return
priority
;
}
protected
String
processBicCode
(
String
bicCode
)
{
String
processedBicCode
=
""
;
if
(!
StringUtil
.
isEmpty
(
bicCode
))
{
if
(
bicCode
.
length
()
==
8
)
{
processedBicCode
=
bicCode
+
Mx2MtConstants
.
BICSUFFIX
;
}
else
if
(
bicCode
.
length
()
==
11
)
{
processedBicCode
=
bicCode
.
substring
(
0
,
8
)
+
Mx2MtConstants
.
BICMIDDLE
+
bicCode
.
substring
(
8
);
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"BicCode length is invalid."
);
}
}
return
processedBicCode
;
}
protected
abstract
String
getMtType
();
/**
* process method
*/
@Override
public
void
generateHead1
()
{
String
headApplicationIden
=
Mx2MtConstants
.
HEADER_APPLICATION_IDEN_F
;
String
headServiceType
=
Mx2MtConstants
.
HEADER_SERVICE_TYPE_01
;
String
bicCode
=
""
;
String
sessionNumber
=
getRandomNumber
(
4
);
String
sequenceNumber
=
getRandomNumber
(
6
);
String
mtIOType
=
(
String
)
map
.
get
(
Mx2MtConstants
.
MT_IO_TYPE
);
AbstractMX
abstractMX
=
(
AbstractMX
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
AppHdr
appHdr
=
abstractMX
.
getAppHdr
();
if
(
appHdr
!=
null
)
{
if
(
Mx2MtConstants
.
MT_IO_TYPE_INPUT
.
equals
(
mtIOType
))
{
bicCode
=
processBicCode
(
appHdr
.
from
());
}
else
if
(
Mx2MtConstants
.
MT_IO_TYPE_OUTPUT
.
equals
(
mtIOType
))
{
bicCode
=
processBicCode
(
appHdr
.
to
());
}
}
String
head1
=
headApplicationIden
+
headServiceType
+
bicCode
+
sessionNumber
+
sequenceNumber
;
map
.
put
(
"head1"
,
head1
);
}
@Override
public
void
generateHead2
()
{
String
mtIOType
=
(
String
)
map
.
get
(
Mx2MtConstants
.
MT_IO_TYPE
);
String
mtType
=
getMtType
();
AbstractMX
abstractMX
=
(
AbstractMX
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
AppHdr
appHdr
=
abstractMX
.
getAppHdr
();
String
priority
=
getPriority
(
appHdr
);
String
head2
=
""
;
if
(
Mx2MtConstants
.
MT_IO_TYPE_INPUT
.
equals
(
mtIOType
))
{
String
bicCode
=
""
;
if
(
appHdr
!=
null
)
{
bicCode
=
processBicCode
(
appHdr
.
to
());
}
head2
=
mtIOType
+
mtType
+
bicCode
+
priority
;
}
else
if
(
Mx2MtConstants
.
MT_IO_TYPE_OUTPUT
.
equals
(
mtIOType
))
{
String
createDateStr
=
""
;
String
createTimeStr
=
""
;
String
outDateStr
=
DateUtil
.
formatNow
(
"YYMMdd"
);
String
outTimeStr
=
DateUtil
.
formatNow
(
"HHmm"
);
String
bicCode
=
""
;
String
sessionNumber
=
getRandomNumber
(
4
);
String
sequenceNumber
=
getRandomNumber
(
6
);
if
(
appHdr
!=
null
)
{
bicCode
=
processBicCode
(
appHdr
.
from
());
if
(
appHdr
.
creationDate
()
!=
null
)
{
createDateStr
=
DateUtil
.
format
(
appHdr
.
creationDate
(),
"YYMMdd"
);
createTimeStr
=
DateUtil
.
format
(
appHdr
.
creationDate
(),
"HHmm"
);
}
else
{
createDateStr
=
DateUtil
.
formatNow
(
"YYMMdd"
);
createTimeStr
=
DateUtil
.
formatNow
(
"HHmm"
);
}
}
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
mtIOType
)
.
append
(
mtType
)
.
append
(
createTimeStr
)
.
append
(
createDateStr
)
.
append
(
bicCode
)
.
append
(
sessionNumber
)
.
append
(
sequenceNumber
)
.
append
(
outTimeStr
)
.
append
(
outDateStr
)
.
append
(
priority
);
head2
=
sb
.
toString
();
}
map
.
put
(
"head2"
,
head2
);
}
@Override
public
void
generateHead3
()
{
//need childClasses implements
map
.
put
(
"head3"
,
""
);
}
@Override
public
void
generateHead5
()
{
map
.
put
(
"head5"
,
""
);
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/AbstractMx2MtFieldsGenerate.java
View file @
fc92d441
...
@@ -3,6 +3,8 @@ package com.prowidesoftware.brilliance.mx2mt;
...
@@ -3,6 +3,8 @@ package com.prowidesoftware.brilliance.mx2mt;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.dic.CashAccount16
;
import
com.prowidesoftware.swift.model.mx.dic.GenericAccountIdentification1
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -33,4 +35,32 @@ public abstract class AbstractMx2MtFieldsGenerate implements Mx2MtFieldsGenerate
...
@@ -33,4 +35,32 @@ public abstract class AbstractMx2MtFieldsGenerate implements Mx2MtFieldsGenerate
}
}
return
processedBicCode
;
return
processedBicCode
;
}
}
protected
String
getMtFormatAccount
(
CashAccount16
dbtrAcct
)
{
String
account
=
""
;
String
iban
=
""
;
String
otherId
=
""
;
if
(
dbtrAcct
!=
null
)
{
if
(
dbtrAcct
.
getId
()
!=
null
)
{
iban
=
dbtrAcct
.
getId
().
getIBAN
();
if
(
StringUtil
.
isEmpty
(
iban
))
{
GenericAccountIdentification1
othr
=
dbtrAcct
.
getId
().
getOthr
();
if
(
othr
!=
null
)
{
if
(
othr
.
getSchmeNm
()
!=
null
)
{
otherId
=
othr
.
getSchmeNm
().
getCd
();
}
if
(
StringUtil
.
isEmpty
(
otherId
))
{
otherId
=
othr
.
getId
();
}
}
}
}
}
if
(!
StringUtil
.
isEmpty
(
iban
))
{
account
=
"/"
+
iban
;
}
else
if
(!
StringUtil
.
isEmpty
(
otherId
))
{
account
=
"//CH"
+
otherId
;
}
return
account
;
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/Mx2MtCreateManager.java
View file @
fc92d441
...
@@ -13,6 +13,7 @@ import org.slf4j.LoggerFactory;
...
@@ -13,6 +13,7 @@ import org.slf4j.LoggerFactory;
import
java.io.File
;
import
java.io.File
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Random
;
public
class
Mx2MtCreateManager
{
public
class
Mx2MtCreateManager
{
...
@@ -85,12 +86,16 @@ public class Mx2MtCreateManager {
...
@@ -85,12 +86,16 @@ public class Mx2MtCreateManager {
public
String
convert
(
String
outPutFilePath
,
Map
<
String
,
Object
>
extraMap
)
throws
SwiftException
{
public
String
convert
(
String
outPutFilePath
,
Map
<
String
,
Object
>
extraMap
)
throws
SwiftException
{
AbstractMx2MtCreator
creator
=
getMx2MtCreator
(
msgType
);
AbstractMx2MtCreator
creator
=
getMx2MtCreator
(
msgType
);
creator
.
withObj
(
mxObj
).
withOutPutFilePath
(
outPutFilePath
).
withExtraMap
(
extraMap
);
creator
.
withObj
(
mxObj
).
withOutPutFilePath
(
outPutFilePath
).
withExtraMap
(
extraMap
);
creator
.
generateHead1
();
creator
.
generateHead2
();
creator
.
generateHead3
();
List
<
Mx2MtFieldsGenerate
>
generateList
=
creator
.
getFieldsGenerateList
();
List
<
Mx2MtFieldsGenerate
>
generateList
=
creator
.
getFieldsGenerateList
();
for
(
int
i
=
0
;
i
<
generateList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
generateList
.
size
();
i
++)
{
AbstractMx2MtFieldsGenerate
fieldsGenerate
=
(
AbstractMx2MtFieldsGenerate
)
generateList
.
get
(
i
);
AbstractMx2MtFieldsGenerate
fieldsGenerate
=
(
AbstractMx2MtFieldsGenerate
)
generateList
.
get
(
i
);
fieldsGenerate
.
withMap
(
creator
.
getMap
());
fieldsGenerate
.
withMap
(
creator
.
getMap
());
fieldsGenerate
.
fieldsGenerate
();
fieldsGenerate
.
fieldsGenerate
();
}
}
creator
.
generateHead5
();
return
creator
.
generateMtMsg
();
return
creator
.
generateMtMsg
();
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/Mx2MtCreator.java
View file @
fc92d441
...
@@ -3,8 +3,30 @@ package com.prowidesoftware.brilliance.mx2mt;
...
@@ -3,8 +3,30 @@ package com.prowidesoftware.brilliance.mx2mt;
import
java.util.List
;
import
java.util.List
;
public
interface
Mx2MtCreator
{
public
interface
Mx2MtCreator
{
/**
* generate {1:}
*/
public
void
generateHead1
();
/**
* generate {2:}
*/
public
void
generateHead2
();
/**
* Optional
* generate {3:}
*/
public
void
generateHead3
();
/**
* generate {4:}
*/
public
List
<
Mx2MtFieldsGenerate
>
getFieldsGenerateList
();
public
List
<
Mx2MtFieldsGenerate
>
getFieldsGenerateList
();
/**
* generate {5:}
*/
public
void
generateHead5
();
public
String
generateMtMsg
();
public
String
generateMtMsg
();
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt103/Mx2Mt103Creator.java
View file @
fc92d441
...
@@ -94,4 +94,9 @@ public class Mx2Mt103Creator extends AbstractMx2MtCreator {
...
@@ -94,4 +94,9 @@ public class Mx2Mt103Creator extends AbstractMx2MtCreator {
String
msg
=
TemplateUtil
.
makeFileByTemplate
(
"swift_mt_103.vm"
,
map
,
outPutFilePath
,
"utf-8"
);
String
msg
=
TemplateUtil
.
makeFileByTemplate
(
"swift_mt_103.vm"
,
map
,
outPutFilePath
,
"utf-8"
);
return
msg
;
return
msg
;
}
}
@Override
protected
String
getMtType
()
{
return
Mx2MtConstants
.
MT_TYPE_103
;
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/Mx2Mt202Creator.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtCreator
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtCreator
;
import
com.prowidesoftware.brilliance.mx2mt.Mx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.Mx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.mt202cov202.impl.*
;
import
com.prowidesoftware.brilliance.mx2mt.mt202cov202.impl.*
;
import
com.prowidesoftware.brilliance.mx2mt.mt202cov202.impl.cov.*
;
import
com.prowidesoftware.brilliance.mx2mt.mt202cov202.impl.cov.*
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.TemplateUtil
;
import
com.prowidesoftware.brilliance.util.TemplateUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
...
@@ -20,9 +23,6 @@ public class Mx2Mt202Creator extends AbstractMx2MtCreator {
...
@@ -20,9 +23,6 @@ public class Mx2Mt202Creator extends AbstractMx2MtCreator {
@Override
@Override
public
List
<
Mx2MtFieldsGenerate
>
getFieldsGenerateList
()
{
public
List
<
Mx2MtFieldsGenerate
>
getFieldsGenerateList
()
{
List
<
Mx2MtFieldsGenerate
>
fieldsGenerateList
=
new
ArrayList
<>();
List
<
Mx2MtFieldsGenerate
>
fieldsGenerateList
=
new
ArrayList
<>();
fieldsGenerateList
.
add
(
new
CommonFieldFor202Generate
());
fieldsGenerateList
.
add
(
new
ReceiverBicFieldGenerate
());
fieldsGenerateList
.
add
(
new
SenderBicFieldGenerate
());
fieldsGenerateList
.
add
(
new
Field20Generate
());
fieldsGenerateList
.
add
(
new
Field20Generate
());
fieldsGenerateList
.
add
(
new
Field21Generate
());
fieldsGenerateList
.
add
(
new
Field21Generate
());
fieldsGenerateList
.
add
(
new
Field13CGenerate
());
fieldsGenerateList
.
add
(
new
Field13CGenerate
());
...
@@ -40,22 +40,14 @@ public class Mx2Mt202Creator extends AbstractMx2MtCreator {
...
@@ -40,22 +40,14 @@ public class Mx2Mt202Creator extends AbstractMx2MtCreator {
fieldsGenerateList
.
add
(
new
FieldB57Generate
());
fieldsGenerateList
.
add
(
new
FieldB57Generate
());
fieldsGenerateList
.
add
(
new
FieldB59Generate
());
fieldsGenerateList
.
add
(
new
FieldB59Generate
());
fieldsGenerateList
.
add
(
new
FieldB70Generate
());
fieldsGenerateList
.
add
(
new
FieldB70Generate
());
fieldsGenerateList
.
add
(
new
FieldB72Generate
());
fieldsGenerateList
.
add
(
new
FieldB33BGenerate
());
fieldsGenerateList
.
add
(
new
FieldB33BGenerate
());
return
fieldsGenerateList
;
return
fieldsGenerateList
;
}
}
@Override
@Override
public
String
generateMtMsg
()
{
public
String
generateMtMsg
()
{
map
.
forEach
((
key
,
value
)->{
String
outPutFilePath
=
(
String
)
map
.
get
(
Mx2MtConstants
.
OUT_PUT_FILE_PATH
);
System
.
out
.
println
(
key
+
"-"
+
value
);
});
if
(
getMtCov
()){
map
.
put
(
"isCov"
,
"O202cov"
);
map
.
put
(
"cov"
,
"{119:COV}"
);
}
else
{
map
.
put
(
"isCov"
,
"O202"
);
}
String
outPutFilePath
=
(
String
)
map
.
get
(
"outFilePath"
);
String
msg
=
TemplateUtil
.
makeFileByTemplate
(
"swift_mt_202cov.vm"
,
map
,
outPutFilePath
,
"utf-8"
);
String
msg
=
TemplateUtil
.
makeFileByTemplate
(
"swift_mt_202cov.vm"
,
map
,
outPutFilePath
,
"utf-8"
);
return
msg
;
return
msg
;
}
}
...
@@ -68,36 +60,43 @@ public class Mx2Mt202Creator extends AbstractMx2MtCreator {
...
@@ -68,36 +60,43 @@ public class Mx2Mt202Creator extends AbstractMx2MtCreator {
public
boolean
getMtCov
(){
public
boolean
getMtCov
(){
Boolean
msg
=
false
;
Boolean
msg
=
false
;
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
msg
=
false
;
msg
=
false
;
}
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
String
bicOrBEI
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
().
getBICOrBEI
();
if
(
cdtTrfTxInf
.
size
()
>
0
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
().
getBICOrBEI
()
!=
null
){
msg
=
true
;
}
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
().
getBICOrBEI
()
!=
null
)
{
&&
StringUtil
.
isNotEmpty
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
().
getBICOrBEI
()))
{
msg
=
true
;
msg
=
true
;
}
}
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
if
(
cdtTrfTxInf
.
size
()
>
0
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getNm
()
!=
null
){
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
()
!=
null
&&
StringUtil
.
isNotEmpty
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getNm
())){
msg
=
true
;
msg
=
true
;
}
}
return
msg
;
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
msg
=
false
;
throw
new
SwiftException
(
"ERROR"
,
"Judge 202 or 202Cov error"
);
return
msg
;
}
}
return
msg
;
}
}
@Override
protected
String
getMtType
()
{
return
Mx2MtConstants
.
MT_TYPE_202
;
}
@Override
public
void
generateHead3
()
{
String
head3
=
""
;
if
(
getMtCov
())
{
head3
=
Mx2MtConstants
.
HEAD3_MT202_COVER
;
}
map
.
put
(
"head3"
,
head3
);
}
}
}
\ No newline at end of file
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/CommonFieldFor202Generate.java
deleted
100644 → 0
View file @
75cc02d6
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader35
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
public
class
CommonFieldFor202Generate
extends
AbstractMx2MtFieldsGenerate
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
CommonFieldFor202Generate
.
class
);
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"CommonFieldFor202Generate start."
);
try
{
MxPacs00900102
mxPacs00900102
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
if
(
mxPacs00900102
==
null
||
mxPacs00900102
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
mxPacs00900102
.
getFinInstnCdtTrf
();
GroupHeader35
grpHdr
=
finInstnCdtTrf
.
getGrpHdr
();
String
createDateStr
=
DateUtil
.
format
(
grpHdr
.
getCreDtTm
(),
"YYMMdd"
);
String
createTimeStr
=
DateUtil
.
format
(
grpHdr
.
getCreDtTm
(),
"HHmm"
);
map
.
put
(
"createDate"
,
createDateStr
);
map
.
put
(
"createTime"
,
createTimeStr
);
String
outDateStr
=
DateUtil
.
formatNow
(
"YYMMdd"
);
String
outTimeStr
=
DateUtil
.
formatNow
(
"HHmm"
);
map
.
put
(
"outDate"
,
outDateStr
);
map
.
put
(
"outTime"
,
outTimeStr
);
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 CommonField error"
);
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field13CGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
...
@@ -25,37 +26,33 @@ public class Field13CGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -25,37 +26,33 @@ public class Field13CGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field13CGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
return
;
}
}
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
();
List
<
String
>
fi
le
d13cList
=
new
ArrayList
<>();
List
<
String
>
fi
el
d13cList
=
new
ArrayList
<>();
if
(
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmIndctn
().
getDbtDtTm
()
!=
null
){
if
(
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmIndctn
().
getDbtDtTm
()
!=
null
){
XMLGregorianCalendar
dbtDtTm
=
cdtTrfTxInf
.
get
(
0
).
getSttlmTmIndctn
().
getDbtDtTm
();
XMLGregorianCalendar
dbtDtTm
=
cdtTrfTxInf
.
get
(
0
).
getSttlmTmIndctn
().
getDbtDtTm
();
String
hmm
=
DateUtil
.
format
(
dbtDtTm
,
"HHmm"
);
String
hmm
=
DateUtil
.
format
(
dbtDtTm
,
"HHmm"
);
fi
le
d13cList
.
add
(
"/SNDTIME/"
+
hmm
+
"+0800"
);
fi
el
d13cList
.
add
(
"/SNDTIME/"
+
hmm
+
"+0800"
);
}
}
if
(
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmIndctn
().
getCdtDtTm
()
!=
null
){
if
(
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmIndctn
().
getCdtDtTm
()
!=
null
){
XMLGregorianCalendar
dbtDtTm
=
cdtTrfTxInf
.
get
(
0
).
getSttlmTmIndctn
().
getCdtDtTm
();
XMLGregorianCalendar
dbtDtTm
=
cdtTrfTxInf
.
get
(
0
).
getSttlmTmIndctn
().
getCdtDtTm
();
String
hmm
=
DateUtil
.
format
(
dbtDtTm
,
"HHmm"
);
String
hmm
=
DateUtil
.
format
(
dbtDtTm
,
"HHmm"
);
fi
le
d13cList
.
add
(
"/RNCTIME/"
+
hmm
+
"+0800"
);
fi
el
d13cList
.
add
(
"/RNCTIME/"
+
hmm
+
"+0800"
);
}
}
if
(
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmReq
()
!=
null
if
(
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmReq
()
!=
null
&&
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmReq
().
getCLSTm
()
!=
null
){
&&
obj
.
getFinInstnCdtTrf
().
getCdtTrfTxInf
().
get
(
0
).
getSttlmTmReq
().
getCLSTm
()
!=
null
){
XMLGregorianCalendar
dbtDtTm
=
cdtTrfTxInf
.
get
(
0
).
getSttlmTmReq
().
getCLSTm
();
XMLGregorianCalendar
dbtDtTm
=
cdtTrfTxInf
.
get
(
0
).
getSttlmTmReq
().
getCLSTm
();
String
hmm
=
DateUtil
.
format
(
dbtDtTm
,
"HHmm"
);
String
hmm
=
DateUtil
.
format
(
dbtDtTm
,
"HHmm"
);
fi
le
d13cList
.
add
(
"/CLSTIME/"
+
hmm
+
"+0800"
);
fi
el
d13cList
.
add
(
"/CLSTIME/"
+
hmm
+
"+0800"
);
}
}
if
(
filed13cList
.
size
()
>
0
)
{
if
(
field13cList
.
size
()
>
0
)
{
filed13cList
.
forEach
(
field61
->
logger
.
info
(
":61:"
+
field61
));
map
.
put
(
"field13CList"
,
field13cList
);
map
.
put
(
"filed13CList"
,
filed13cList
);
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field13C error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field13C error"
);
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field20Generate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
...
@@ -16,10 +17,8 @@ public class Field20Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -16,10 +17,8 @@ public class Field20Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field20Generate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
return
;
}
}
...
@@ -27,7 +26,6 @@ public class Field20Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -27,7 +26,6 @@ public class Field20Generate extends AbstractMx2MtFieldsGenerate {
GroupHeader35
grpHdr
=
finInstnCdtTrf
.
getGrpHdr
();
GroupHeader35
grpHdr
=
finInstnCdtTrf
.
getGrpHdr
();
map
.
put
(
"field20"
,
grpHdr
.
getMsgId
());
map
.
put
(
"field20"
,
grpHdr
.
getMsgId
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field20 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field20 error"
);
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field21Generate.java
View file @
fc92d441
...
@@ -15,9 +15,8 @@ public class Field21Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -15,9 +15,8 @@ public class Field21Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field21Generate start."
);
try
{
try
{
String
field21
=
"NONREF"
;
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
return
;
...
@@ -27,12 +26,11 @@ public class Field21Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -27,12 +26,11 @@ public class Field21Generate extends AbstractMx2MtFieldsGenerate {
if
(
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
)
!=
null
if
(
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
)
!=
null
&&
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
).
getPmtId
()
!=
null
&&
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
).
getPmtId
()
!=
null
&&
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
).
getPmtId
().
getEndToEndId
()
!=
null
){
&&
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
).
getPmtId
().
getEndToEndId
()
!=
null
){
String
endToEndId
=
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
).
getPmtId
().
getEndToEndId
();
field21
=
finInstnCdtTrf
.
getCdtTrfTxInf
().
get
(
0
).
getPmtId
().
getEndToEndId
();
map
.
put
(
"field21"
,
endToEndId
);
}
}
}
}
map
.
put
(
"field21"
,
field21
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field21 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field21 error"
);
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field32AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.brilliance.util.NumberUtil
;
import
com.prowidesoftware.brilliance.util.NumberUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.ActiveCurrencyAndAmount
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
...
@@ -25,9 +27,8 @@ public class Field32AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -25,9 +27,8 @@ public class Field32AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field32AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
return
;
}
}
...
@@ -38,19 +39,23 @@ public class Field32AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -38,19 +39,23 @@ public class Field32AGenerate extends AbstractMx2MtFieldsGenerate {
&&
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
().
getCcy
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
().
getCcy
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
().
getValue
()
!=
null
){
&&
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
().
getValue
()
!=
null
){
String
yy
m
Mdd
=
""
;
String
yy
M
Mdd
=
""
;
if
(
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmDt
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmDt
()
!=
null
){
XMLGregorianCalendar
dt
=
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmDt
();
XMLGregorianCalendar
dt
=
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmDt
();
yy
mMdd
=
DateUtil
.
format
(
dt
,
"YY
MMdd"
);
yy
MMdd
=
DateUtil
.
format
(
dt
,
"yy
MMdd"
);
}
}
String
ccy
=
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
().
getCcy
();
ActiveCurrencyAndAmount
intrBkSttlmAmt
=
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
();
BigDecimal
amt
=
cdtTrfTxInf
.
get
(
0
).
getIntrBkSttlmAmt
().
getValue
();
String
ccy
=
""
;
String
amtStr
=
NumberUtil
.
formatAmt
(
amt
,
ccy
);
String
amtStr
=
""
;
map
.
put
(
"field32A"
,
yymMdd
+
ccy
+
amtStr
);
if
(
intrBkSttlmAmt
!=
null
)
{
ccy
=
intrBkSttlmAmt
.
getCcy
();
BigDecimal
amt
=
intrBkSttlmAmt
.
getValue
();
amtStr
=
NumberUtil
.
formatAmt
(
amt
,
ccy
);
}
map
.
put
(
"field32A"
,
yyMMdd
+
ccy
+
amtStr
);
}
}
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field32A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field32A error"
);
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field52AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -26,56 +27,76 @@ public class Field52AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -26,56 +27,76 @@ public class Field52AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field52AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation13
cdtTrfTxInf
=
getCreditTransferTransactionInformation13
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field52Option
=
""
;
return
;
String
field52A
=
""
;
}
if
(
cdtTrfTxInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
dbtr
=
cdtTrfTxInf
.
getDbtr
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
dbtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
){
FinancialInstitutionIdentification7
finInstnId
=
dbtr
.
getFinInstnId
();
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
()
!=
null
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
()
!=
null
field52Option
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
().
getBIC
()
!=
null
){
String
bicCode
=
finInstnId
.
getBIC
();
map
.
put
(
"field52Key"
,
"A"
);
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getDbtrAcct
());
map
.
put
(
"field52A"
,
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
().
getBIC
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
}
else
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
field52A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
()
!=
null
field52A
=
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
().
getNm
()
!=
null
){
}
map
.
put
(
"field52Key"
,
"D"
);
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
().
getPstlAdr
()
!=
null
field52Option
=
"D"
;
&&
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
String
nameAddr
=
""
;
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getDbtr
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
String
adStr
=
""
;
if
(
pstlAdr
!=
null
)
{
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
adStr
=
adStr
+
adrList
.
get
(
i
);
if
(
adrLineList
.
size
()
>
0
)
{
}
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
map
.
put
(
"field52DAdr"
,
adStr
);
if
(
i
==
4
)
{
}
break
;
}
}
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
String
adrLine
=
adrLineList
.
get
(
i
);
&&
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
()
!=
null
if
(
adrLine
.
length
()
>
35
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
()
!=
null
){
adrLine
=
adrLine
.
substring
(
0
,
35
);
if
(
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getIBAN
()
!=
null
){
}
map
.
put
(
"field52Account"
,
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getIBAN
());
if
(
i
==
0
)
{
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
()
!=
null
nameAddr
+=
adrLine
;
&&
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
if
(
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
}
map
.
put
(
"field52Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
().
getId
());
}
}
}
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getDbtrAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field52A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field52A
=
nameAddr
;
}
}
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field52Account"
,
cdtTrfTxInf
.
get
(
0
).
getDbtrAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
map
.
put
(
"field52Option"
,
field52Option
);
map
.
put
(
"field52A"
,
field52A
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field52A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field52A error"
);
}
}
}
}
public
CreditTransferTransactionInformation13
getCreditTransferTransactionInformation13
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
);
}
else
{
return
null
;
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field53AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader35
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -35,72 +36,91 @@ public class Field53AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -35,72 +36,91 @@ public class Field53AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field53AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
SettlementInformation13
sttlmInf
=
getSttlmInf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field53Option
=
""
;
return
;
String
field53A
=
""
;
}
if
(
sttlmInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
instgRmbrsmntAgt
=
sttlmInf
.
getInstgRmbrsmntAgt
();
GroupHeader35
grpHdr
=
finInstnCdtTrf
.
getGrpHdr
();
if
(
instgRmbrsmntAgt
!=
null
)
{
if
(
grpHdr
!=
null
&&
grpHdr
.
getSttlmInf
()
!=
null
){
FinancialInstitutionIdentification7
finInstnId
=
instgRmbrsmntAgt
.
getFinInstnId
();
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
()
!=
null
if
(
finInstnId
!=
null
)
{
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
()
!=
null
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
field53Option
=
"A"
;
map
.
put
(
"field53AKey"
,
"A"
);
String
bicCode
=
finInstnId
.
getBIC
();
map
.
put
(
"field53A"
,
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
().
getFinInstnId
().
getBIC
());
String
account
=
getMtFormatAccount
(
sttlmInf
.
getInstgRmbrsmntAgtAcct
());
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
()
!=
null
if
(!
StringUtil
.
isEmpty
(
account
))
{
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
()
!=
null
){
field53A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getIBAN
()
!=
null
){
}
else
{
map
.
put
(
"field53Account"
,
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getIBAN
());
field53A
=
bicCode
;
}
else
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getOthr
()
!=
null
}
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field53Account"
,
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
else
if
(
grpHdr
.
getSttlmInf
().
getSttlmAcct
()
!=
null
}
&&
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
()
!=
null
){
if
(
StringUtil
.
isEmpty
(
field53Option
))
{
if
(
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getIBAN
()
!=
null
String
account
=
getMtFormatAccount
(
sttlmInf
.
getSttlmAcct
());
||
(
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getOthr
()
!=
null
if
(!
StringUtil
.
isEmpty
(
account
))
{
&&
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getOthr
().
getId
()
!=
null
)){
field53Option
=
"B"
;
map
.
put
(
"field53BKey"
,
"B"
);
field53A
=
account
;
}
if
(
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"field53Account"
,
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getIBAN
());
}
else
if
(
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getOthr
()
!=
null
&&
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field53Account"
,
grpHdr
.
getSttlmInf
().
getSttlmAcct
().
getId
().
getOthr
().
getId
());
}
}
else
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
()
!=
null
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
().
getFinInstnId
()
!=
null
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
().
getFinInstnId
().
getNm
()
!=
null
){
map
.
put
(
"field53DKey"
,
"D"
);
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
().
getFinInstnId
().
getPstlAdr
()
!=
null
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
List
<
String
>
adrList
=
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
String
adStr
=
""
;
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
adStr
=
adStr
+
adrList
.
get
(
i
);
}
map
.
put
(
"field53Adr"
,
adStr
);
}
}
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
()
!=
null
}
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
()
!=
null
){
if
(
StringUtil
.
isEmpty
(
field53Option
))
{
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getIBAN
()
!=
null
){
if
(
instgRmbrsmntAgt
!=
null
)
{
map
.
put
(
"field53Account"
,
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getIBAN
());
FinancialInstitutionIdentification7
finInstnId
=
instgRmbrsmntAgt
.
getFinInstnId
();
}
else
if
(
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getOthr
()
!=
null
if
(
finInstnId
!=
null
)
{
&&
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
map
.
put
(
"field53Account"
,
grpHdr
.
getSttlmInf
().
getInstgRmbrsmntAgtAcct
().
getId
().
getOthr
().
getId
());
field53Option
=
"D"
;
String
nameAddr
=
""
;
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
if
(
pstlAdr
!=
null
)
{
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
if
(
adrLineList
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
if
(
i
==
4
)
{
break
;
}
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
String
account
=
getMtFormatAccount
(
sttlmInf
.
getInstgRmbrsmntAgtAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field53A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field53A
=
nameAddr
;
}
}
}
}
}
}
}
}
}
}
map
.
put
(
"field53Option"
,
field53Option
);
map
.
put
(
"field53A"
,
field53A
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field53A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field53A error"
);
}
}
}
public
SettlementInformation13
getSttlmInf
()
{
SettlementInformation13
sttlmInf
=
null
;
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
if
(
finInstnCdtTrf
.
getGrpHdr
()
!=
null
)
{
sttlmInf
=
finInstnCdtTrf
.
getGrpHdr
().
getSttlmInf
();
}
return
sttlmInf
;
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field54AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader35
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -30,48 +31,75 @@ public class Field54AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -30,48 +31,75 @@ public class Field54AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field54AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
SettlementInformation13
sttlmInf
=
getSttlmInf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field54Option
=
""
;
return
;
String
field54A
=
""
;
}
if
(
sttlmInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
instdRmbrsmntAgt
=
sttlmInf
.
getInstdRmbrsmntAgt
();
GroupHeader35
grpHdr
=
finInstnCdtTrf
.
getGrpHdr
();
if
(
instdRmbrsmntAgt
!=
null
)
{
if
(
grpHdr
!=
null
&&
grpHdr
.
getSttlmInf
()
!=
null
){
FinancialInstitutionIdentification7
finInstnId
=
instdRmbrsmntAgt
.
getFinInstnId
();
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
()
!=
null
if
(
finInstnId
!=
null
)
{
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
()
!=
null
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
field54Option
=
"A"
;
map
.
put
(
"field54AKey"
,
"A"
);
String
bicCode
=
finInstnId
.
getBIC
();
map
.
put
(
"field54A"
,
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getBIC
());
String
account
=
getMtFormatAccount
(
sttlmInf
.
getInstdRmbrsmntAgtAcct
());
}
else
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
()
!=
null
if
(!
StringUtil
.
isEmpty
(
account
))
{
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
()
!=
null
field54A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getNm
()
!=
null
){
}
else
{
map
.
put
(
"field54DKey"
,
"D"
);
field54A
=
bicCode
;
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getPstlAdr
()
!=
null
}
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
List
<
String
>
adrList
=
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
field54Option
=
"D"
;
String
adStr
=
""
;
String
nameAddr
=
""
;
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
adStr
=
adStr
+
adrList
.
get
(
i
);
if
(
pstlAdr
!=
null
)
{
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
if
(
adrLineList
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
if
(
i
==
4
)
{
break
;
}
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
String
account
=
getMtFormatAccount
(
sttlmInf
.
getInstdRmbrsmntAgtAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field54A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field54A
=
nameAddr
;
}
}
}
map
.
put
(
"field54Adr"
,
adStr
);
}
}
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
()
!=
null
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
().
getId
()
!=
null
){
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"field54Account"
,
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
().
getId
().
getIBAN
());
}
else
if
(
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
().
getId
().
getOthr
()
!=
null
&&
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field54Account"
,
grpHdr
.
getSttlmInf
().
getInstdRmbrsmntAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
map
.
put
(
"field54Option"
,
field54Option
);
map
.
put
(
"field54A"
,
field54A
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field54A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field54A error"
);
}
}
}
}
public
SettlementInformation13
getSttlmInf
()
{
SettlementInformation13
sttlmInf
=
null
;
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
if
(
finInstnCdtTrf
.
getGrpHdr
()
!=
null
)
{
sttlmInf
=
finInstnCdtTrf
.
getGrpHdr
().
getSttlmInf
();
}
return
sttlmInf
;
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field56AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -29,51 +30,75 @@ public class Field56AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -29,51 +30,75 @@ public class Field56AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field56AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation13
cdtTrfTxInf
=
getCreditTransferTransactionInformation13
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field56Option
=
""
;
return
;
String
field56A
=
""
;
}
if
(
cdtTrfTxInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
dbtr
=
cdtTrfTxInf
.
getIntrmyAgt1
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
dbtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
){
FinancialInstitutionIdentification7
finInstnId
=
dbtr
.
getFinInstnId
();
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
()
!=
null
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
()
!=
null
field56Option
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
().
getBIC
()
!=
null
){
String
bicCode
=
finInstnId
.
getBIC
();
map
.
put
(
"field56AKey"
,
"A"
);
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getIntrmyAgt1Acct
());
map
.
put
(
"field56A"
,
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
().
getBIC
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
}
field56A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
}
else
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
()
!=
null
field56A
=
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
()
!=
null
}
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
().
getNm
()
!=
null
){
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
map
.
put
(
"field56DKey"
,
"D"
);
field56Option
=
"D"
;
if
(
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
().
getPstlAdr
()
!=
null
String
nameAddr
=
""
;
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
if
(
pstlAdr
!=
null
)
{
String
adStr
=
""
;
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
if
(
adrLineList
.
size
()
>
0
)
{
adStr
=
adStr
+
adrList
.
get
(
i
);
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
if
(
i
==
4
)
{
break
;
}
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getIntrmyAgt1Acct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field56A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field56A
=
nameAddr
;
}
}
}
}
map
.
put
(
"field56Adr"
,
adStr
);
}
}
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
().
getId
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"field56Account"
,
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
().
getId
().
getIBAN
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
().
getId
().
getOthr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field56Account"
,
cdtTrfTxInf
.
get
(
0
).
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
());
}
}
}
}
map
.
put
(
"field56Option"
,
field56Option
);
map
.
put
(
"field56A"
,
field56A
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field56A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field56A error"
);
}
}
}
public
CreditTransferTransactionInformation13
getCreditTransferTransactionInformation13
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
);
}
else
{
return
null
;
}
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field57AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -29,51 +30,76 @@ public class Field57AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -29,51 +30,76 @@ public class Field57AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field57AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation13
cdtTrfTxInf
=
getCreditTransferTransactionInformation13
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field57Option
=
""
;
return
;
String
field57A
=
""
;
}
if
(
cdtTrfTxInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
dbtr
=
cdtTrfTxInf
.
getCdtrAgt
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
dbtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
){
FinancialInstitutionIdentification7
finInstnId
=
dbtr
.
getFinInstnId
();
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
()
!=
null
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
()
!=
null
field57Option
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
String
bicCode
=
finInstnId
.
getBIC
();
map
.
put
(
"field57AKey"
,
"A"
);
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getCdtrAgtAcct
());
map
.
put
(
"field57A"
,
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
().
getBIC
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
}
else
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
field57A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
()
!=
null
field57A
=
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
().
getNm
()
!=
null
){
}
map
.
put
(
"field57DKey"
,
"D"
);
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
().
getPstlAdr
()
!=
null
field57Option
=
"D"
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
String
nameAddr
=
""
;
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getCdtrAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
String
adStr
=
""
;
if
(
pstlAdr
!=
null
)
{
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
adStr
=
adStr
+
adrList
.
get
(
i
);
if
(
adrLineList
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
if
(
i
==
4
)
{
break
;
}
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getCdtrAgtAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field57A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field57A
=
nameAddr
;
}
}
}
map
.
put
(
"field57Adr"
,
adStr
);
}
}
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
().
getId
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"field57Account"
,
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
().
getId
().
getIBAN
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
().
getId
().
getOthr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field57Account"
,
cdtTrfTxInf
.
get
(
0
).
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
map
.
put
(
"field57Option"
,
field57Option
);
map
.
put
(
"field57A"
,
field57A
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field57A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field57A error"
);
}
}
}
}
public
CreditTransferTransactionInformation13
getCreditTransferTransactionInformation13
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
);
}
else
{
return
null
;
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field58AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -29,52 +30,77 @@ public class Field58AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -29,52 +30,77 @@ public class Field58AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field58AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation13
cdtTrfTxInf
=
getCreditTransferTransactionInformation13
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field58Option
=
""
;
return
;
String
field58A
=
""
;
}
if
(
cdtTrfTxInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
dbtr
=
cdtTrfTxInf
.
getCdtr
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
dbtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
){
FinancialInstitutionIdentification7
finInstnId
=
dbtr
.
getFinInstnId
();
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
()
!=
null
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
()
!=
null
field58Option
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getBIC
()
!=
null
){
String
bicCode
=
finInstnId
.
getBIC
();
map
.
put
(
"field58AKey"
,
"A"
);
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getCdtrAcct
());
map
.
put
(
"field58A"
,
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getBIC
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
}
else
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
field58A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
()
!=
null
field58A
=
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getNm
()
!=
null
){
}
map
.
put
(
"field58DKey"
,
"D"
);
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getPstlAdr
()
!=
null
field58Option
=
"D"
;
&&
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
String
nameAddr
=
""
;
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
String
adStr
=
""
;
if
(
pstlAdr
!=
null
)
{
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
adStr
=
adStr
+
adrList
.
get
(
i
);
if
(
adrLineList
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
if
(
i
==
4
)
{
break
;
}
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
String
account
=
getMtFormatAccount
(
cdtTrfTxInf
.
getCdtrAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field58A
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field58A
=
nameAddr
;
}
}
}
map
.
put
(
"field58Adr"
,
adStr
);
}
}
if
(
cdtTrfTxInf
.
get
(
0
)
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
().
getId
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"field58Account"
,
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
().
getId
().
getIBAN
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
().
getId
().
getOthr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"field58Account"
,
cdtTrfTxInf
.
get
(
0
).
getCdtrAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
map
.
put
(
"field58Option"
,
field58Option
);
map
.
put
(
"field58A"
,
field58A
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field58A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 Field58A error"
);
}
}
}
}
public
CreditTransferTransactionInformation13
getCreditTransferTransactionInformation13
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
);
}
else
{
return
null
;
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/Field72Generate.java
View file @
fc92d441
...
@@ -5,13 +5,11 @@ import com.prowidesoftware.brilliance.exception.SwiftException;
...
@@ -5,13 +5,11 @@ import com.prowidesoftware.brilliance.exception.SwiftException;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
com.prowidesoftware.swift.model.mx.dic.InstructionForCreditorAgent2
;
import
com.prowidesoftware.swift.model.mx.dic.InstructionForNextAgent1
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -38,75 +36,101 @@ public class Field72Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -38,75 +36,101 @@ public class Field72Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"Field72Generate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation13
cdtTrfTxInf
=
getCreditTransferTransactionInformation13
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
StringBuilder
sb
=
new
StringBuilder
();
return
;
String
field72
=
""
;
}
if
(
cdtTrfTxInf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
prvsInstgAgt
=
cdtTrfTxInf
.
getPrvsInstgAgt
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
prvsInstgAgt
!=
null
&&
prvsInstgAgt
.
getFinInstnId
()
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
){
String
bicCode
=
prvsInstgAgt
.
getFinInstnId
().
getBIC
();
String
bic
=
""
;
if
(
StringUtil
.
isEmpty
(
bicCode
))
{
String
nm
=
""
;
bicCode
=
prvsInstgAgt
.
getFinInstnId
().
getNm
();
String
acc
=
""
;
}
String
phob
=
""
;
if
(
StringUtil
.
isNotEmpty
(
bicCode
))
{
String
telb
=
""
;
bicCode
=
Mx2MtConstants
.
INS
+
bicCode
;
String
phoa
=
""
;
if
(
bicCode
.
length
()
>
35
)
{
String
tela
=
""
;
bicCode
=
bicCode
.
substring
(
0
,
35
);
String
rec
=
""
;
}
if
(
cdtTrfTxInf
.
get
(
0
).
getPrvsInstgAgt
()
!=
null
if
(
sb
.
length
()
==
0
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getPrvsInstgAgt
().
getFinInstnId
()
!=
null
){
sb
.
append
(
bicCode
);
if
(
cdtTrfTxInf
.
get
(
0
).
getPrvsInstgAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
}
else
{
bic
=
cdtTrfTxInf
.
get
(
0
).
getPrvsInstgAgt
().
getFinInstnId
().
getBIC
();
sb
.
append
(
Mx2MtConstants
.
NEW_LINE
).
append
(
bicCode
);
}
}
}
if
(
cdtTrfTxInf
.
get
(
0
).
getPrvsInstgAgt
().
getFinInstnId
().
getNm
()
!=
null
){
}
nm
=
Mx2MtConstants
.
INS
+
cdtTrfTxInf
.
get
(
0
).
getCdtr
().
getFinInstnId
().
getBIC
();
List
<
InstructionForCreditorAgent2
>
instrForCdtrAgtList
=
cdtTrfTxInf
.
getInstrForCdtrAgt
();
if
(
instrForCdtrAgtList
.
size
()
>
0
)
{
String
cdtrAgtCode
=
""
;
InstructionForCreditorAgent2
instrForCdtrAgt
=
instrForCdtrAgtList
.
get
(
0
);
if
(
instrForCdtrAgt
.
getCd
()
==
null
&&
StringUtil
.
isNotEmpty
(
instrForCdtrAgt
.
getInstrInf
()))
{
cdtrAgtCode
=
Mx2MtConstants
.
ACC
+
instrForCdtrAgt
.
getInstrInf
();
}
else
if
(
Instruction5Code
.
PHOB
.
equals
(
instrForCdtrAgt
.
getCd
())
&&
StringUtil
.
isNotEmpty
(
instrForCdtrAgt
.
getInstrInf
()))
{
cdtrAgtCode
=
Mx2MtConstants
.
PHONBEN
+
instrForCdtrAgt
.
getInstrInf
();
}
else
if
(
Instruction5Code
.
TELB
.
equals
(
instrForCdtrAgt
.
getCd
())
&&
StringUtil
.
isNotEmpty
(
instrForCdtrAgt
.
getInstrInf
()))
{
cdtrAgtCode
=
Mx2MtConstants
.
PHONBEN
+
instrForCdtrAgt
.
getInstrInf
();
}
}
if
(
cdtTrfTxInf
.
get
(
0
).
getInstrForCdtrAgt
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getInstrForCdtrAgt
().
size
()
>
0
){
if
(
StringUtil
.
isNotEmpty
(
cdtrAgtCode
))
{
List
<
InstructionForCreditorAgent2
>
ifcList
=
cdtTrfTxInf
.
get
(
0
).
getInstrForCdtrAgt
();
if
(
cdtrAgtCode
.
length
()
>
35
)
{
for
(
int
i
=
0
;
i
<
ifcList
.
size
();
i
++){
cdtrAgtCode
=
cdtrAgtCode
.
substring
(
0
,
35
);
InstructionForCreditorAgent2
ifca2
=
ifcList
.
get
(
i
);
}
if
(
ifca2
.
getCd
()
==
null
&&
ifca2
.
getInstrInf
()
!=
null
){
if
(
sb
.
length
()
==
0
)
{
acc
=
acc
+
Mx2MtConstants
.
ACC
+
ifca2
.
getInstrInf
();
sb
.
append
(
cdtrAgtCode
);
}
}
else
{
if
(
ifca2
.
getCd
()
!=
null
&&
"PHOB"
.
equals
(
ifca2
.
getCd
())){
sb
.
append
(
Mx2MtConstants
.
NEW_LINE
).
append
(
cdtrAgtCode
);
phob
=
phob
+
Mx2MtConstants
.
PHONBEN
+
ifca2
.
getInstrInf
();
}
if
(
ifca2
.
getCd
()
!=
null
&&
"TELB"
.
equals
(
ifca2
.
getCd
())){
telb
=
telb
+
Mx2MtConstants
.
PHONBEN
+
ifca2
.
getInstrInf
();
}
}
}
}
}
if
(
cdtTrfTxInf
.
get
(
0
).
getInstrForNxtAgt
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getInstrForNxtAgt
().
size
()
>
0
){
}
List
<
InstructionForNextAgent1
>
ifn
=
cdtTrfTxInf
.
get
(
0
).
getInstrForNxtAgt
();
List
<
InstructionForNextAgent1
>
instrForNxtAgtList
=
cdtTrfTxInf
.
getInstrForNxtAgt
();
for
(
int
i
=
0
;
i
<
ifn
.
size
();
i
++){
if
(
instrForNxtAgtList
.
size
()
>
0
)
{
InstructionForNextAgent1
ifna
=
ifn
.
get
(
i
);
String
nextAgentCode
=
""
;
if
(
ifna
.
getCd
()
!=
null
&&
"PHOA"
.
equals
(
ifna
.
getCd
())){
InstructionForNextAgent1
instrForNxtAgt
=
instrForNxtAgtList
.
get
(
0
);
if
(
map
.
get
(
"field56A"
)
==
null
){
if
(
instrForNxtAgt
.
getCd
()
==
null
&&
StringUtil
.
isNotEmpty
(
instrForNxtAgt
.
getInstrInf
()))
{
phoa
=
phoa
+
Mx2MtConstants
.
PHON
+
ifna
.
getInstrInf
();
nextAgentCode
=
Mx2MtConstants
.
REC
+
instrForNxtAgt
.
getInstrInf
();
}
else
{
}
else
if
(
Instruction4Code
.
TELA
.
equals
(
instrForNxtAgt
.
getCd
())
&&
StringUtil
.
isNotEmpty
(
instrForNxtAgt
.
getInstrInf
()))
{
phoa
=
phoa
+
Mx2MtConstants
.
PHONIBK
+
ifna
.
getInstrInf
();
nextAgentCode
=
Mx2MtConstants
.
TELE
+
instrForNxtAgt
.
getInstrInf
();
}
}
else
if
(
Instruction4Code
.
PHOA
.
equals
(
instrForNxtAgt
.
getCd
())
&&
StringUtil
.
isNotEmpty
(
instrForNxtAgt
.
getInstrInf
()))
{
}
String
field56Option
=
(
String
)
map
.
get
(
"field56Option"
);
if
(
ifna
.
getCd
()
!=
null
&&
"TELA"
.
equals
(
ifna
.
getCd
())){
if
(
StringUtil
.
isEmpty
(
field56Option
))
{
tela
=
tela
+
Mx2MtConstants
.
TELE
+
ifna
.
getInstrInf
();
nextAgentCode
=
Mx2MtConstants
.
PHON
+
instrForNxtAgt
.
getInstrInf
();
}
}
else
{
if
(
ifna
.
getCd
()
==
null
&&
ifna
.
getInstrInf
()
!=
null
){
nextAgentCode
=
Mx2MtConstants
.
PHONIBK
+
instrForNxtAgt
.
getInstrInf
();
rec
=
rec
+
Mx2MtConstants
.
REC
+
ifna
.
getInstrInf
();
}
}
}
if
(
StringUtil
.
isNotEmpty
(
nextAgentCode
))
{
if
(
nextAgentCode
.
length
()
>
35
)
{
nextAgentCode
=
nextAgentCode
.
substring
(
0
,
35
);
}
if
(
sb
.
length
()
==
0
)
{
sb
.
append
(
nextAgentCode
);
}
else
{
sb
.
append
(
Mx2MtConstants
.
NEW_LINE
).
append
(
nextAgentCode
);
}
}
}
}
}
}
String
str72
=
bic
+
nm
+
acc
+
phob
+
telb
+
phoa
+
tela
+
rec
;
//35个字符截取
String
enter
=
StringUtil
.
getStringByEnter
(
str72
,
35
,
6
);
map
.
put
(
"filed72"
,
enter
);
}
}
if
(
sb
.
length
()
>
0
)
{
field72
=
sb
.
toString
();
}
map
.
put
(
"field72"
,
field72
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202
Field58A
error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202
filed72
error"
);
}
}
}
}
public
CreditTransferTransactionInformation13
getCreditTransferTransactionInformation13
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
);
}
else
{
return
null
;
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/ReceiverBicFieldGenerate.java
deleted
100644 → 0
View file @
75cc02d6
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader35
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
/**
* <GrpHdr><InstgAgt><FinInstnId><BICFI>
*/
public
class
ReceiverBicFieldGenerate
extends
AbstractMx2MtFieldsGenerate
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
ReceiverBicFieldGenerate
.
class
);
/**
* <GrpHdr><InstgAgt><FinInstnId><BICFI>
*/
@Override
public
void
fieldsGenerate
()
{
logger
.
info
(
"ReceiverBicFieldGenerate start."
);
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
}
GroupHeader35
grpHdr
=
obj
.
getFinInstnCdtTrf
().
getGrpHdr
();
if
(
grpHdr
!=
null
)
{
if
(
grpHdr
.
getInstgAgt
()
!=
null
&&
grpHdr
.
getInstgAgt
().
getFinInstnId
()
!=
null
&&
grpHdr
.
getInstgAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
String
receiverBic
=
grpHdr
.
getInstgAgt
().
getFinInstnId
().
getBIC
();
logger
.
info
(
"Receiver Bic : "
+
receiverBic
);
if
(!
StringUtil
.
isEmpty
(
receiverBic
))
{
String
mtReceiverBic
=
""
;
if
(
receiverBic
.
length
()
==
8
)
{
mtReceiverBic
=
receiverBic
+
Mx2MtConstants
.
BICSUFFIX
;
}
else
if
(
receiverBic
.
length
()
==
11
)
{
mtReceiverBic
=
receiverBic
.
substring
(
0
,
8
)
+
Mx2MtConstants
.
BICMIDDLE
+
receiverBic
.
substring
(
8
);
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"ReceiverBic length is invalid."
);
}
map
.
put
(
"receiverBic"
,
mtReceiverBic
);
}
}
}
}
catch
(
Exception
e
){
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 ReceiverBic error."
);
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/SenderBicFieldGenerate.java
deleted
100644 → 0
View file @
75cc02d6
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.GroupHeader35
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
public
class
SenderBicFieldGenerate
extends
AbstractMx2MtFieldsGenerate
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
ReceiverBicFieldGenerate
.
class
);
/**
* <GrpHdr><InstdAgt><FinInstnId><BICFI>
*/
@Override
public
void
fieldsGenerate
()
{
logger
.
info
(
"ReceiverBicFieldGenerate start."
);
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
}
GroupHeader35
grpHdr
=
obj
.
getFinInstnCdtTrf
().
getGrpHdr
();
if
(
grpHdr
!=
null
)
{
if
(
grpHdr
.
getInstgAgt
()
!=
null
&&
grpHdr
.
getInstdAgt
().
getFinInstnId
()
!=
null
&&
grpHdr
.
getInstdAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
String
receiverBic
=
grpHdr
.
getInstdAgt
().
getFinInstnId
().
getBIC
();
logger
.
info
(
"Sender Bic : "
+
receiverBic
);
if
(!
StringUtil
.
isEmpty
(
receiverBic
))
{
String
mtsenderBic
=
""
;
if
(
receiverBic
.
length
()
==
8
)
{
mtsenderBic
=
receiverBic
+
Mx2MtConstants
.
BICSUFFIX
;
}
else
if
(
receiverBic
.
length
()
==
11
)
{
mtsenderBic
=
receiverBic
.
substring
(
0
,
8
)
+
Mx2MtConstants
.
BICMIDDLE
+
receiverBic
.
substring
(
8
);
}
else
{
throw
new
SwiftException
(
"ERROR"
,
"senderBic length is invalid."
);
}
map
.
put
(
"senderBic"
,
mtsenderBic
);
}
}
}
}
catch
(
Exception
e
){
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202 SenderBic error."
);
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/Field50AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -32,58 +33,76 @@ public class Field50AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -32,58 +33,76 @@ public class Field50AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
// TODO 50F取值待补充
// TODO 50F取值待补充
logger
.
info
(
"Field50AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation12
undrlygCstmrCdtTrf
=
getUndrlygCstmrCdtTrf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field50BOption
=
""
;
return
;
String
field50B
=
""
;
}
if
(
undrlygCstmrCdtTrf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
PartyIdentification32
dbtr
=
undrlygCstmrCdtTrf
.
getDbtr
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
dbtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
Party6Choice
id
=
dbtr
.
getId
();
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
dbtr
.
getId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
){
&&
dbtr
.
getId
().
getOrgId
()
!=
null
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
()
!=
null
&&
StringUtil
.
isNotEmpty
(
dbtr
.
getId
().
getOrgId
().
getBICOrBEI
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
()
!=
null
String
bicCode
=
dbtr
.
getId
().
getOrgId
().
getBICOrBEI
();
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
()
!=
null
field50BOption
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
().
getBICOrBEI
()
!=
null
){
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getDbtrAcct
());
map
.
put
(
"fieldB50Option"
,
"A"
);
if
(!
StringUtil
.
isEmpty
(
account
))
{
map
.
put
(
"fieldB50A"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getId
().
getOrgId
().
getBICOrBEI
());
field50B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getNm
()
!=
null
){
field50B
=
bicCode
;
map
.
put
(
"fieldB50Option"
,
"K"
);
}
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getPstlAdr
()
!=
null
}
else
if
(
StringUtil
.
isNotEmpty
(
dbtr
.
getNm
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getPstlAdr
().
getAdrLine
()
!=
null
){
field50BOption
=
"K"
;
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtr
().
getPstlAdr
().
getAdrLine
();
String
nameAddr
=
""
;
String
adStr
=
""
;
PostalAddress6
pstlAdr
=
dbtr
.
getPstlAdr
();
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
if
(
pstlAdr
!=
null
)
{
adStr
=
adStr
+
adrList
.
get
(
i
);
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
}
if
(
adrLineList
.
size
()
>
0
)
{
map
.
put
(
"fieldB50K"
,
adStr
);
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
}
if
(
i
==
4
)
{
}
break
;
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
()
!=
null
}
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
()
!=
null
){
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getIBAN
()
!=
null
){
if
(
adrLine
.
length
()
>
35
)
{
map
.
put
(
"fieldB50Account"
,
"/"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getIBAN
());
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
else
{
}
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
()
!=
null
if
(
i
==
0
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
nameAddr
+=
adrLine
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
}
else
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
map
.
put
(
"fieldB50Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getDbtrAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field50B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field50B
=
nameAddr
;
}
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"fieldB50Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
}
map
.
put
(
"field50BOption"
,
field50BOption
);
map
.
put
(
"field50B"
,
field50B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field50A error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field50A error"
);
}
}
}
public
CreditTransferTransactionInformation12
getUndrlygCstmrCdtTrf
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
();
}
else
{
return
null
;
}
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB33BGenerate.java
View file @
fc92d441
...
@@ -22,12 +22,12 @@ public class FieldB33BGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -22,12 +22,12 @@ public class FieldB33BGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"FieldB33BGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
return
;
}
}
String
filed33B
=
""
;
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
...
@@ -38,11 +38,11 @@ public class FieldB33BGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -38,11 +38,11 @@ public class FieldB33BGenerate extends AbstractMx2MtFieldsGenerate {
String
ccy
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getInstdAmt
().
getCcy
();
String
ccy
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getInstdAmt
().
getCcy
();
BigDecimal
amt
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getInstdAmt
().
getValue
();
BigDecimal
amt
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getInstdAmt
().
getValue
();
String
amtStr
=
NumberUtil
.
formatAmt
(
amt
,
ccy
);
String
amtStr
=
NumberUtil
.
formatAmt
(
amt
,
ccy
);
map
.
put
(
"field33B"
,
ccy
+
amtStr
)
;
filed33B
=
ccy
+
amtStr
;
}
}
}
}
map
.
put
(
"field33B"
,
filed33B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field33B error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field33B error"
);
}
}
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB52AGenerate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -29,55 +30,76 @@ public class FieldB52AGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -29,55 +30,76 @@ public class FieldB52AGenerate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"FieldB52AGenerate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation12
undrlygCstmrCdtTrf
=
getUndrlygCstmrCdtTrf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field52BOption
=
""
;
return
;
String
field52B
=
""
;
}
if
(
undrlygCstmrCdtTrf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
dbtr
=
undrlygCstmrCdtTrf
.
getDbtrAgt
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
dbtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
FinancialInstitutionIdentification7
finInstnId
=
dbtr
.
getFinInstnId
();
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
){
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
()
!=
null
field52BOption
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
()
!=
null
String
bicCode
=
finInstnId
.
getBIC
();
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
().
getBIC
()
!=
null
){
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getDbtrAgtAcct
());
map
.
put
(
"fieldB52Option"
,
"A"
);
if
(!
StringUtil
.
isEmpty
(
account
))
{
map
.
put
(
"fieldB52A"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
().
getBIC
());
field52B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
()
!=
null
field52B
=
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
().
getNm
()
!=
null
){
}
map
.
put
(
"fieldB52Option"
,
"D"
);
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
().
getPstlAdr
()
!=
null
field52BOption
=
"D"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
)
{
String
nameAddr
=
""
;
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
String
adStr
=
""
;
if
(
pstlAdr
!=
null
)
{
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++)
{
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
adStr
=
adStr
+
adrList
.
get
(
i
);
if
(
adrLineList
.
size
()
>
0
)
{
}
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
map
.
put
(
"fieldB52D"
,
adStr
);
if
(
i
==
4
)
{
}
break
;
}
}
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
()
!=
null
String
adrLine
=
adrLineList
.
get
(
i
);
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
()
!=
null
){
if
(
adrLine
.
length
()
>
35
)
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getIBAN
()
!=
null
){
adrLine
=
adrLine
.
substring
(
0
,
35
);
map
.
put
(
"fieldB52Account"
,
"/"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getIBAN
());
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
()
!=
null
if
(
i
==
0
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
nameAddr
+=
adrLine
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
}
else
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
map
.
put
(
"fieldB52Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getDbtrAgtAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field52B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
}
else
{
field52B
=
nameAddr
;
}
}
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"fieldB52Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getDbtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
map
.
put
(
"field52BOption"
,
field52BOption
);
map
.
put
(
"field52B"
,
field52B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field52 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field52A error"
);
}
}
}
}
public
CreditTransferTransactionInformation12
getUndrlygCstmrCdtTrf
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
();
}
else
{
return
null
;
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB56Generate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -36,87 +37,81 @@ public class FieldB56Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -36,87 +37,81 @@ public class FieldB56Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"FieldB56Generate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation12
undrlygCstmrCdtTrf
=
getUndrlygCstmrCdtTrf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field56BOption
=
""
;
return
;
String
field56B
=
""
;
}
if
(
undrlygCstmrCdtTrf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
intrmyAgt1
=
undrlygCstmrCdtTrf
.
getIntrmyAgt1
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
intrmyAgt1
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
FinancialInstitutionIdentification7
finInstnId
=
intrmyAgt1
.
getFinInstnId
();
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
){
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
()
!=
null
field56BOption
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
()
!=
null
){
String
bicCode
=
finInstnId
.
getBIC
();
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getBIC
()
!=
null
){
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getIntrmyAgt1Acct
());
map
.
put
(
"fieldB56Option"
,
"A"
);
if
(!
StringUtil
.
isEmpty
(
account
))
{
map
.
put
(
"fieldB56A"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getBIC
());
field56B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
()
!=
null
){
field56B
=
bicCode
;
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getIBAN
()
!=
null
){
}
map
.
put
(
"fieldB56Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getIBAN
());
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
()
!=
null
field56BOption
=
"D"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
String
nameAddr
=
""
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
if
(
pstlAdr
!=
null
)
{
map
.
put
(
"fieldB56Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
());
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
if
(
adrLineList
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
if
(
i
==
4
)
{
break
;
}
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"fieldB56Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getBIC
()
==
null
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getIntrmyAgt1Acct
());
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getNm
()
==
null
if
(!
StringUtil
.
isEmpty
(
account
))
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
()
!=
null
field56B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getIBAN
()
!=
null
}
else
{
||
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
()
!=
null
field56B
=
nameAddr
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
)){
map
.
put
(
"fieldB56Option"
,
"C"
);
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"fieldB56Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getClrSysMmbId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getClrSysMmbId
().
getMmbId
()
!=
null
){
map
.
put
(
"fieldB56Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getClrSysMmbId
().
getMmbId
());
}
}
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getNm
()
!=
null
){
}
else
{
map
.
put
(
"fieldB56Option"
,
"D"
);
if
(
finInstnId
.
getClrSysMmbId
()
!=
null
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getPstlAdr
()
!=
null
&&
StringUtil
.
isNotEmpty
(
finInstnId
.
getClrSysMmbId
().
getMmbId
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
field56BOption
=
"C"
;
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
field56B
=
"/"
+
finInstnId
.
getClrSysMmbId
().
getMmbId
();
String
adStr
=
""
;
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
adStr
=
adStr
+
adrList
.
get
(
i
);
}
}
map
.
put
(
"fieldB56D"
,
adStr
);
}
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"fieldB56Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getIBAN
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
map
.
put
(
"fieldB56Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
());
}
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
()
!=
null
){
map
.
put
(
"fieldB56Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getIntrmyAgt1Acct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
}
}
}
map
.
put
(
"field56BOption"
,
field56BOption
);
map
.
put
(
"field56B"
,
field56B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field56 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field56 error"
);
}
}
}
public
CreditTransferTransactionInformation12
getUndrlygCstmrCdtTrf
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
();
}
else
{
return
null
;
}
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB57Generate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -34,89 +35,82 @@ public class FieldB57Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -34,89 +35,82 @@ public class FieldB57Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"FieldB57Generate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation12
undrlygCstmrCdtTrf
=
getUndrlygCstmrCdtTrf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field57BOption
=
""
;
return
;
String
field57B
=
""
;
}
if
(
undrlygCstmrCdtTrf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
BranchAndFinancialInstitutionIdentification4
cdtrAgt
=
undrlygCstmrCdtTrf
.
getCdtrAgt
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtrAgt
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
FinancialInstitutionIdentification7
finInstnId
=
cdtrAgt
.
getFinInstnId
();
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
if
(
finInstnId
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
){
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getBIC
()))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
()
!=
null
field57BOption
=
"A"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
()
!=
null
){
String
bicCode
=
finInstnId
.
getBIC
();
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getBIC
()
!=
null
)
{
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getCdtrAgtAcct
());
map
.
put
(
"fieldB57Option"
,
"A"
);
if
(!
StringUtil
.
isEmpty
(
account
))
{
map
.
put
(
"fieldB57"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getBIC
());
field57B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
()
!=
null
){
field57B
=
bicCode
;
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"fieldB57Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getIBAN
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
map
.
put
(
"fieldB57Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
else
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
map
.
put
(
"fieldB57Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
else
if
(
StringUtil
.
isNotEmpty
(
finInstnId
.
getNm
()))
{
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
()
!=
null
field57BOption
=
"D"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getNm
()
==
null
String
nameAddr
=
""
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
()
!=
null
PostalAddress6
pstlAdr
=
finInstnId
.
getPstlAdr
();
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
()
!=
null
if
(
pstlAdr
!=
null
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getIBAN
()
!=
null
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
||
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
()
!=
null
if
(
adrLineList
.
size
()
>
0
)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
)){
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
map
.
put
(
"fieldB57Option"
,
"C"
);
if
(
i
==
4
)
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
break
;
map
.
put
(
"fieldB57Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getClrSysMmbId
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getClrSysMmbId
().
getMmbId
()
!=
null
){
map
.
put
(
"fieldB57Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getClrSysMmbId
().
getMmbId
());
}
}
else
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getNm
()
!=
null
){
map
.
put
(
"fieldB57Option"
,
"D"
);
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getPstlAdr
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
()
!=
null
){
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getPstlAdr
().
getAdrLine
();
String
adStr
=
""
;
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
adStr
=
adStr
+
adrList
.
get
(
i
);
}
map
.
put
(
"fieldB57D"
,
adStr
);
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getIBAN
()
!=
null
){
map
.
put
(
"fieldB57Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getIBAN
());
}
else
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
map
.
put
(
"fieldB57Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
());
}
}
}
else
{
String
adrLine
=
adrLineList
.
get
(
i
);
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
()
!=
null
)
{
if
(
adrLine
.
length
()
>
35
)
{
map
.
put
(
"fieldB57Account"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgtAcct
().
getId
().
getOthr
().
getId
());
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
}
}
}
}
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getCdtrAgtAcct
());
if
(!
StringUtil
.
isEmpty
(
account
))
{
field57B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;
}
else
{
field57B
=
nameAddr
;
}
}
else
{
if
(
finInstnId
.
getClrSysMmbId
()
!=
null
&&
StringUtil
.
isNotEmpty
(
finInstnId
.
getClrSysMmbId
().
getMmbId
()))
{
field57BOption
=
"C"
;
field57B
=
"/"
+
finInstnId
.
getClrSysMmbId
().
getMmbId
();
}
}
}
}
}
}
}
}
}
map
.
put
(
"field57BOption"
,
field57BOption
);
map
.
put
(
"field57B"
,
field57B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field57 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field57 error"
);
}
}
}
public
CreditTransferTransactionInformation12
getUndrlygCstmrCdtTrf
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
();
}
else
{
return
null
;
}
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB59Generate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -30,64 +31,75 @@ public class FieldB59Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -30,64 +31,75 @@ public class FieldB59Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"FieldB59Generate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
CreditTransferTransactionInformation12
undrlygCstmrCdtTrf
=
getUndrlygCstmrCdtTrf
();
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
String
field59BOption
=
""
;
return
;
String
field59B
=
""
;
}
if
(
undrlygCstmrCdtTrf
!=
null
)
{
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
PartyIdentification32
cdtr
=
undrlygCstmrCdtTrf
.
getCdtr
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtr
!=
null
)
{
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
if
(
StringUtil
.
isNotEmpty
(
cdtr
.
getNm
()))
{
&&
cdtTrfTxInf
.
get
(
0
)
!=
null
field59BOption
=
"NOLETTER"
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
()
!=
null
){
String
nameAddr
=
""
;
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
()
!=
null
PostalAddress6
pstlAdr
=
cdtr
.
getPstlAdr
();
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getNm
()
!=
null
){
if
(
pstlAdr
!=
null
)
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAgt
().
getFinInstnId
().
getBIC
()
!=
null
)
{
List
<
String
>
adrLineList
=
pstlAdr
.
getAdrLine
();
map
.
put
(
"fieldB59Option"
,
""
);
if
(
adrLineList
.
size
()
>
0
)
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getPstlAdr
()
!=
null
for
(
int
i
=
0
;
i
<
adrLineList
.
size
();
i
++)
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getPstlAdr
().
getAdrLine
()
!=
null
){
if
(
i
==
4
)
{
List
<
String
>
adrList
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getPstlAdr
().
getAdrLine
();
break
;
String
adStr
=
""
;
}
for
(
int
i
=
0
;
i
<
adrList
.
size
();
i
++){
String
adrLine
=
adrLineList
.
get
(
i
);
adStr
=
adStr
+
adrList
.
get
(
i
);
if
(
adrLine
.
length
()
>
35
)
{
adrLine
=
adrLine
.
substring
(
0
,
35
);
}
if
(
i
==
0
)
{
nameAddr
+=
adrLine
;
}
else
{
nameAddr
+=
Mx2MtConstants
.
NEW_LINE
+
adrLine
;
}
}
}
}
map
.
put
(
"fieldB59"
,
adStr
);
}
}
}
else
{
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getCdtrAcct
());
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
()
!=
null
if
(!
StringUtil
.
isEmpty
(
account
))
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getId
()
!=
null
field59B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
nameAddr
;;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getId
().
getOrgId
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getId
().
getOrgId
().
getBICOrBEI
()
!=
null
){
field59B
=
nameAddr
;
map
.
put
(
"fieldB59Option"
,
"A"
);
map
.
put
(
"fieldB59A"
,
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtr
().
getId
().
getOrgId
().
getBICOrBEI
());
}
}
}
}
else
if
(
cdtr
.
getId
()
!=
null
}
&&
cdtr
.
getId
().
getOrgId
()
!=
null
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
()
!=
null
&&
StringUtil
.
isNotEmpty
(
cdtr
.
getId
().
getOrgId
().
getBICOrBEI
()))
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
()
!=
null
){
String
bicCode
=
cdtr
.
getId
().
getOrgId
().
getBICOrBEI
();
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getIBAN
()
!=
null
){
field59BOption
=
"A"
;
map
.
put
(
"fieldB59Account"
,
"/"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getIBAN
());
String
account
=
getMtFormatAccount
(
undrlygCstmrCdtTrf
.
getCdtrAcct
());
}
else
{
if
(!
StringUtil
.
isEmpty
(
account
))
{
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
()
!=
null
field59B
=
account
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
()
!=
null
}
else
{
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getOthr
()
!=
null
field59B
=
bicCode
;
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getOthr
().
getId
()
!=
null
){
if
(
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getOthr
().
getSchmeNm
()
!=
null
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getOthr
().
getSchmeNm
().
getCd
()
!=
null
){
map
.
put
(
"fieldB57Account"
,
"//CH"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getOthr
().
getId
());
}
else
{
map
.
put
(
"fieldB57Account"
,
"/"
+
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getCdtrAcct
().
getId
().
getOthr
().
getId
());
}
}
}
}
}
}
}
}
}
map
.
put
(
"field59BOption"
,
field59BOption
);
map
.
put
(
"field59B"
,
field59B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field59 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field57 error"
);
}
}
}
public
CreditTransferTransactionInformation12
getUndrlygCstmrCdtTrf
()
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
null
;
}
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
.
size
()
>
0
)
{
return
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
();
}
else
{
return
null
;
}
}
}
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB70Generate.java
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
...
@@ -21,12 +22,12 @@ public class FieldB70Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -21,12 +22,12 @@ public class FieldB70Generate extends AbstractMx2MtFieldsGenerate {
@Override
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"FieldB70Generate start."
);
try
{
try
{
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
"mxObj"
);
MxPacs00900102
obj
=
(
MxPacs00900102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
if
(
obj
==
null
||
obj
.
getFinInstnCdtTrf
()
==
null
)
{
return
;
return
;
}
}
String
field70B
=
""
;
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
FinancialInstitutionCreditTransferV02
finInstnCdtTrf
=
obj
.
getFinInstnCdtTrf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
List
<
CreditTransferTransactionInformation13
>
cdtTrfTxInf
=
finInstnCdtTrf
.
getCdtTrfTxInf
();
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
if
(
cdtTrfTxInf
!=
null
&&
cdtTrfTxInf
.
size
()
>
0
...
@@ -37,12 +38,11 @@ public class FieldB70Generate extends AbstractMx2MtFieldsGenerate {
...
@@ -37,12 +38,11 @@ public class FieldB70Generate extends AbstractMx2MtFieldsGenerate {
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getRmtInf
().
getUstrd
().
size
()
>
0
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getRmtInf
().
getUstrd
().
size
()
>
0
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getRmtInf
().
getUstrd
().
get
(
0
)
!=
null
){
&&
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getRmtInf
().
getUstrd
().
get
(
0
)
!=
null
){
String
s
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getRmtInf
().
getUstrd
().
get
(
0
);
String
s
=
cdtTrfTxInf
.
get
(
0
).
getUndrlygCstmrCdtTrf
().
getRmtInf
().
getUstrd
().
get
(
0
);
String
enter
=
StringUtil
.
getStringByEnter
(
s
,
35
,
4
);
field70B
=
StringUtil
.
getStringByEnter
(
s
,
35
,
4
);
map
.
put
(
"field70"
,
enter
);
}
}
}
}
map
.
put
(
"field70B"
,
field70B
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field70 error"
);
throw
new
SwiftException
(
"ERROR"
,
"Convert MT202COV Field70 error"
);
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt202cov202/impl/cov/FieldB72Generate.java
0 → 100644
View file @
fc92d441
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt202cov202
.
impl
.
cov
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxPacs00900102
;
import
com.prowidesoftware.swift.model.mx.dic.CreditTransferTransactionInformation13
;
import
com.prowidesoftware.swift.model.mx.dic.FinancialInstitutionCreditTransferV02
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.util.List
;
public
class
FieldB72Generate
extends
AbstractMx2MtFieldsGenerate
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
FieldB72Generate
.
class
);
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
map
.
put
(
"filed72B"
,
""
);
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt900910/Mx2Mt900910Creator.java
View file @
fc92d441
...
@@ -5,9 +5,12 @@ import com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtCreator;
...
@@ -5,9 +5,12 @@ import com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtCreator;
import
com.prowidesoftware.brilliance.mx2mt.Mx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.Mx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.mx2mt.mt900910.impl.*
;
import
com.prowidesoftware.brilliance.mx2mt.mt900910.impl.*
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.util.DateUtil
;
import
com.prowidesoftware.brilliance.util.NumberUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.brilliance.util.TemplateUtil
;
import
com.prowidesoftware.brilliance.util.TemplateUtil
;
import
com.prowidesoftware.swift.model.mx.MxCamt05400102
;
import
com.prowidesoftware.swift.model.mx.MxCamt05400102
;
import
com.prowidesoftware.swift.model.mx.dic.*
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -21,8 +24,6 @@ public class Mx2Mt900910Creator extends AbstractMx2MtCreator {
...
@@ -21,8 +24,6 @@ public class Mx2Mt900910Creator extends AbstractMx2MtCreator {
@Override
@Override
public
List
<
Mx2MtFieldsGenerate
>
getFieldsGenerateList
()
{
public
List
<
Mx2MtFieldsGenerate
>
getFieldsGenerateList
()
{
List
<
Mx2MtFieldsGenerate
>
fieldsGenerateList
=
new
ArrayList
<>();
List
<
Mx2MtFieldsGenerate
>
fieldsGenerateList
=
new
ArrayList
<>();
fieldsGenerateList
.
add
(
new
ReceiverBicFieldGenerate
());
fieldsGenerateList
.
add
(
new
SenderBicFieldGenerate
());
fieldsGenerateList
.
add
(
new
Field13DGenerate
());
fieldsGenerateList
.
add
(
new
Field13DGenerate
());
fieldsGenerateList
.
add
(
new
Field20Generate
());
fieldsGenerateList
.
add
(
new
Field20Generate
());
fieldsGenerateList
.
add
(
new
Field21Generate
());
fieldsGenerateList
.
add
(
new
Field21Generate
());
...
@@ -37,18 +38,7 @@ public class Mx2Mt900910Creator extends AbstractMx2MtCreator {
...
@@ -37,18 +38,7 @@ public class Mx2Mt900910Creator extends AbstractMx2MtCreator {
@Override
@Override
public
String
generateMtMsg
()
{
public
String
generateMtMsg
()
{
MxCamt05400102
mxCamt05400102
=
(
MxCamt05400102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
mxCamt05400102
!=
null
&&
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
()
!=
null
&&
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
().
getGrpHdr
()
!=
null
)
{
generateCommonField
(
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
().
getGrpHdr
());
}
validate
();
validate
();
map
.
forEach
((
key
,
value
)->{
if
(!
Mx2MtConstants
.
MX_OBJECT
.
equals
(
key
))
{
logger
.
info
(
key
+
"-"
+
value
);
}
});
String
outPutFilePath
=
(
String
)
map
.
get
(
Mx2MtConstants
.
OUT_PUT_FILE_PATH
);
String
outPutFilePath
=
(
String
)
map
.
get
(
Mx2MtConstants
.
OUT_PUT_FILE_PATH
);
return
TemplateUtil
.
makeFileByTemplate
(
"swift_mt_900_910.vm"
,
map
,
outPutFilePath
,
"utf-8"
);
return
TemplateUtil
.
makeFileByTemplate
(
"swift_mt_900_910.vm"
,
map
,
outPutFilePath
,
"utf-8"
);
}
}
...
@@ -63,4 +53,34 @@ public class Mx2Mt900910Creator extends AbstractMx2MtCreator {
...
@@ -63,4 +53,34 @@ public class Mx2Mt900910Creator extends AbstractMx2MtCreator {
}
}
}
}
}
}
@Override
protected
String
getMtType
()
{
try
{
String
mtType
=
""
;
MxCamt05400102
mxCamt05400102
=
(
MxCamt05400102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
mxCamt05400102
==
null
||
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
()
==
null
)
{
return
mtType
;
}
BankToCustomerDebitCreditNotificationV02
bkToCstmrDbtCdtNtfctn
=
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
();
List
<
AccountNotification2
>
ntfctnList
=
bkToCstmrDbtCdtNtfctn
.
getNtfctn
();
if
(
ntfctnList
!=
null
&&
ntfctnList
.
size
()
>
0
)
{
AccountNotification2
ntfctn
=
ntfctnList
.
get
(
0
);
List
<
ReportEntry2
>
ntryList
=
ntfctn
.
getNtry
();
if
(
ntryList
!=
null
&&
ntryList
.
size
()
>
0
)
{
ReportEntry2
ntry
=
ntryList
.
get
(
0
);
//judge 900 or 910
if
(
CreditDebitCode
.
DBIT
.
equals
(
ntry
.
getCdtDbtInd
()))
{
mtType
=
Mx2MtConstants
.
MT_TYPE_900
;
}
else
if
(
CreditDebitCode
.
CRDT
.
equals
(
ntry
.
getCdtDbtInd
()))
{
mtType
=
Mx2MtConstants
.
MT_TYPE_910
;
}
}
}
return
mtType
;
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"getMtType error."
);
}
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt900910/impl/Field50aGenerate.java
View file @
fc92d441
...
@@ -60,9 +60,9 @@ public class Field50aGenerate extends AbstractMx2MtFieldsGenerate {
...
@@ -60,9 +60,9 @@ public class Field50aGenerate extends AbstractMx2MtFieldsGenerate {
}
}
}
}
if
(!
StringUtil
.
isEmpty
(
iban
))
{
if
(!
StringUtil
.
isEmpty
(
iban
))
{
field50a
=
"/"
+
iban
+
"\r\n"
+
bicCode
;
field50a
=
"/"
+
iban
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
}
else
if
(!
StringUtil
.
isEmpty
(
otherId
))
{
}
else
if
(!
StringUtil
.
isEmpty
(
otherId
))
{
field50a
=
"//CH"
+
otherId
+
"\r\n"
+
bicCode
;
field50a
=
"//CH"
+
otherId
+
Mx2MtConstants
.
NEW_LINE
+
bicCode
;
}
else
{
}
else
{
field50a
=
bicCode
;
field50a
=
bicCode
;
}
}
...
...
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt900910/impl/ReceiverBicFieldGenerate.java
deleted
100644 → 0
View file @
75cc02d6
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt900910
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxCamt05400102
;
import
com.prowidesoftware.swift.model.mx.dic.AccountNotification2
;
import
com.prowidesoftware.swift.model.mx.dic.BankToCustomerDebitCreditNotificationV02
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.util.List
;
public
class
ReceiverBicFieldGenerate
extends
AbstractMx2MtFieldsGenerate
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
ReceiverBicFieldGenerate
.
class
);
/**
* <Stmt><Acct><Svcr><FinInstnId><BICFI>
* @throws SwiftException
*/
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"ReceiverBicFieldGenerate start."
);
try
{
MxCamt05400102
mxCamt05400102
=
(
MxCamt05400102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
mxCamt05400102
==
null
||
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
()
==
null
)
{
return
;
}
BankToCustomerDebitCreditNotificationV02
bkToCstmrDbtCdtNtfctn
=
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
();
List
<
AccountNotification2
>
ntfctnList
=
bkToCstmrDbtCdtNtfctn
.
getNtfctn
();
if
(
ntfctnList
!=
null
&&
ntfctnList
.
size
()
>
0
)
{
AccountNotification2
ntfctn
=
ntfctnList
.
get
(
0
);
if
(
ntfctn
!=
null
&&
ntfctn
.
getAcct
()
!=
null
&&
ntfctn
.
getAcct
().
getSvcr
()
!=
null
&&
ntfctn
.
getAcct
().
getSvcr
().
getFinInstnId
()
!=
null
)
{
String
receiverBic
=
ntfctn
.
getAcct
().
getSvcr
().
getFinInstnId
().
getBIC
();
String
mtReceiverBic
=
processBicCode
(
receiverBic
);
if
(!
StringUtil
.
isEmpty
(
mtReceiverBic
))
{
map
.
put
(
"receiverBic"
,
mtReceiverBic
);
}
}
}
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT900/910 ReceiverBic error."
);
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt900910/impl/SenderBicFieldGenerate.java
deleted
100644 → 0
View file @
75cc02d6
package
com
.
prowidesoftware
.
brilliance
.
mx2mt
.
mt900910
.
impl
;
import
com.prowidesoftware.brilliance.constants.Mx2MtConstants
;
import
com.prowidesoftware.brilliance.mx2mt.AbstractMx2MtFieldsGenerate
;
import
com.prowidesoftware.brilliance.exception.SwiftException
;
import
com.prowidesoftware.brilliance.util.StringUtil
;
import
com.prowidesoftware.swift.model.mx.MxCamt05400102
;
import
com.prowidesoftware.swift.model.mx.dic.AccountNotification2
;
import
com.prowidesoftware.swift.model.mx.dic.BankToCustomerDebitCreditNotificationV02
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.util.List
;
public
class
SenderBicFieldGenerate
extends
AbstractMx2MtFieldsGenerate
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
SenderBicFieldGenerate
.
class
);
/**
* <Stmt><Acct><Ownr><Id><OrgId><AnyBIC> BICOrBEI
* @throws SwiftException
*/
@Override
public
void
fieldsGenerate
()
throws
SwiftException
{
logger
.
info
(
"SenderBicFieldGenerate start."
);
try
{
MxCamt05400102
mxCamt05400102
=
(
MxCamt05400102
)
map
.
get
(
Mx2MtConstants
.
MX_OBJECT
);
if
(
mxCamt05400102
==
null
||
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
()
==
null
)
{
return
;
}
BankToCustomerDebitCreditNotificationV02
bkToCstmrDbtCdtNtfctn
=
mxCamt05400102
.
getBkToCstmrDbtCdtNtfctn
();
List
<
AccountNotification2
>
ntfctnList
=
bkToCstmrDbtCdtNtfctn
.
getNtfctn
();
if
(
ntfctnList
!=
null
&&
ntfctnList
.
size
()
>
0
)
{
AccountNotification2
ntfctn
=
ntfctnList
.
get
(
0
);
if
(
ntfctn
!=
null
&&
ntfctn
.
getAcct
()
!=
null
&&
ntfctn
.
getAcct
().
getOwnr
()
!=
null
&&
ntfctn
.
getAcct
().
getOwnr
().
getId
()
!=
null
&&
ntfctn
.
getAcct
().
getOwnr
().
getId
().
getOrgId
()
!=
null
)
{
String
senderBic
=
ntfctn
.
getAcct
().
getOwnr
().
getId
().
getOrgId
().
getBICOrBEI
();
String
mtSenderBic
=
processBicCode
(
senderBic
);
if
(!
StringUtil
.
isEmpty
(
mtSenderBic
))
{
map
.
put
(
"senderBic"
,
mtSenderBic
);
}
}
}
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
SwiftException
(
"ERROR"
,
"Convert MT900/910 SenderBic error"
);
}
}
}
src/main/java/com/prowidesoftware/brilliance/mx2mt/mt940950/Mx2Mt950Creator.java
View file @
fc92d441
...
@@ -125,4 +125,13 @@ public class Mx2Mt950Creator extends AbstractMx2MtCreator {
...
@@ -125,4 +125,13 @@ public class Mx2Mt950Creator extends AbstractMx2MtCreator {
}
}
return
false
;
return
false
;
}
}
@Override
protected
String
getMtType
()
{
if
(
getMtMsg
())
{
return
Mx2MtConstants
.
MT_TYPE_940
;
}
else
{
return
Mx2MtConstants
.
MT_TYPE_950
;
}
}
}
}
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