liubing 3 years ago
parent
commit
38b09a4bb1

+ 44 - 7
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/YsDeviceService.java

@ -404,25 +404,62 @@ public class YsDeviceService {
        }
        HttpEntity<JSONObject> response = httpClientUtil.iotAssesTokenPostHttp(YsConfig.deviceVideoTimeList,param,HttpMethod.POST);
        JSONObject responseBody = response.getBody();
        JSONArray timeTmp = new JSONArray();
        if (responseBody.getInteger("code")==200){
            JSONArray tmp = responseBody.getJSONArray("data");
            if (tmp==null){
            if (null==tmp||0==tmp.size()){
                result.put(ResponseContant.resultFlag,ResponseContant.fail);
                result.put(ResponseContant.resultMsg,"未获取到当天录像信息");
                return result;
            }
            tmp.sort(Comparator.comparing(obj -> Long.parseLong(((LinkedHashMap) obj).get("startTime").toString())));
            LinkedHashMap mergeTmp = null;
            for (int i=0;i<tmp.size();i++){
                LinkedHashMap mapTmp = tmp.getObject(i,LinkedHashMap.class);
                Long startTimeStr =  Long.parseLong(mapTmp.get("startTime").toString()) ;
                Long endTimeStr = Long.parseLong(mapTmp.get("endTime").toString()) ;
                Date date = new Date(startTimeStr);
                mapTmp.put("startTimeDate",DateUtil.dateToStrLong(date));
                date = new Date(endTimeStr);
                mapTmp.put("endTimeDate",DateUtil.dateToStrLong(date));
                String startTimeDate = DateUtil.dateToStrLong(new Date(startTimeStr));
                String endTimeDate = DateUtil.dateToStrLong(new Date(endTimeStr));
                Long videoLong = (endTimeStr-startTimeStr)/1000;
                if (null==mergeTmp){
                    mergeTmp = new LinkedHashMap();
                    mergeTmp.put("recType",mapTmp.get("recType"));
                    mergeTmp.put("startTime",mapTmp.get("startTime"));
                    mergeTmp.put("endTime",mapTmp.get("endTime"));
                    mergeTmp.put("startTimeDate",startTimeDate);
                    mergeTmp.put("endTimeDate",endTimeDate);
                    mergeTmp.put("createTime",mapTmp.get("createTime"));
                    mergeTmp.put("deviceSerial",mapTmp.get("deviceSerial"));
                    mergeTmp.put("channelNo",mapTmp.get("channelNo"));
                    mergeTmp.put("videoLong",videoLong);
                    continue;
                }
                if (startTimeStr==Long.parseLong(mergeTmp.get("endTime").toString())){//时间区间相连
                    startTimeStr =  Long.parseLong(mergeTmp.get("startTime").toString()) ;
                    Long videoLongTmp = Long.parseLong(mergeTmp.get("videoLong").toString());
                    videoLong = (endTimeStr-startTimeStr)/1000;
                    mergeTmp.put("endTime",mapTmp.get("endTime"));
                    mergeTmp.put("endTimeDate",endTimeDate);
                    mergeTmp.put("videoLong",videoLong+videoLongTmp);
                }else{
                    timeTmp.add(mergeTmp);
                    mergeTmp = new LinkedHashMap();
                    mergeTmp.put("recType",mapTmp.get("recType"));
                    mergeTmp.put("startTime",mapTmp.get("startTime"));
                    mergeTmp.put("endTime",mapTmp.get("endTime"));
                    mergeTmp.put("startTimeDate",startTimeDate);
                    mergeTmp.put("endTimeDate",endTimeDate);
                    mergeTmp.put("createTime",mapTmp.get("createTime"));
                    mergeTmp.put("deviceSerial",mapTmp.get("deviceSerial"));
                    mergeTmp.put("channelNo",mapTmp.get("channelNo"));
                    mergeTmp.put("videoLong",videoLong);
                }
                if (i==tmp.size()-1){
                    timeTmp.add(mergeTmp);
                }
            }
            result.put(ResponseContant.resultFlag,ResponseContant.success);
            result.put(ResponseContant.resultMsg,tmp);
            result.put(ResponseContant.resultMsg,timeTmp);
        }else {
            result.put(ResponseContant.resultFlag,ResponseContant.fail);
            result.put(ResponseContant.resultMsg,responseBody.getString("msg"));
@ -634,7 +671,7 @@ public class YsDeviceService {
        if (enable!=null){
            param.add("enable",enable+"");
        }
        HttpEntity<JSONObject> response = httpClientUtil.iotAssesTokenPostHttp(YsConfig.videoList2,param,HttpMethod.POST);
        HttpEntity<JSONObject> response = httpClientUtil.iotAssesTokenPostHttp(YsConfig.fullDayVideo,param,HttpMethod.POST);
        JSONObject responseBody = response.getBody();
        if (responseBody.getInteger("code")==200){
            result.put(ResponseContant.resultFlag,ResponseContant.success);