diff --git a/web/src/main/java/com/leaper/web/controller/CameraControlController.java b/web/src/main/java/com/leaper/web/controller/CameraControlController.java index ba5599f..8328c41 100644 --- a/web/src/main/java/com/leaper/web/controller/CameraControlController.java +++ b/web/src/main/java/com/leaper/web/controller/CameraControlController.java @@ -1,5 +1,6 @@ package com.leaper.web.controller; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.leaper.filter.pojo.LicenseHandler; import com.leaper.web.lib.CameraConnMap; import com.leaper.web.lib.CameraControlLoginModule; @@ -22,6 +23,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; +import java.util.List; @Api(value = "CameraControl",tags = "球机控制管理") @RestController @@ -361,6 +363,29 @@ public class CameraControlController { return Result.success(); } + + @PostMapping("/mp4/record") + @ApiOperation(value = "录像") + public Result record(@RequestBody CameraRecord cameraRecord) { + checkLogin(cameraRecord.getCameraId()); + String url ="work\\"+cameraRecord.getStartTime().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"))+".mp4"; + cameraRecordMapper.insert(cameraRecord); + cameraControlModule.downloadMp4(cameraRecord.getCameraId(),"D:\\"+url, cameraRecord.getStartTime(),cameraRecord.getEndTime()); + return Result.success("api\\"+url); + } + + @PostMapping("/mp4/recordList") + @ApiOperation(value = "录像列表") + public Result> recordList(@RequestBody CameraRecord cameraRecord) { + List cameraRecordList = cameraRecordMapper.selectList(new QueryWrapper() + .eq("camera_id", cameraRecord.getCameraId()) + .eq(cameraRecord.getType() != null,"type", cameraRecord.getType()) + .le(cameraRecord.getEndTime() != null, "end_Time",cameraRecord.getEndTime()) + .ge(cameraRecord.getStartTime() != null,"start_time" ,cameraRecord.getStartTime()) + ); + return Result.success(cameraRecordList); + } + @Resource private CameraService cameraService; diff --git a/web/src/main/java/com/leaper/web/entity/CameraRecord.java b/web/src/main/java/com/leaper/web/entity/CameraRecord.java new file mode 100644 index 0000000..e3451b3 --- /dev/null +++ b/web/src/main/java/com/leaper/web/entity/CameraRecord.java @@ -0,0 +1,25 @@ +package com.leaper.web.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +@TableName("camera_record") +public class CameraRecord { + @TableId(type = IdType.AUTO) + private Integer id; + private Integer cameraId; + private Integer type; + + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTime; + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss") + private LocalDateTime endTime; + private String path; + +} diff --git a/web/src/main/java/com/leaper/web/mapper/CameraRecordMapper.java b/web/src/main/java/com/leaper/web/mapper/CameraRecordMapper.java new file mode 100644 index 0000000..72d7e6c --- /dev/null +++ b/web/src/main/java/com/leaper/web/mapper/CameraRecordMapper.java @@ -0,0 +1,7 @@ +package com.leaper.web.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.leaper.web.entity.CameraRecord; + +public interface CameraRecordMapper extends BaseMapper { +}