派生自 projectDept/qhighschool

EricsHu
2023-06-25 bc835f7b8d4ab951999ff7a08bf62d18daa0461e
src/main/java/com/qxueyou/scc/teach/res/service/impl/resitem/ResItemVideoService.java
@@ -4,6 +4,8 @@
import java.io.File;
import java.util.Date;
import com.obs.services.ObsClient;
import com.obs.services.model.ObsObject;
import com.qxueyou.scc.sys.utils.VideoUtil;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils;
@@ -39,8 +41,6 @@
    @Autowired
    ICacheService cacheService;
    @Value("${scc.resRootPath}")
    String resRootPath;
    @Override
    public String add(String fileId, String name) {
@@ -52,7 +52,7 @@
            TraceUtils.setCreateTrace(resVideo);
        try {
            resVideo.setFileId(fileId);
            resVideo.setPlayTime((int) VideoUtil.getMp4Duration(resRootPath +"/"+ file.getPath()));
            resVideo.setPlayTime((int) VideoUtil.getMp4Duration(file.getPath()));
            resVideo.setName(name);
            resVideo.setMediaVideoId(mediaVideoId);
            resVideo.setStatus(ResItemVideo.STATUS_LINEUP);
@@ -83,7 +83,7 @@
        try {
            video.setDeleteFlag(false);
            video.setPlayTime((int) VideoUtil.getMp4Duration(resRootPath +"/"+ file.getPath()));
            video.setPlayTime((int) VideoUtil.getMp4Duration(file.getPath()));
            video.setName(file.getFileName());
            video.setOrigUrl(file.getPath());
            video.setStatus(MediaVideo.STATUS_LINEUP);
@@ -157,43 +157,43 @@
    /**
     * 定时器转码成功后 同步更新ResItemVideo的状态
     */
    @Scheduled(cron = "0/2 * * * * ?") // 每2秒执行一次
    public void doTimer() {
        String mediaVideoId = cacheService.lstLeftPop(RES_VIDEO_CONVER_LST);
        if (StringUtils.isBlank(mediaVideoId)) {
            return;
        }
        MediaVideo mediaVideo = read(MediaVideo.class, mediaVideoId);
        if (mediaVideo.getStatus() == MediaVideo.STATUS_DRAFT) {
            if (mediaVideo.getType().equals("video")) {
                ResItemVideo resItemVideo = findUnique(
                        "from ResItemVideo where deleteFlag is false and mediaVideoId = ?",
                        CollectionUtils.newList(mediaVideoId), ResItemVideo.class);
                resItemVideo.setStatus(ResItemVideo.STATUS_DRAFT);
                TraceUtils.setUpdateTrace(resItemVideo);
                resItemVideo.setVideoSeconds(mediaVideo.getPlayTime());
                save(resItemVideo);
                cacheService.lstRightPush(ResService.RES_TOUPDATE_CONVER_STATUS_LST, resItemVideo.getVideoId());// 将转码完成后的文件id放入缓存。
                return;
            } else if (mediaVideo.getType().equals("audio")) {
                ResItemAudio resItemAudio = findUnique(
                        "from ResItemAudio where deleteFlag is false and mediaVideoId = ?",
                        CollectionUtils.newList(mediaVideoId), ResItemAudio.class);
                resItemAudio.setStatus(ResItemVideo.STATUS_DRAFT);
                TraceUtils.setUpdateTrace(resItemAudio);
                resItemAudio.setSeconds(mediaVideo.getPlayTime());
                save(resItemAudio);
                cacheService.lstRightPush(ResService.RES_TOUPDATE_CONVER_STATUS_LST, resItemAudio.getAudioId());// 将转码完成后的文件id放入缓存。
                return;
            }
        }
        cacheService.lstRightPush(RES_VIDEO_CONVER_LST, mediaVideoId);
    }
//    @Scheduled(cron = "0/2 * * * * ?") // 每2秒执行一次
//    public void doTimer() {
//
//        String mediaVideoId = cacheService.lstLeftPop(RES_VIDEO_CONVER_LST);
//
//        if (StringUtils.isBlank(mediaVideoId)) {
//            return;
//        }
//
//        MediaVideo mediaVideo = read(MediaVideo.class, mediaVideoId);
//        if (mediaVideo.getStatus() == MediaVideo.STATUS_DRAFT) {
//            if (mediaVideo.getType().equals("video")) {
//                ResItemVideo resItemVideo = findUnique(
//                        "from ResItemVideo where deleteFlag is false and mediaVideoId = ?",
//                        CollectionUtils.newList(mediaVideoId), ResItemVideo.class);
//                resItemVideo.setStatus(ResItemVideo.STATUS_DRAFT);
//                TraceUtils.setUpdateTrace(resItemVideo);
//                resItemVideo.setVideoSeconds(mediaVideo.getPlayTime());
//                save(resItemVideo);
//
//                cacheService.lstRightPush(ResService.RES_TOUPDATE_CONVER_STATUS_LST, resItemVideo.getVideoId());// 将转码完成后的文件id放入缓存。
//                return;
//            } else if (mediaVideo.getType().equals("audio")) {
//                ResItemAudio resItemAudio = findUnique(
//                        "from ResItemAudio where deleteFlag is false and mediaVideoId = ?",
//                        CollectionUtils.newList(mediaVideoId), ResItemAudio.class);
//                resItemAudio.setStatus(ResItemVideo.STATUS_DRAFT);
//                TraceUtils.setUpdateTrace(resItemAudio);
//                resItemAudio.setSeconds(mediaVideo.getPlayTime());
//                save(resItemAudio);
//
//                cacheService.lstRightPush(ResService.RES_TOUPDATE_CONVER_STATUS_LST, resItemAudio.getAudioId());// 将转码完成后的文件id放入缓存。
//                return;
//            }
//
//        }
//        cacheService.lstRightPush(RES_VIDEO_CONVER_LST, mediaVideoId);
//
//    }
}