Browse Source

下载视频 fix bug

master
刘力 2 years ago
parent
commit
1d42542cee
  1. 2
      storeroom/src/main/java/com/storeroom/modules/device/controller/DeviceController.java
  2. 15
      storeroom/src/main/java/com/storeroom/modules/device/controller/VideosController.java
  3. 11
      storeroom/src/main/java/com/storeroom/modules/device/service/CameraInfoService.java
  4. 20
      storeroom/src/main/java/com/storeroom/modules/device/service/dto/CameraInfoCrieria.java
  5. 13
      storeroom/src/main/java/com/storeroom/modules/device/service/impl/CameraInfoServiceImpl.java
  6. 6
      storeroom/src/main/java/com/storeroom/modules/storeroom3d/config/common/VideoClient.java

2
storeroom/src/main/java/com/storeroom/modules/device/controller/DeviceController.java

@ -180,8 +180,6 @@ public class DeviceController {
String fileName = deviceCamerBindService.downloadVideo(alarmDeseCaBinetLog.getI64Ts(), item.getDeviceInfoId(), item.getId());
cameraInfo.setDownloadLink(fileName);
cameraInfoList.add(cameraInfo);
});
cameraInfoService.createAll(cameraInfoList);
}

15
storeroom/src/main/java/com/storeroom/modules/device/controller/VideoMonitoringController.java → storeroom/src/main/java/com/storeroom/modules/device/controller/VideosController.java

@ -2,7 +2,9 @@ package com.storeroom.modules.device.controller;
import com.storeroom.annotaion.rest.AnonymousGetMapping;
import com.storeroom.modules.device.service.CameraInfoService;
import com.storeroom.modules.device.service.VideoMonitoringService;
import com.storeroom.modules.device.service.dto.CameraInfoCrieria;
import com.storeroom.modules.device.service.dto.VideoMonitoringCrieria;
import com.storeroom.utils.ApiResponse;
import io.swagger.annotations.Api;
@ -15,14 +17,17 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RequiredArgsConstructor
@Api(tags = "视频监控")
@RequestMapping("/api/videomonitorng/")
public class VideoMonitoringController {
@RequestMapping("/api/videos/")
public class VideosController {
private final VideoMonitoringService videoMonitoringService;
private final CameraInfoService cameraInfoService;
@ApiOperation("视频监控列表")
@AnonymousGetMapping("list")
public ApiResponse<Object> getList(VideoMonitoringCrieria crieria, Pageable pageable) {
return ApiResponse.success(videoMonitoringService.queryAll(crieria, pageable));
public ApiResponse<Object> getList(CameraInfoCrieria crieria, Pageable pageable) {
return ApiResponse.success(cameraInfoService.queryAll(crieria, pageable));
}
}

11
storeroom/src/main/java/com/storeroom/modules/device/service/CameraInfoService.java

@ -1,6 +1,9 @@
package com.storeroom.modules.device.service;
import com.storeroom.modules.device.domain.CameraInfo;
import com.storeroom.modules.device.service.dto.CameraInfoCrieria;
import com.storeroom.modules.device.service.dto.VideoMonitoringCrieria;
import org.springframework.data.domain.Pageable;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@ -22,4 +25,12 @@ public interface CameraInfoService {
*/
void createAll(List<CameraInfo> cameraInfoList);
/**
* 查询全部
* @param crieria
* @param pageable
* @return
*/
Object queryAll(CameraInfoCrieria crieria, Pageable pageable);
}

20
storeroom/src/main/java/com/storeroom/modules/device/service/dto/CameraInfoCrieria.java

@ -0,0 +1,20 @@
package com.storeroom.modules.device.service.dto;
import com.storeroom.annotaion.Query;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
@Data
public class CameraInfoCrieria implements Serializable {
@Query
private String alarmEvent;
@Query(type = Query.Type.BETWEEN)
private List<Timestamp> createTime;
}

13
storeroom/src/main/java/com/storeroom/modules/device/service/impl/CameraInfoServiceImpl.java

@ -1,9 +1,16 @@
package com.storeroom.modules.device.service.impl;
import com.storeroom.modules.device.domain.CameraInfo;
import com.storeroom.modules.device.domain.VideoMonitoring;
import com.storeroom.modules.device.repository.CameraInfoRepository;
import com.storeroom.modules.device.service.CameraInfoService;
import com.storeroom.modules.device.service.dto.CameraInfoCrieria;
import com.storeroom.modules.device.service.dto.VideoMonitoringCrieria;
import com.storeroom.utils.PageUtil;
import com.storeroom.utils.QueryHelp;
import lombok.RequiredArgsConstructor;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
@ -28,5 +35,11 @@ public class CameraInfoServiceImpl implements CameraInfoService {
cameraInfoRepository.saveAll(cameraInfoList);
}
@Override
public Object queryAll(CameraInfoCrieria crieria, Pageable pageable) {
Page<CameraInfo> page = cameraInfoRepository.findAll((root, query, criteriaBuilder) -> QueryHelp.getPredicate(root, crieria, criteriaBuilder), pageable);
return PageUtil.toPage(page);
}
}

6
storeroom/src/main/java/com/storeroom/modules/storeroom3d/config/common/VideoClient.java

@ -331,6 +331,12 @@ public class VideoClient {
System.err.println("NetFileDownload:DOWNLOAD_CMD_TIMESPAN fail! iRet=" + iRet);
}
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return fileName;
}
}
Loading…
Cancel
Save