From 2c65f7ab92ab529b42669c78bc4e36aa93915bbc Mon Sep 17 00:00:00 2001 From: AKurakin Date: Wed, 9 Aug 2023 14:29:02 +0300 Subject: [PATCH] =?UTF-8?q?dbf-exporter=20S=5FDF07=5FConverter=20=D0=B2?= =?UTF-8?q?=D1=80=D0=B5=D0=BC=D0=B5=D0=BD=D0=BD=D0=BE=20INN,BIC=20as=20str?= =?UTF-8?q?ing?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../services/converters/S_DF07_Converter.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/services/converters/S_DF07_Converter.java b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/services/converters/S_DF07_Converter.java index 638cd24f5..7060f5def 100644 --- a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/services/converters/S_DF07_Converter.java +++ b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/services/converters/S_DF07_Converter.java @@ -5,6 +5,7 @@ import com.linuxense.javadbf.DBFField; import org.springframework.stereotype.Service; import ru.clearing.classes.statics.data.sdf.SDf07; +import java.math.BigDecimal; import java.util.LinkedList; import java.util.List; @@ -19,14 +20,23 @@ public class S_DF07_Converter extends DFConverter { values.add(typeMatch(entity.getType())); values.add(typeMatch(entity.getDeal())); values.add(typeMatch(entity.getClientN())); - values.add(typeMatch(entity.getInn())); - values.add(typeMatch(entity.getBic())); + values.add(typeMatch(anyAsString(entity.getInn()))); + values.add(typeMatch(anyAsString(entity.getBic()))); values.add(typeMatch(entity.getSpec())); values.add(typeMatch(entity.getNumber())); values.add(typeMatch(entity.getResult())); return values.toArray(Object[]::new); } + String anyAsString(Object value) { + if (value == null) return null; + if (value instanceof String) { + return (String) value; + } else { + return String.valueOf(value); + } + } + @Override public DBFField[] getDBFHeaders() { List dbfFields = new LinkedList<>(); @@ -36,8 +46,8 @@ public class S_DF07_Converter extends DFConverter { dbfFields.add(new DBFField("TYPE", DBFDataType.CHARACTER, 2)); dbfFields.add(new DBFField("DEAL", DBFDataType.CHARACTER, 10)); dbfFields.add(new DBFField("CLIENTN", DBFDataType.CHARACTER, 35)); - dbfFields.add(new DBFField("INN", DBFDataType.NUMERIC, 32, 18)); - dbfFields.add(new DBFField("BIC", DBFDataType.NUMERIC, 32, 18)); + dbfFields.add(new DBFField("INN", DBFDataType.CHARACTER, 12)); + dbfFields.add(new DBFField("BIC", DBFDataType.CHARACTER, 10)); dbfFields.add(new DBFField("SPEC", DBFDataType.CHARACTER, 254)); dbfFields.add(new DBFField("NUMBER", DBFDataType.NUMERIC, 10)); dbfFields.add(new DBFField("RESULT", DBFDataType.NUMERIC, 1));