Commit 77a43078 authored by liqin's avatar liqin 💬

bug fixed

parent f0453ff0
......@@ -7,7 +7,8 @@ public enum FileCatEnum {
EXHIBITION_BOARD_VIDEO("EXHIBITION_BOARD_VIDEO", "展板视频"),
EXHIBITION_BOARD_DATUM("EXHIBITION_BOARD_DATUM", "展板参考资料"),
LEARNING_CONTENT("LEARNING_CONTENT", "学习内容"),
LEARNING_PROJECT("LEARNING_PROJECT", "学习项目");
LEARNING_PROJECT("LEARNING_PROJECT", "学习项目"),
VIEWING_INTERACTION("VIEWING_INTERACTION", "观影互动");
private String cat;
private String name;
......
......@@ -319,12 +319,12 @@ public class FileUploadController extends BaseController {
}
@ApiImplicitParams({
@ApiImplicitParam(name = "file", value = "视频文件", paramType = "form", dataType = "__file", collectionFormat = "array", allowMultiple = true)
@ApiImplicitParam(name = "file", value = "视频文件", paramType = "form", dataType = "__file", collectionFormat = "array", allowMultiple = true, required = true)
})
@PostMapping(value = "/video/upload", headers = "content-type=multipart/form-data", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@RequiresPermissions("video:upload")
@ApiOperation(value = "视频上传", notes = "视频上传")
public Map<String, Object> uploadVideo(@RequestPart(value = "file", required = true) MultipartFile[] files) throws IOException {
@PostMapping(value = "/video/content/upload", headers = "content-type=multipart/form-data", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@RequiresPermissions("file:video:content:upload")
@ApiOperation(value = "展板视频上传", notes = "展板视频上传")
public Map<String, Object> uploadContentVideo(@RequestPart("file") MultipartFile[] files) throws IOException {
if (files == null || files.length == 0) {
throw new InterfaceException(RESPONSE_CODE_ENUM.SERVER_ERROR.getResultCode(), "没有文件可供上传");
}
......@@ -401,6 +401,83 @@ public class FileUploadController extends BaseController {
handleResult.setFileName(originalFilename);
handleResult.setFileType(FileTypeEnum.VIDEO.getName());
handleResult.setHandleResult(HANDLE_STATUS_ENUM.SUCCESS.getName());
handleResult.setDescription("");
successCount++;
} else {
handleResult.setFileUrl("");
handleResult.setHandleResult("上传失败");
handleResult.setDescription("文件" + originalFilename + "格式不支持");
failureCount++;
}
// 设置处理的业务表信息
handleList.add(handleResult);
}
BatchUploadResVO batchUploadResVO = new BatchUploadResVO();
batchUploadResVO.setFailureCount(failureCount);
batchUploadResVO.setSuccessCount(successCount);
batchUploadResVO.setTotal(files.length);
batchUploadResVO.setHandleList(handleList);
batchUploadResVO.setFileList(fileList);
return getResult(batchUploadResVO);
}
@ApiImplicitParams({
@ApiImplicitParam(name = "file", value = "视频文件", paramType = "form", dataType = "__file", collectionFormat = "array", allowMultiple = true, required = true)
})
@PostMapping(value = "/video/upload", headers = "content-type=multipart/form-data", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@RequiresPermissions("file:video:upload")
@ApiOperation(value = "多视频上传", notes = "多视频上传")
public Map<String, Object> uploadVideo(@RequestPart("file") MultipartFile[] files) throws IOException {
if (files == null || files.length == 0) {
throw new InterfaceException(RESPONSE_CODE_ENUM.SERVER_ERROR.getResultCode(), "没有文件可供上传");
}
int successCount = 0;
int failureCount = 0;
List<BatchUploadResVO.HandleResult> handleList = new ArrayList<>();
List<Asset> fileList = new ArrayList<>();
for (MultipartFile file : files) {
// 当前维度表下线结果
BatchUploadResVO.HandleResult handleResult = new BatchUploadResVO.HandleResult();
// 原始文件名
String originalFilename = file.getOriginalFilename();
if (StringUtils.isBlank(originalFilename)) {
handleResult.setFileName("");
handleResult.setFileType(FileTypeEnum.VIDEO.getName());
handleResult.setFileUrl("");
handleResult.setHandleResult(HANDLE_STATUS_ENUM.FAILURE.getName());
handleResult.setDescription("文件名为空");
failureCount++;
continue;
}
String extName = FilenameUtils.getExtension(originalFilename);
boolean anyMatch = Arrays.stream(VIDEO_TYPE).anyMatch(s -> Objects.equals(s, extName.toUpperCase()));
if (anyMatch) {
String language = null;
final Set<MetaData> metaDataSet = new HashSet<>();
metaDataSet.add(new MetaData("fileName", originalFilename));
metaDataSet.add(new MetaData("fileType", FileTypeEnum.VIDEO.name()));
String fileUrl = FastDFSUtils.uploadFile(file.getInputStream(), file.getSize(), originalFilename, metaDataSet);
final FileInfo fileInfo = FastDFSUtils.getFileInfo(fileUrl);
final long fileSize = fileInfo.getFileSize();
final Asset asset = Asset.builder()
.fileName(originalFilename)
.fileExtName(extName)
.fileType(FileTypeEnum.VIDEO.name())
.fileSize(fileSize)
.fileUrl(fileUrl)
.fileCat(FileCatEnum.VIEWING_INTERACTION.name())
.language(language)
.build();
this.assetService.save(asset);
fileList.add(asset);
handleResult.setFileUrl(fileUrl);
handleResult.setFileName(originalFilename);
handleResult.setFileType(FileTypeEnum.VIDEO.getName());
handleResult.setHandleResult(HANDLE_STATUS_ENUM.SUCCESS.getName());
handleResult.setDescription("");
successCount++;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment