@RequestMapping(value = "/queryTotalData", method = RequestMethod.GET)
public Result queryTotalData() {
Long successNum = 0L;
Long failNum = 0L;
List<Object> list = redisTemplate.executePipelined(new SessionCallback<String>() {
@Override
public <K, V> String execute(RedisOperations<K, V> operations) throws DataAccessException {
operations.opsForValue().get("success_num");
operations.opsForValue().get("fail_num");
return null;
}
});
if (list.get(0) != null) {
successNum = Long.parseLong((String) list.get(0));
}
if (list.get(1) != null) {
failNum = Long.parseLong((String) list.get(1));
}
TotalDataVO dataVO = new TotalDataVO();
dataVO.setSuccessNum(successNum);
dataVO.setFailNum(failNum);
dataVO.setTotalNum(successNum + failNum);
NumberFormat format = NumberFormat.getPercentInstance();
format.setMinimumFractionDigits(2);
if (successNum + failNum != 0) {
dataVO.setSuccessRate(format.format(successNum * 1.00 / (successNum + failNum)));
dataVO.setFailRate(format.format(failNum * 1.00 / (successNum + failNum)));
}
return Result.success(dataVO, Common.MSG_QUERY);
}