diff --git a/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06Table.java b/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06Table.java index a98c58279..ee48fb8a8 100644 --- a/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06Table.java +++ b/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06Table.java @@ -44,6 +44,7 @@ public class SDf06Table extends AbstractTable { if (value instanceof String) { //return BigDecimal.valueOf(Long.parseLong((String)value)); String str = ((String)value).trim(); + if (str.isEmpty()) return null; return new BigDecimal(str); } if (value instanceof Number) { diff --git a/clearing-parent/dbf-importer/src/test/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06TableTest.java b/clearing-parent/dbf-importer/src/test/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06TableTest.java index 4cb21e5d8..f8fcb3cec 100644 --- a/clearing-parent/dbf-importer/src/test/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06TableTest.java +++ b/clearing-parent/dbf-importer/src/test/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf06TableTest.java @@ -10,13 +10,15 @@ class SDf06TableTest { @Test void anyNumberToBigDecimal() { - SDf06Table table=new SDf06Table(); + SDf06Table table = new SDf06Table(); assertNull(table.anyNumberToBigDecimal(null)); - assertEquals(BigDecimal.valueOf(1234),table.anyNumberToBigDecimal("1234")); // это для INN - assertEquals(BigDecimal.valueOf(1234).setScale(0),table.anyNumberToBigDecimal(" 1234")); - assertEquals(BigDecimal.valueOf(1234),table.anyNumberToBigDecimal(" 1234 ")); - assertEquals(new BigDecimal("100000000.0"),table.anyNumberToBigDecimal(" 100000000.0")); // это для SUM - assertEquals(BigDecimal.ONE.scaleByPowerOfTen(3).setScale(2),table.anyNumberToBigDecimal(" 1000.00 ")); + assertNull(table.anyNumberToBigDecimal("")); + assertNull(table.anyNumberToBigDecimal(" ")); + assertEquals(BigDecimal.valueOf(1234), table.anyNumberToBigDecimal("1234")); // это для INN + assertEquals(BigDecimal.valueOf(1234).setScale(0), table.anyNumberToBigDecimal(" 1234")); + assertEquals(BigDecimal.valueOf(1234), table.anyNumberToBigDecimal(" 1234 ")); + assertEquals(new BigDecimal("100000000.0"), table.anyNumberToBigDecimal(" 100000000.0")); // это для SUM + assertEquals(BigDecimal.ONE.scaleByPowerOfTen(3).setScale(2), table.anyNumberToBigDecimal(" 1000.00 ")); assertNull(table.anyNumberToBigDecimal(null)); } } \ No newline at end of file