Преглед на файлове

修改查询时间方法--获取没有创建表异常

hxf преди 1 година
родител
ревизия
b53897a531

+ 3 - 0
neim-biz/src/main/java/com/jiayue/biz/service/impl/ProphaseWeatherDataServiceImpl.java

@@ -34,6 +34,8 @@ public class ProphaseWeatherDataServiceImpl extends ServiceImpl<ProphaseWeatherD
     public Map<String, Long> getDataTimeStartAndEnd(String equipmentNo) {
         List<StatisticsSituation> statisticsSituationList = statisticsSituationService.list();
         HashMap<String, Long> hashMap = new HashMap<>();
+        hashMap.put("startTime", 0l);
+        hashMap.put("endTime", 0l);
         try {
             List<Entity> lastData = baseMapper.getLastData(equipmentNo);
             List<Entity> firstData = baseMapper.getFirstData(equipmentNo);
@@ -50,6 +52,7 @@ public class ProphaseWeatherDataServiceImpl extends ServiceImpl<ProphaseWeatherD
                 hashMap.put("startTime", Long.parseLong(timeArr[0]));
                 hashMap.put("endTime", Long.parseLong(timeArr[1]));
             }
+//            e.printStackTrace();
             log.error("{}此测风塔没有表",equipmentNo);
         }
 

+ 4 - 5
neim-biz/src/main/java/com/jiayue/biz/service/impl/RealTimeDisplayServiceImpl.java

@@ -398,10 +398,9 @@ public class RealTimeDisplayServiceImpl implements RealTimeDisplayService {
         for (WindTowerInfo windTowerInfo : windTowerInfoList) {
             HashMap<String, Object> hashMap = new HashMap<>();
             //获取最后一条数据
-            List<Entity> lastData = prophaseWeatherDataService.getLastData(windTowerInfo.getEquipmentNo());
-            if (lastData.size() > 0) {
-                Timestamp timeEnd = (Timestamp) lastData.get(0).get("last (ts)");
-                long lastDataTime = timeEnd.getTime();
+            Map<String, Long> dataTimeStartAndEnd = prophaseWeatherDataService.getDataTimeStartAndEnd(windTowerInfo.getEquipmentNo());
+            if (dataTimeStartAndEnd.size() > 0) {
+                long lastDataTime = dataTimeStartAndEnd.get("endTime");
                 long startTime = DateTimeUtil.getDayStartTime(lastDataTime - 86400000 * 7).getTime();
                 long endTime = DateTimeUtil.getDayLastTime(lastDataTime).getTime();
                 hashMap.put("equipmentId", windTowerInfo.getEquipmentNo());
@@ -411,7 +410,7 @@ public class RealTimeDisplayServiceImpl implements RealTimeDisplayService {
             }
 
         }
-        redisCache.setCacheObject("getStartTimeAndEndTime",list,1, TimeUnit.HOURS);
+        redisCache.setCacheObject("getStartTimeAndEndTime", list, 1, TimeUnit.HOURS);
         return list;
     }
 

+ 7 - 1
neim-biz/src/main/java/com/jiayue/biz/service/impl/WindTowerInfoServiceImpl.java

@@ -168,7 +168,13 @@ public class WindTowerInfoServiceImpl extends ServiceImpl<WindTowerInfoMapper, W
             map.put("heights", w.getHeights());
             map.put("status", w.getStatus());
             Map<String, Long> dataTimeStartAndEnd = prophaseWeatherDataService.getDataTimeStartAndEnd(w.getEquipmentNo());
-            String str = sdf.format(new Date(dataTimeStartAndEnd.get("startTime"))) + "-" + sdf.format(new Date(dataTimeStartAndEnd.get("endTIme")));
+
+            String str;
+            if(dataTimeStartAndEnd.get("startTime") == 0l || dataTimeStartAndEnd.get("endTime") == 0l) {
+                str = "";
+            }else {
+                str = sdf.format(new Date(dataTimeStartAndEnd.get("startTime"))) + "-" + sdf.format(new Date(dataTimeStartAndEnd.get("endTime")));
+            }
             map.put("date", str);
 
             if (w.getStatus() == null || w.getStatus().equals("")) {