|
@@ -78,29 +78,22 @@ public class RedisDataService {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- List<String> vals = (List<String>)this.redisUtil.getmAll(keys);
|
|
|
+ List<Object> vals = redisUtil.hmgetAll(keys);
|
|
|
if (vals == null || vals.isEmpty() || vals.size() != keys.size()) {
|
|
|
log.error("读取redis错误!publicaddr = " + addr);
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- for (int i = 0; i < keys.size(); i++){
|
|
|
+ for (int i = 0; i < keys.size(); i++) {
|
|
|
Point point = points.get(i);
|
|
|
- String val = vals.get(i);
|
|
|
- if (point == null || !StringUtils.hasText(val))
|
|
|
- continue;
|
|
|
-
|
|
|
- String[] vls = val.split(":");
|
|
|
- if (vls.length != 2)
|
|
|
+ Map<String, String> mp = (Map<String, String>) vals.get(i);
|
|
|
+ if (mp == null || mp.size() == 0)
|
|
|
continue;
|
|
|
|
|
|
- String ts = vls[0].trim();
|
|
|
- String vs = vls[1].trim();
|
|
|
-
|
|
|
- long time = Long.valueOf(ts.substring(ts.indexOf("\"") + 1, ts.length() - 1));
|
|
|
- double value = Double.valueOf(vs.substring(1, vs.lastIndexOf("\"")));
|
|
|
+ long time = Long.valueOf(mp.get("timestamp")).longValue() * 1000;
|
|
|
+ double value = Double.valueOf(mp.get("value")).doubleValue();
|
|
|
|
|
|
- if (point.getValue() != value ) {
|
|
|
+ if (point.getValue() != value) {
|
|
|
point.setConsumed(false);
|
|
|
point.setValue(value);
|
|
|
point.setLastUpdateTime(new Date(time));
|
|
@@ -108,7 +101,6 @@ public class RedisDataService {
|
|
|
|
|
|
if (point.getLastUpdateTime() == null)
|
|
|
point.setLastUpdateTime(new Date(time));
|
|
|
-
|
|
|
}
|
|
|
} catch (Exception e){
|
|
|
log.error(e.getMessage());
|