http://jira.mfd.msk:8088/browse/CLS-806 add null as empty on serialization

This commit is contained in:
Ivan Nikolaev-Axenov 2024-12-18 10:41:18 +03:00
parent 8a62e9fcae
commit c94bf2a57a
8 changed files with 108 additions and 0 deletions

View file

@ -1,6 +1,8 @@
package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@ -9,43 +11,56 @@ import ru.clearing.classes.statics.data.sdf.SDf02;
public class DF02ObjectTag extends ObjectTag<SDf02> {
@JacksonXmlProperty(isAttribute = true, localName = "CURR_CODE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String currCode;
@JacksonXmlProperty(isAttribute = true, localName = "ACCOUNT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String account;
@JacksonXmlProperty(isAttribute = true, localName = "REMAINDER")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String remainder;
@JacksonXmlProperty(isAttribute = true, localName = "DEAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String deal;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_CODE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accCode;
@JacksonXmlProperty(isAttribute = true, localName = "DAT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate dat;
@JacksonXmlProperty(isAttribute = true, localName = "MARKET")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String market;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_NAME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accName;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accType;
@JacksonXmlProperty(isAttribute = true, localName = "SUMENGAGE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sumengage;
@JacksonXmlProperty(isAttribute = true, localName = "SUMUNBLOK")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sumunblock;
@JacksonXmlProperty(isAttribute = true, localName = "FILE_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String fileType;
@JacksonXmlProperty(isAttribute = true, localName = "RESULT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String result;
public DF02ObjectTag() {

View file

@ -2,6 +2,8 @@ package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@ -10,21 +12,27 @@ import ru.clearing.classes.statics.data.sdf.SDf03;
public class DF03ObjectTag extends ObjectTag<SDf03> {
@JacksonXmlProperty(isAttribute = true, localName = "SEG_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String segType;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docType;
@JacksonXmlProperty(isAttribute = true, localName = "DOCNM_REF")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docnmRef;
@JacksonXmlProperty(isAttribute = true, localName = "DOCNMPREV")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docnmprev;
@JacksonXmlProperty(isAttribute = true, localName = "C_ACC_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String cAccDeb;
@JacksonXmlProperty(isAttribute = true, localName = "SBANKNAM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sbanknam1;
@JsonIgnore
private String sbanknam2;
@ -36,9 +44,11 @@ public class DF03ObjectTag extends ObjectTag<SDf03> {
private String sbanknam5;
@JacksonXmlProperty(isAttribute = true, localName = "C_ACC_CRED")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String cAccCred;
@JacksonXmlProperty(isAttribute = true, localName = "RBANKNAM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String rbanknam1;
@JsonIgnore
private String rbanknam2;
@ -50,19 +60,24 @@ public class DF03ObjectTag extends ObjectTag<SDf03> {
private String rbanknam5;
@JacksonXmlProperty(isAttribute = true, localName = "PAY_DATE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate payDate;
@JacksonXmlProperty(isAttribute = true, localName = "PAY_VAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String payVal;
@JacksonXmlProperty(isAttribute = true, localName = "SUM_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sumDeb;
@JacksonXmlProperty(isAttribute = true, localName = "SPECIF_1")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String specif1;
@JacksonXmlProperty(isAttribute = true, localName = "IMP_RESULT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String impResult;

View file

@ -1,6 +1,8 @@
package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.math.BigDecimal;
import java.time.LocalDate;
@ -11,17 +13,21 @@ import ru.clearing.classes.statics.data.sdf.SDf05;
public class DF05ObjectTag extends ObjectTag<SDf05> {
@JacksonXmlProperty(isAttribute = true, localName = "TP")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private BigDecimal tp;
@JacksonXmlProperty(isAttribute = true, localName = "DT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate dt;
@JacksonXmlProperty(isAttribute = true, localName = "TM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "hh:mm:ss")
private LocalTime tm;
@JacksonXmlProperty(isAttribute = true, localName = "PR")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String pr;
public DF05ObjectTag() {

View file

@ -1,6 +1,8 @@
package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.math.BigDecimal;
import java.time.LocalDate;
@ -10,46 +12,60 @@ import ru.clearing.classes.statics.data.sdf.SDf07;
public class DF07ObjectTag extends ObjectTag<SDf07> {
@JacksonXmlProperty(isAttribute = true, localName = "ACCOUNT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String account;
@JacksonXmlProperty(isAttribute = true, localName = "SUM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private BigDecimal sum;
@JacksonXmlProperty(isAttribute = true, localName = "MARKET")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String market;
@JacksonXmlProperty(isAttribute = true, localName = "TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String type;
@JacksonXmlProperty(isAttribute = true, localName = "DEAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String deal;
@JacksonXmlProperty(isAttribute = true, localName = "CLIENTN")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String clientN;
@JacksonXmlProperty(isAttribute = true, localName = "INN")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String inn;
@JacksonXmlProperty(isAttribute = true, localName = "BIC")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String bic;
@JacksonXmlProperty(isAttribute = true, localName = "SPEC")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String spec;
@JacksonXmlProperty(isAttribute = true, localName = "NUMBER")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private BigDecimal number;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_NUM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docNum;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_DATE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate docDate;
@JacksonXmlProperty(isAttribute = true, localName = "PAY_VAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String payVal;
@JacksonXmlProperty(isAttribute = true, localName = "RESULT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private BigDecimal result;

View file

@ -2,6 +2,8 @@ package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.time.Instant;
import java.time.LocalDateTime;
@ -12,12 +14,15 @@ import ru.clearing.classes.statics.data.sdf.SDf51;
public class DF51ObjectTag extends ObjectTag<SDf51> {
@JacksonXmlProperty(isAttribute = true, localName = "NUMBER")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String number;
@JacksonXmlProperty(isAttribute = true, localName = "UNIXTIME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private Long unixtime;
@JacksonXmlProperty(isAttribute = true, localName = "DATETIME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
private LocalDateTime datetime;

View file

@ -1,6 +1,8 @@
package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@ -9,25 +11,32 @@ import ru.clearing.classes.statics.data.sdf.SDf53;
public class DF53ObjectTag extends ObjectTag<SDf53> {
@JacksonXmlProperty(isAttribute = true, localName = "ACCOUNT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String account;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_NAME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accName;
@JacksonXmlProperty(isAttribute = true, localName = "DEAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String deal;
@JacksonXmlProperty(isAttribute = true, localName = "DATE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate date;
@JacksonXmlProperty(isAttribute = true, localName = "STATUS")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private Long status;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accType;
@JacksonXmlProperty(isAttribute = true, localName = "RESULT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String result;

View file

@ -2,6 +2,8 @@ package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
@ -10,24 +12,31 @@ import ru.clearing.classes.statics.data.sdf.SDf54;
public class DF54ObjectTag extends ObjectTag<SDf54> {
@JacksonXmlProperty(isAttribute = true, localName = "SEG_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String segType;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docType;
@JacksonXmlProperty(isAttribute = true, localName = "DOCNM_REF")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docnmRef;
@JacksonXmlProperty(isAttribute = true, localName = "DOCNMPREV")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docnmprev;
@JacksonXmlProperty(isAttribute = true, localName = "SBANKCODE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sbankcode;
@JacksonXmlProperty(isAttribute = true, localName = "C_ACC_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String cAccDeb;
@JacksonXmlProperty(isAttribute = true, localName = "SBANKNAM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sbanknam1;
@JsonIgnore
private String sbanknam2;
@ -39,12 +48,15 @@ public class DF54ObjectTag extends ObjectTag<SDf54> {
private String sbanknam5;
@JacksonXmlProperty(isAttribute = true, localName = "RBANKCODE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String rbankcode;
@JacksonXmlProperty(isAttribute = true, localName = "C_ACC_CRED")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String cAccCred;
@JacksonXmlProperty(isAttribute = true, localName = "RBANKNAM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String rbanknam1;
@JsonIgnore
private String rbanknam2;
@ -56,22 +68,28 @@ public class DF54ObjectTag extends ObjectTag<SDf54> {
private String rbanknam5;
@JacksonXmlProperty(isAttribute = true, localName = "OP_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String opType;
@JacksonXmlProperty(isAttribute = true, localName = "OP_ORDER")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String opOrder;
@JacksonXmlProperty(isAttribute = true, localName = "PAY_DATE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate payDate;
@JacksonXmlProperty(isAttribute = true, localName = "PAY_VAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String payVal;
@JacksonXmlProperty(isAttribute = true, localName = "SUM_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sumDeb;
@JacksonXmlProperty(isAttribute = true, localName = "SCLIENTN")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sclientn1;
@JsonIgnore
private String sclientn2;
@ -81,15 +99,19 @@ public class DF54ObjectTag extends ObjectTag<SDf54> {
private String sclientn4;
@JacksonXmlProperty(isAttribute = true, localName = "INN_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String innDeb;
@JacksonXmlProperty(isAttribute = true, localName = "KPP_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String kppDeb;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_DEB")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accDeb;
@JacksonXmlProperty(isAttribute = true, localName = "RCLIENTN")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String rclientn1;
@JsonIgnore
private String rclientn2;
@ -99,38 +121,49 @@ public class DF54ObjectTag extends ObjectTag<SDf54> {
private String rclientn4;
@JacksonXmlProperty(isAttribute = true, localName = "INN_CRED")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String innCred;
@JacksonXmlProperty(isAttribute = true, localName = "KPP_CRED")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String kppCred;
@JacksonXmlProperty(isAttribute = true, localName = "ACC_KR_1")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String accKr1;
@JacksonXmlProperty(isAttribute = true, localName = "SPECIF_1")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String specif1;
@JacksonXmlProperty(isAttribute = true, localName = "SEND_TYPE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String sendType;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_RESULT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docResult;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_NUM")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String docNum;
@JacksonXmlProperty(isAttribute = true, localName = "DOC_DATE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate docDate;
@JacksonXmlProperty(isAttribute = true, localName = "VALUE_DATE")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate valueDate;
@JacksonXmlProperty(isAttribute = true, localName = "SWIFT_BEN")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String swiftBen;
@JacksonXmlProperty(isAttribute = true, localName = "SWIFT_INT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String swiftInt;

View file

@ -1,6 +1,8 @@
package ru.spcex.clearing.xml.exporter.logic.data.tags.objects;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.time.Instant;
import java.time.LocalDateTime;
@ -11,28 +13,35 @@ import ru.clearing.classes.statics.data.sdf.SDf56;
public class DF56ObjectTag extends ObjectTag<SDf56> {
@JacksonXmlProperty(isAttribute = true, localName = "NUMBER")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String number;
@JacksonXmlProperty(isAttribute = true, localName = "SUNIXTIME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private Long startUnixtime;
@JacksonXmlProperty(isAttribute = true, localName = "SDATETIME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
private LocalDateTime startDatetime;
@JacksonXmlProperty(isAttribute = true, localName = "EUNIXTIME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private Long endUnixtime;
@JacksonXmlProperty(isAttribute = true, localName = "EDATETIME")
@JsonSetter(nulls = Nulls.AS_EMPTY)
@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
private LocalDateTime endDatetime;
@JacksonXmlProperty(isAttribute = true, localName = "ACCOUNT")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String account;
@JacksonXmlProperty(isAttribute = true, localName = "DEAL")
@JsonSetter(nulls = Nulls.AS_EMPTY)
private String deal;