浏览代码

修复定时读取信标数据入库问题

zhuoning 3 年之前
父节点
当前提交
ebce79ba1a

+ 12 - 4
huimv-eartag-location/src/main/java/com/huimv/location/service/impl/BeaconServiceImpl.java

@@ -73,11 +73,17 @@ public class BeaconServiceImpl implements BeaconService {
             beaconDataJo.put("y",beaconInfoJo.getString("y"));
             beaconDataJo.put("z",beaconInfoJo.getString("z"));
             // 最后上传时间
-            JSONObject userDataTsJo = beaconInfoJo.getJSONObject("userDataTs");
-            beaconDataJo.put("up_last_time",userDataTsJo.getLong("0"));
-            beaconDataJo.put("up_last_time2",dateUtil.transferLongToDate("yyyy-MM-dd HH:mm:ss",userDataTsJo.getLong("0")));
+//            JSONObject userDataTsJo = beaconInfoJo.getJSONObject("userDataTs");
+//            System.out.println("最后上传时间 userDataTsJo>>"+userDataTsJo);
+//            beaconDataJo.put("up_last_time",userDataTsJo.getLong("0"));
+//            beaconDataJo.put("up_last_time2",dateUtil.transferLongToDate("yyyy-MM-dd HH:mm:ss",userDataTsJo.getLong("0")));
+//            System.out.println("************************* userData>>"+beaconInfoJo.getJSONObject("userData").getJSONObject("0"));
             // 电量
-            beaconDataJo.put("battery",beaconInfoJo.getJSONObject("userData").getJSONObject("0").getIntValue("battery"));
+            if(beaconInfoJo.getJSONObject("userData").getJSONObject("0") == null){
+                beaconDataJo.put("battery",0);
+            }else{
+                beaconDataJo.put("battery",beaconInfoJo.getJSONObject("userData").getJSONObject("0").getIntValue("battery"));
+            }
             beaconDataJo.put("last_gateway",beaconInfoJo.getString("lastGateway"));
             beaconDataJo.put("user_data_ts",beaconInfoJo.getString("userDataTs"));
             beaconDataJo.put("user_data",beaconInfoJo.getString("userData"));
@@ -85,6 +91,8 @@ public class BeaconServiceImpl implements BeaconService {
             beaconDataJo.put("map_id",beaconInfoJo.getString("mapId"));
             beaconDataJo.put("zone_id",beaconInfoJo.getString("zoneId"));
             beaconDataJo.put("updated_at",dateUtil.transferLongToDate("yyyy-MM-dd HH:mm:ss",beaconInfoJo.getLong("updatedAt")));
+            beaconDataJo.put("up_last_time",beaconInfoJo.getLong("updatedAt"));
+            beaconDataJo.put("up_last_time2",dateUtil.transferLongToDate("yyyy-MM-dd HH:mm:ss",beaconInfoJo.getLong("updatedAt")));
             beaconDataJa.add(beaconDataJo);
         }
         return beaconDataJa;