refactor(video): 移除视频处理相关功能模块
- 删除 RabbitMQ 配置类及相关队列、交换机定义 - 移除视频控制器及其分片上传、合并处理接口 - 删除视频文件上传服务接口及实现类 - 移除视频处理服务接口及实现类 - 删除相关的 DTO 数据传输对象类 - 清理配置文件中 RabbitMQ 连接信息
This commit is contained in:
@@ -1,73 +0,0 @@
|
||||
package cn.nopj.chaos_api.controller;
|
||||
|
||||
|
||||
import cn.nopj.chaos_api.dto.ProcessVideoPath;
|
||||
import cn.nopj.chaos_api.model.ApiResult;
|
||||
import cn.nopj.chaos_api.service.VideoFileUploadService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/video")
|
||||
@Slf4j
|
||||
public class VideoController {
|
||||
|
||||
@Autowired
|
||||
private VideoFileUploadService videoFileUploadService;
|
||||
|
||||
/**
|
||||
* 初始化分片上传任务
|
||||
* @param fileInfo 包含文件名(fileName)和总大小(totalSize)
|
||||
* @return 返回 uploadId 和每个分片的大小
|
||||
*/
|
||||
@PostMapping("/init")
|
||||
public ApiResult<?> initUpload(@RequestBody Map<String, Object> fileInfo) {
|
||||
log.info("初始化上传任务: {}", fileInfo);
|
||||
String fileName = fileInfo.get("fileName").toString();
|
||||
long totalSize = Long.parseLong(fileInfo.get("totalSize").toString());
|
||||
return ApiResult.success(videoFileUploadService.initUpload(fileName, totalSize));
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传分片
|
||||
* @param chunk 分片文件
|
||||
* @param uploadId 上传任务ID
|
||||
* @param chunkIndex 分片序号 (从0开始)
|
||||
*/
|
||||
@PostMapping("/chunk")
|
||||
|
||||
public ApiResult<?> uploadChunk(@RequestParam("chunk") MultipartFile chunk,
|
||||
@RequestParam("uploadId") String uploadId,
|
||||
@RequestParam("chunkIndex") int chunkIndex) throws IOException {
|
||||
videoFileUploadService.uploadChunk(uploadId, chunkIndex, chunk.getBytes());
|
||||
return ApiResult.success("分片 " + chunkIndex + " 上传成功");
|
||||
}
|
||||
|
||||
/**
|
||||
* 合并文件并触发异步处理
|
||||
* @param params 包含 uploadId 和 fileName
|
||||
*/
|
||||
@PostMapping("/merge")
|
||||
public ApiResult<?> mergeAndProcess(@RequestBody Map<String, String> params) throws IOException {
|
||||
String uploadId = params.get("uploadId");
|
||||
String fileName = params.get("fileName");
|
||||
videoFileUploadService.mergeAndProcess(uploadId, fileName);
|
||||
return ApiResult.success("文件上传成功,已加入后台处理队列。");
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理视频
|
||||
* @param processVideoPath 待处理的视频路径
|
||||
*/
|
||||
@PostMapping("/process")
|
||||
public ApiResult<?> processVideo(@RequestBody ProcessVideoPath processVideoPath) throws IOException{
|
||||
videoFileUploadService.pushResultToMQ(processVideoPath.getPath());
|
||||
return ApiResult.success("视频处理任务已加入队列");
|
||||
}
|
||||
}
|
||||
@@ -15,11 +15,6 @@ spring:
|
||||
min-idle: 5
|
||||
max-active: 20
|
||||
max-wait: 60000
|
||||
rabbitmq:
|
||||
host: 10.91.3.24
|
||||
port: 5672
|
||||
username: chaos
|
||||
password: zx123456..
|
||||
servlet:
|
||||
multipart:
|
||||
max-file-size: 100GB
|
||||
|
||||
Reference in New Issue
Block a user