Skip to content

Commit

Permalink
fix significant digits for recording analyzer results
Browse files Browse the repository at this point in the history
  • Loading branch information
CalebSLane committed Jul 1, 2024
1 parent 8bef29d commit 850c943
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 7 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<minor.version>8</minor.version>
<state.version>1</state.version>
<!-- 0 = alpha, 1 = beta, 2 = rc, 3 = deployable -->
<fix.version>36</fix.version>
<fix.version>37</fix.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<liquibase.propertyFile>${project.basedir}/liquibase/liquibase.properties</liquibase.propertyFile>
<castor.version>1.4.1</castor.version>
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/org/openelisglobal/common/util/StringUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -560,6 +560,7 @@ public static String replaceTail(String value, String tail) {
return value.substring(0, value.length() - tail.length()) + tail;
}

// not truly significant digits, just decimal places
public static String doubleWithSignificantDigits(double value, String significantDigits) {
if (GenericValidator.isBlankOrNull(significantDigits) || significantDigits.equals("-1")) {
return String.valueOf(value);
Expand All @@ -569,6 +570,7 @@ public static String doubleWithSignificantDigits(double value, String significan
return String.format(format, value);
}

// not truly significant digits, just decimal places
public static String doubleWithSignificantDigits(double value, int significantDigits) {
String format = "%1$." + significantDigits + "f";
return String.format(format, value);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
import org.openelisglobal.common.services.StatusSet;
import org.openelisglobal.common.util.ConfigurationProperties;
import org.openelisglobal.common.util.DateUtil;
import org.openelisglobal.common.util.StringUtil;
import org.openelisglobal.dictionary.service.DictionaryService;
import org.openelisglobal.dictionary.valueholder.Dictionary;
import org.openelisglobal.internationalization.MessageUtil;
Expand Down Expand Up @@ -588,12 +589,8 @@ private String getRoundedToSignificantDigits(AnalyzerResults result) {
return result.getResult();
}

if (significantDigits == 0) {
return String.valueOf(Math.round(results));
}

double power = Math.pow(10, significantDigits);
return String.valueOf(Math.round(results * power) / power);
// not truly significant digits, just decimal places
return StringUtil.doubleWithSignificantDigits(results, significantDigits);
} else {
return result.getResult();
}
Expand Down

0 comments on commit 850c943

Please sign in to comment.