dbf-importer SDf06Table поправил формат - тримлю числа, пустые как null
This commit is contained in:
parent
d8ad75dce9
commit
9ba69c188f
2 changed files with 9 additions and 6 deletions
|
|
@ -44,6 +44,7 @@ public class SDf06Table extends AbstractTable<SDf06> {
|
||||||
if (value instanceof String) {
|
if (value instanceof String) {
|
||||||
//return BigDecimal.valueOf(Long.parseLong((String)value));
|
//return BigDecimal.valueOf(Long.parseLong((String)value));
|
||||||
String str = ((String)value).trim();
|
String str = ((String)value).trim();
|
||||||
|
if (str.isEmpty()) return null;
|
||||||
return new BigDecimal(str);
|
return new BigDecimal(str);
|
||||||
}
|
}
|
||||||
if (value instanceof Number) {
|
if (value instanceof Number) {
|
||||||
|
|
|
||||||
|
|
@ -10,13 +10,15 @@ class SDf06TableTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void anyNumberToBigDecimal() {
|
void anyNumberToBigDecimal() {
|
||||||
SDf06Table table=new SDf06Table();
|
SDf06Table table = new SDf06Table();
|
||||||
assertNull(table.anyNumberToBigDecimal(null));
|
assertNull(table.anyNumberToBigDecimal(null));
|
||||||
assertEquals(BigDecimal.valueOf(1234),table.anyNumberToBigDecimal("1234")); // это для INN
|
assertNull(table.anyNumberToBigDecimal(""));
|
||||||
assertEquals(BigDecimal.valueOf(1234).setScale(0),table.anyNumberToBigDecimal(" 1234"));
|
assertNull(table.anyNumberToBigDecimal(" "));
|
||||||
assertEquals(BigDecimal.valueOf(1234),table.anyNumberToBigDecimal(" 1234 "));
|
assertEquals(BigDecimal.valueOf(1234), table.anyNumberToBigDecimal("1234")); // это для INN
|
||||||
assertEquals(new BigDecimal("100000000.0"),table.anyNumberToBigDecimal(" 100000000.0")); // это для SUM
|
assertEquals(BigDecimal.valueOf(1234).setScale(0), table.anyNumberToBigDecimal(" 1234"));
|
||||||
assertEquals(BigDecimal.ONE.scaleByPowerOfTen(3).setScale(2),table.anyNumberToBigDecimal(" 1000.00 "));
|
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));
|
assertNull(table.anyNumberToBigDecimal(null));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Add table
Reference in a new issue