wanghongbo

直播剪辑上传审片间修改

... ... @@ -24,7 +24,7 @@ public class MaterialSubmitVo {
private Integer backupOrder;
//垫片状态 0-默认 1-当前选中
private String backupStatus;
// 操作类型 0-提交素材库 1-上传审片间
// 操作类型 1-提交素材库 2-上传审片间
@NotBlank(message = "操作类型不能为空")
private String operateType;
//文件路径,绝对路径
... ...
... ... @@ -450,37 +450,37 @@ public class BackupMaterialServiceImpl extends ServiceImpl<BackupMaterialMapper,
backupMaterial.setDuration(materialSubmitVo.getDuration());
backupMaterialMapper.insert(backupMaterial);
if(materialSubmitVo.getOperateType().equals("1")){
}
//添加审片间垫片配置
LambdaQueryWrapper<BackupConfig> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(BackupConfig::getRoomId,materialSubmitVo.getRoomId());
wrapper.eq(BackupConfig::getBackupOrder,materialSubmitVo.getBackupOrder());
BackupConfig backupConfig = backupConfigMapper.selectOne(wrapper);
if(ObjectUtil.isNull(backupConfig)){
backupConfig = new BackupConfig();
backupConfig.setBackupStatus("0");
}
backupConfig.setRoomId(materialSubmitVo.getRoomId());
backupConfig.setBackupId(backupMaterial.getId());
backupConfig.setBackupOrder(materialSubmitVo.getBackupOrder());
backupConfig.setBackupPath(relativePath);
backupConfigMapper.insertOrUpdate(backupConfig);
//对应垫片任务切源(转码平台演示环境已挂载统一存储),请求转码平台修改垫片任务直播源
changeChannelSource(streamTask.getTaskId(), destFilePath);
//判断是否需要修改当前播出流的垫片
if("1".equals(backupConfig.getBackupStatus())){
//切换播出流垫片(主、备)
LambdaQueryWrapper<StreamTask> playWrapper = new LambdaQueryWrapper<>();
playWrapper.eq(StreamTask::getRoomId,materialSubmitVo.getRoomId());
playWrapper.eq(StreamTask::getPlayType,"play");
List<StreamTask> playTasks = streamTaskMapper.selectList(playWrapper);
if(CollectionUtil.isNotEmpty(playTasks)){
playTasks.forEach(playTask -> {
changeBackup(playTask.getTaskId(), destFilePath);
});
//是否需要上传到审片间
if(materialSubmitVo.getOperateType().equals("2")){
//添加审片间垫片配置
LambdaQueryWrapper<BackupConfig> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(BackupConfig::getRoomId,materialSubmitVo.getRoomId());
wrapper.eq(BackupConfig::getBackupOrder,materialSubmitVo.getBackupOrder());
BackupConfig backupConfig = backupConfigMapper.selectOne(wrapper);
if(ObjectUtil.isNull(backupConfig)){
backupConfig = new BackupConfig();
backupConfig.setBackupStatus("0");
}
backupConfig.setRoomId(materialSubmitVo.getRoomId());
backupConfig.setBackupId(backupMaterial.getId());
backupConfig.setBackupOrder(materialSubmitVo.getBackupOrder());
backupConfig.setBackupPath(relativePath);
backupConfigMapper.insertOrUpdate(backupConfig);
//对应垫片任务切源(转码平台演示环境已挂载统一存储),请求转码平台修改垫片任务直播源
changeChannelSource(streamTask.getTaskId(), destFilePath);
//判断是否需要修改当前播出流的垫片
if("1".equals(backupConfig.getBackupStatus())){
//切换播出流垫片(主、备)
LambdaQueryWrapper<StreamTask> playWrapper = new LambdaQueryWrapper<>();
playWrapper.eq(StreamTask::getRoomId,materialSubmitVo.getRoomId());
playWrapper.eq(StreamTask::getPlayType,"play");
List<StreamTask> playTasks = streamTaskMapper.selectList(playWrapper);
if(CollectionUtil.isNotEmpty(playTasks)){
playTasks.forEach(playTask -> {
changeBackup(playTask.getTaskId(), destFilePath);
});
}
}
}
... ...