|
@@ -116,12 +116,20 @@ public class TranscodingServiceImpl implements TranscodingService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public CommonResult<String> transcodingResource(TranscodingResourceReqDTO transcodingResourceReqDTO) {
|
|
public CommonResult<String> transcodingResource(TranscodingResourceReqDTO transcodingResourceReqDTO) {
|
|
|
|
|
+ log.info("===================格式转换开始时间============================>"+ cn.hutool.core.date.DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss"));
|
|
|
// 校验目标文件是否存在,是否是本人的
|
|
// 校验目标文件是否存在,是否是本人的
|
|
|
- String userId = StpLoginUserUtil.getLoginUser().getId();
|
|
|
|
|
|
|
+ String userId = transcodingResourceReqDTO.getUserId();
|
|
|
QueryWrapper<ResourceUserFile> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<ResourceUserFile> queryWrapper = new QueryWrapper<>();
|
|
|
queryWrapper.lambda().eq(ResourceUserFile::getUserFileId, transcodingResourceReqDTO.getUserFileId());
|
|
queryWrapper.lambda().eq(ResourceUserFile::getUserFileId, transcodingResourceReqDTO.getUserFileId());
|
|
|
ResourceUserFile userFile = resourceUserFileMapper.selectOne(queryWrapper);
|
|
ResourceUserFile userFile = resourceUserFileMapper.selectOne(queryWrapper);
|
|
|
|
|
+
|
|
|
|
|
+ //插入转换日志表
|
|
|
|
|
+ insertResourceUserfileConvert(transcodingResourceReqDTO.getUserFileId(), userFile.getFileId(),userFile.getFileName(), userFile.getExtendName(), userFile.getFilePath(), ResourceUserfileConvertEnum.ING.getValue(), userId,null);
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
if (userFile == null || !userFile.getUserId().equals(userId)) {
|
|
if (userFile == null || !userFile.getUserId().equals(userId)) {
|
|
|
|
|
+ System.out.println("文件不存在或不是本人的");
|
|
|
|
|
+ insertResourceUserfileConvert(transcodingResourceReqDTO.getUserFileId(), userFile.getFileId(),userFile.getFileName(), userFile.getExtendName(), userFile.getFilePath(), ResourceUserfileConvertEnum.FAIL.getValue(), userId,"文件不存在或不是本人的");
|
|
|
return CommonResult.error("文件不存在或不是本人的");
|
|
return CommonResult.error("文件不存在或不是本人的");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -132,6 +140,8 @@ public class TranscodingServiceImpl implements TranscodingService {
|
|
|
|
|
|
|
|
ResourceFile fileBean = resourceFileMapper.selectById(userFile.getFileId());
|
|
ResourceFile fileBean = resourceFileMapper.selectById(userFile.getFileId());
|
|
|
if (fileBean == null) {
|
|
if (fileBean == null) {
|
|
|
|
|
+ System.out.println("文件不存在");
|
|
|
|
|
+ insertResourceUserfileConvert(transcodingResourceReqDTO.getUserFileId(), userFile.getFileId(),userFile.getFileName(), userFile.getExtendName(), userFile.getFilePath(), ResourceUserfileConvertEnum.FAIL.getValue(), userId,"文件不存在");
|
|
|
return CommonResult.error("文件不存在");
|
|
return CommonResult.error("文件不存在");
|
|
|
}
|
|
}
|
|
|
if(videoList.contains(userFile.getExtendName())){
|
|
if(videoList.contains(userFile.getExtendName())){
|
|
@@ -148,6 +158,8 @@ public class TranscodingServiceImpl implements TranscodingService {
|
|
|
// 构建转码格式列表
|
|
// 构建转码格式列表
|
|
|
ArrayList<String> formatList = new ArrayList<>();
|
|
ArrayList<String> formatList = new ArrayList<>();
|
|
|
formatList.add(transcodingResourceReqDTO.getFormat());
|
|
formatList.add(transcodingResourceReqDTO.getFormat());
|
|
|
|
|
+
|
|
|
|
|
+ ResourceFile newFile = new ResourceFile();
|
|
|
// 判断视频还是图片
|
|
// 判断视频还是图片
|
|
|
if(transcodingResourceReqDTO.getTranscodingType()!= null)
|
|
if(transcodingResourceReqDTO.getTranscodingType()!= null)
|
|
|
{
|
|
{
|
|
@@ -158,21 +170,22 @@ public class TranscodingServiceImpl implements TranscodingService {
|
|
|
videoConverter.convertAndUpload(fileBean.getFileUrl(), fileBean.getFileId(), new String[]{transcodingResourceReqDTO.getFormat()});
|
|
videoConverter.convertAndUpload(fileBean.getFileUrl(), fileBean.getFileId(), new String[]{transcodingResourceReqDTO.getFormat()});
|
|
|
//根据文件id修改预览地址
|
|
//根据文件id修改预览地址
|
|
|
if(videoList.contains(userFile.getExtendName())||wordList.contains(userFile.getExtendName())){
|
|
if(videoList.contains(userFile.getExtendName())||wordList.contains(userFile.getExtendName())){
|
|
|
- ResourceFile newFile = new ResourceFile();
|
|
|
|
|
|
|
+ newFile = new ResourceFile();
|
|
|
newFile.setFileId(fileBean.getFileId());
|
|
newFile.setFileId(fileBean.getFileId());
|
|
|
- newFile.setPreviewFileUrl("converted/" + fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
|
|
|
|
|
+ newFile.setPreviewFileUrl("converted/" + getCurrentDate()+"/"+fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
|
resourceFileMapper.updateById(newFile);
|
|
resourceFileMapper.updateById(newFile);
|
|
|
}
|
|
}
|
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
- return CommonResult.error("格式转换失败");
|
|
|
|
|
|
|
+ System.out.println("格式转换失败");
|
|
|
|
|
+ insertResourceUserfileConvert(transcodingResourceReqDTO.getUserFileId(), userFile.getFileId(),userFile.getFileName(), userFile.getExtendName(), newFile.getPreviewFileUrl(), ResourceUserfileConvertEnum.FAIL.getValue(), userId,ex.getMessage());
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
} else if (transcodingResourceReqDTO.getTranscodingType() == 1) {
|
|
} else if (transcodingResourceReqDTO.getTranscodingType() == 1) {
|
|
|
// 转码文档
|
|
// 转码文档
|
|
|
// pdf doc docx ppt pptx xls xlsx
|
|
// pdf doc docx ppt pptx xls xlsx
|
|
|
// doc转docx,ppt转pptx,xls转xlsx 所有均转pdf
|
|
// doc转docx,ppt转pptx,xls转xlsx 所有均转pdf
|
|
|
// 判断目标格式
|
|
// 判断目标格式
|
|
|
-
|
|
|
|
|
try {
|
|
try {
|
|
|
if ("pdf".equals(transcodingResourceReqDTO.getFormat())) {
|
|
if ("pdf".equals(transcodingResourceReqDTO.getFormat())) {
|
|
|
pdfUtils.convertToPdf(fileBean.getFileUrl(), fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
pdfUtils.convertToPdf(fileBean.getFileUrl(), fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
@@ -180,27 +193,32 @@ public class TranscodingServiceImpl implements TranscodingService {
|
|
|
officeConverter.convertAndUpload(fileBean.getFileUrl(), fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
officeConverter.convertAndUpload(fileBean.getFileUrl(), fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
|
}
|
|
}
|
|
|
//根据文件id修改预览地址
|
|
//根据文件id修改预览地址
|
|
|
- ResourceFile newFile = new ResourceFile();
|
|
|
|
|
|
|
+ newFile = new ResourceFile();
|
|
|
newFile.setFileId(fileBean.getFileId());
|
|
newFile.setFileId(fileBean.getFileId());
|
|
|
if(videoList.contains(userFile.getExtendName())||wordList.contains(userFile.getExtendName())){
|
|
if(videoList.contains(userFile.getExtendName())||wordList.contains(userFile.getExtendName())){
|
|
|
- newFile.setPreviewFileUrl("converted/" + fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
|
|
|
|
|
+ newFile.setPreviewFileUrl("converted/" +getCurrentDate()+"/"+fileBean.getFileId() + "." + transcodingResourceReqDTO.getFormat());
|
|
|
}else{
|
|
}else{
|
|
|
newFile.setPreviewFileUrl(fileBean.getFileUrl());
|
|
newFile.setPreviewFileUrl(fileBean.getFileUrl());
|
|
|
}
|
|
}
|
|
|
resourceFileMapper.updateById(newFile);
|
|
resourceFileMapper.updateById(newFile);
|
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
|
log.error("格式转换:"+ex.getMessage());
|
|
log.error("格式转换:"+ex.getMessage());
|
|
|
- return CommonResult.error("格式转换失败");
|
|
|
|
|
|
|
+ System.out.println("格式转换失败");
|
|
|
|
|
+ insertResourceUserfileConvert(transcodingResourceReqDTO.getUserFileId(), userFile.getFileId(),userFile.getFileName(), userFile.getExtendName(), newFile.getPreviewFileUrl(), ResourceUserfileConvertEnum.FAIL.getValue(), userId,ex.getMessage());
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
else
|
|
else
|
|
|
{
|
|
{
|
|
|
- ResourceFile newFile = new ResourceFile();
|
|
|
|
|
|
|
+ newFile = new ResourceFile();
|
|
|
newFile.setFileId(fileBean.getFileId());
|
|
newFile.setFileId(fileBean.getFileId());
|
|
|
newFile.setPreviewFileUrl(fileBean.getFileUrl());
|
|
newFile.setPreviewFileUrl(fileBean.getFileUrl());
|
|
|
resourceFileMapper.updateById(newFile);
|
|
resourceFileMapper.updateById(newFile);
|
|
|
}
|
|
}
|
|
|
|
|
+ insertResourceUserfileConvert(transcodingResourceReqDTO.getUserFileId(), userFile.getFileId(),userFile.getFileName(), userFile.getExtendName(), newFile.getPreviewFileUrl(), ResourceUserfileConvertEnum.SUCCESS.getValue(), userId,null);
|
|
|
|
|
+ log.info("格式转换成功");
|
|
|
|
|
+ log.info("===================格式转换结束============================>"+ cn.hutool.core.date.DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss"));
|
|
|
return CommonResult.ok("格式转换成功");
|
|
return CommonResult.ok("格式转换成功");
|
|
|
}
|
|
}
|
|
|
|
|
|