Browse Source
Merge pull request #6959 from YuriyLytvynchuk/feature/fix_convert_value_entityDataAdapter
[3.4.1]Fix convertValue in EntityDataAdapter
pull/7105/head
Andrew Shvayka
4 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
5 additions and
1 deletions
-
dao/src/main/java/org/thingsboard/server/dao/sql/query/EntityDataAdapter.java
-
dao/src/test/java/org/thingsboard/server/dao/sql/query/EntityDataAdapterTest.java
|
|
|
@ -81,7 +81,10 @@ public class EntityDataAdapter { |
|
|
|
if (value != null) { |
|
|
|
String strVal = value.toString(); |
|
|
|
// check number
|
|
|
|
if (strVal.length() > 0 && NumberUtils.isParsable(strVal)) { |
|
|
|
if (NumberUtils.isParsable(strVal)) { |
|
|
|
if (strVal.startsWith("0") && !strVal.startsWith("0.")) { |
|
|
|
return strVal; |
|
|
|
} |
|
|
|
try { |
|
|
|
long longVal = Long.parseLong(strVal); |
|
|
|
return Long.toString(longVal); |
|
|
|
|
|
|
|
@ -25,5 +25,6 @@ public class EntityDataAdapterTest { |
|
|
|
public void testConvertValue() { |
|
|
|
assertThat(EntityDataAdapter.convertValue("500")).isEqualTo("500"); |
|
|
|
assertThat(EntityDataAdapter.convertValue("500D")).isEqualTo("500D"); //do not convert to Double !!!
|
|
|
|
assertThat(EntityDataAdapter.convertValue("0101010521130565")).isEqualTo("0101010521130565"); |
|
|
|
} |
|
|
|
} |
|
|
|
|