正在显示
1 个修改的文件
包含
58 行增加
和
6 行删除
| @@ -2,6 +2,7 @@ package com.zhonglai.luhui.api.service; | @@ -2,6 +2,7 @@ package com.zhonglai.luhui.api.service; | ||
| 2 | 2 | ||
| 3 | import com.google.common.base.CaseFormat; | 3 | import com.google.common.base.CaseFormat; |
| 4 | import com.ruoyi.common.utils.DateUtils; | 4 | import com.ruoyi.common.utils.DateUtils; |
| 5 | +import com.ruoyi.common.utils.StringUtils; | ||
| 5 | import com.zhonglai.luhui.api.controller.data.DeviceSensorData; | 6 | import com.zhonglai.luhui.api.controller.data.DeviceSensorData; |
| 6 | import com.zhonglai.luhui.api.controller.data.SensorData; | 7 | import com.zhonglai.luhui.api.controller.data.SensorData; |
| 7 | import com.zhonglai.luhui.api.controller.data.TableGenerateSqlEnum; | 8 | import com.zhonglai.luhui.api.controller.data.TableGenerateSqlEnum; |
| @@ -310,18 +311,69 @@ public class DataService { | @@ -310,18 +311,69 @@ public class DataService { | ||
| 310 | 311 | ||
| 311 | if(null != list && list.size() !=0 && null != list.get(0) && null != list.get(0).get("ct") && (list.get(0).get("ct")+"").equals("1")) | 312 | if(null != list && list.size() !=0 && null != list.get(0) && null != list.get(0).get("ct") && (list.get(0).get("ct")+"").equals("1")) |
| 312 | { | 313 | { |
| 313 | - list = publicMapper.getObjectListBySQL("select * from `ly-device-data`.`"+deviceInfoId+"-"+dataType+"` where (`time` % "+interval+")=0 and `time`>="+startTime+" and `time`<="+endTime+""); | 314 | + list = publicMapper.getObjectListBySQL("select *,(`time` % "+interval+") asb from `ly-device-data`.`"+deviceInfoId+"-"+dataType+"` where ((`time` % "+interval+")=0 OR `value`<>'') AND `time`>="+startTime+" and `time`<="+endTime+" order by `time` asc"); |
| 314 | 315 | ||
| 315 | if(null != list && list.size() !=0 ) | 316 | if(null != list && list.size() !=0 ) |
| 316 | { | 317 | { |
| 317 | StringBuffer sb = new StringBuffer(); | 318 | StringBuffer sb = new StringBuffer(); |
| 318 | 319 | ||
| 319 | - for(Map<String,Object> map:list) | 320 | + |
| 321 | + for(int i=0;i<list.size();i++) | ||
| 320 | { | 322 | { |
| 321 | - sb.append(map.get("time")); | ||
| 322 | - sb.append(","); | ||
| 323 | - sb.append(map.get("value")); | ||
| 324 | - sb.append("\r\n"); | 323 | + Map<String,Object> map = list.get(i); |
| 324 | + if(StringUtils.isNotEmpty((String)map.get("value"))) | ||
| 325 | + { | ||
| 326 | + sb.append(map.get("time")); | ||
| 327 | + sb.append(","); | ||
| 328 | + sb.append(map.get("value")); | ||
| 329 | + sb.append("\r\n"); | ||
| 330 | + }else{ | ||
| 331 | + String svalue = (String) map.get("value"); | ||
| 332 | + Long sasb = 0l; | ||
| 333 | + if (i-1>=0) | ||
| 334 | + { | ||
| 335 | + | ||
| 336 | + String object = (String) list.get(i-1).get("value"); | ||
| 337 | + if((Long) list.get(i-1).get("asb")!=0 && !"".equals(object)){ | ||
| 338 | + svalue = object; | ||
| 339 | + sasb = (Long) list.get(i-1).get("asb"); | ||
| 340 | + } | ||
| 341 | + | ||
| 342 | + } | ||
| 343 | + String xvalue = (String) map.get("value"); | ||
| 344 | + Long xasb = 0l; | ||
| 345 | + if (i+1<list.size()) | ||
| 346 | + { | ||
| 347 | + String object = (String) list.get(i+1).get("value"); | ||
| 348 | + if((Long) list.get(i+1).get("asb")!=0 && !"".equals(object)){ | ||
| 349 | + xvalue = object; | ||
| 350 | + xasb = (Long) list.get(i+1).get("asb"); | ||
| 351 | + } | ||
| 352 | + } | ||
| 353 | + | ||
| 354 | + if(!"".equals(svalue) && !"".equals(xvalue) ) | ||
| 355 | + { | ||
| 356 | + if(sasb-xasb>=0) | ||
| 357 | + { | ||
| 358 | + sb.append(map.get("time")); | ||
| 359 | + sb.append(","); | ||
| 360 | + sb.append(xvalue); | ||
| 361 | + sb.append("\r\n"); | ||
| 362 | + }else { | ||
| 363 | + sb.append(map.get("time")); | ||
| 364 | + sb.append(","); | ||
| 365 | + sb.append(svalue); | ||
| 366 | + sb.append("\r\n"); | ||
| 367 | + } | ||
| 368 | + }else{ | ||
| 369 | + sb.append(map.get("time")); | ||
| 370 | + sb.append(","); | ||
| 371 | + sb.append( svalue+""+xvalue); | ||
| 372 | + sb.append("\r\n"); | ||
| 373 | + } | ||
| 374 | + } | ||
| 375 | + | ||
| 376 | + | ||
| 325 | } | 377 | } |
| 326 | // 销毁数据源 在执行方法之后 | 378 | // 销毁数据源 在执行方法之后 |
| 327 | DynamicDataSourceContextHolder.clearDataSourceType(); | 379 | DynamicDataSourceContextHolder.clearDataSourceType(); |
-
请 注册 或 登录 后发表评论