From 9ba69c188fbe2c2b7c6381106b1816281c155134 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Fri, 4 Aug 2023 11:40:07 +0300 Subject: [PATCH] =?UTF-8?q?dbf-importer=20SDf06Table=20=D0=BF=D0=BE=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20=D1=84=D0=BE=D1=80=D0=BC=D0=B0?= =?UTF-8?q?=D1=82=20-=20=D1=82=D1=80=D0=B8=D0=BC=D0=BB=D1=8E=20=D1=87?= =?UTF-8?q?=D0=B8=D1=81=D0=BB=D0=B0,=20=D0=BF=D1=83=D1=81=D1=82=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=BA=D0=B0=D0=BA=20null?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dbf/importer/logic/data/tables/SDf06Table.java | 1 + .../importer/logic/data/tables/SDf06TableTest.java | 14 ++++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) 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