diff --git a/src/main/java/com/xydl/cac/comparator/FloatCompare.java b/src/main/java/com/xydl/cac/comparator/FloatCompare.java index ca3cc9f..003c906 100644 --- a/src/main/java/com/xydl/cac/comparator/FloatCompare.java +++ b/src/main/java/com/xydl/cac/comparator/FloatCompare.java @@ -14,7 +14,12 @@ public class FloatCompare extends Comparator { @Override public boolean compare(Object source, String threshold, Date lastDTime) { if (source != null) { - float s1 = (float) source; + float s1; + if (source instanceof Number) { + s1 = (float) source; + } else { + s1 = Float.valueOf(source.toString()); + } if ("BTW".equalsIgnoreCase(operator)) { String[] strs = threshold.split(","); diff --git a/src/main/java/com/xydl/cac/comparator/IntCompare.java b/src/main/java/com/xydl/cac/comparator/IntCompare.java index d3a657c..7023f9f 100644 --- a/src/main/java/com/xydl/cac/comparator/IntCompare.java +++ b/src/main/java/com/xydl/cac/comparator/IntCompare.java @@ -11,7 +11,12 @@ public class IntCompare extends Comparator { @Override public boolean compare(Object source, String threshold, Date lastDTime) { if (source != null) { - int s1 = (int) source; + int s1; + if (source instanceof Integer) { + s1 = (int) source; + } else { + s1 = Integer.valueOf(source.toString()); + } if ("BTW".equalsIgnoreCase(operator)) { String[] strs = threshold.split(","); diff --git a/src/main/java/com/xydl/cac/task/RuleCheckTask.java b/src/main/java/com/xydl/cac/task/RuleCheckTask.java index 148d448..8b9f151 100644 --- a/src/main/java/com/xydl/cac/task/RuleCheckTask.java +++ b/src/main/java/com/xydl/cac/task/RuleCheckTask.java @@ -83,7 +83,7 @@ public class RuleCheckTask { } } } catch (Exception e) { - log.error("RuleCheckTask.ruleCheck error.", e); + log.error("RuleCheckTask.ruleCheck error. ruleId=" + rule.getId(), e); } }