admin
2020-10-13 fc7a6634496066fe45dca8ea9832bdd2f7341db4
src/main/java/com/yeshi/buwan/util/SpringContext.java
@@ -1,16 +1,20 @@
package com.yeshi.buwan.util;
import com.yeshi.buwan.dao.juhe.iqiyi.IqiyiAlbum2Dao;
import com.yeshi.buwan.domain.VideoInfo;
import com.yeshi.buwan.dto.mq.FunTVAlbum2MQMsg;
import com.yeshi.buwan.dto.mq.IqiyiAlbum2MQMsg;
import com.yeshi.buwan.dto.mq.SolrVideoMQMsg;
import com.yeshi.buwan.funtv.FunTVUtil;
import com.yeshi.buwan.funtv.entity.FunTVAlbum2;
import com.yeshi.buwan.funtv.entity.FunTVVideo2;
import com.yeshi.buwan.iqiyi.entity.IqiyiAlbum2;
import com.yeshi.buwan.iqiyi.util.IqiyiUtil2;
import com.yeshi.buwan.service.imp.JobThreadExecutorServiceImpl;
import com.yeshi.buwan.service.imp.VideoInfoService;
import com.yeshi.buwan.service.manager.SolrDataManager;
import com.yeshi.buwan.service.inter.juhe.FunTV2Service;
import com.yeshi.buwan.service.inter.juhe.Iqiyi2Service;
import com.yeshi.buwan.service.manager.SolrAlbumDataManager;
import com.yeshi.buwan.util.mq.CMQManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.stereotype.Component;
@@ -19,27 +23,30 @@
import java.util.List;
/**
 * 系统初始化
 * 系统初始化
 *
 * @author Administrator
 */
@Component
public class SpringContext implements ApplicationListener<ContextRefreshedEvent> {
    @Resource
    private VideoInfoService videoInfoService;
    @Resource
    private SolrDataManager solrDataManager;
    private SolrAlbumDataManager solrDataManager;
    @Resource
    private IqiyiUtil2 iqiyiUtil2;
    private Iqiyi2Service iqiyi2Service;
    @Resource
    private IqiyiAlbum2Dao iqiyiAlbum2Dao;
    private FunTV2Service funTV2Service;
    private static boolean isInited = false;
    private final static Logger logger = LoggerFactory.getLogger(SpringContext.class);
    public void onApplicationEvent(ContextRefreshedEvent arg0) {
        if (arg0.getApplicationContext().getParent() != null) {
@@ -51,7 +58,7 @@
    private synchronized void onApplication(ContextRefreshedEvent context) {
        if (!isInited) {
            isInited = true;
            System.out.println("系统初始化成功");
            System.out.println("系统初始化成功");
            init();
        }
    }
@@ -59,6 +66,7 @@
    private void init() {
        doSolrJob();
        doAddIqiyi2Video();
        doAddFunTV2Video();
    }
    private void doSolrJob() {
@@ -70,8 +78,12 @@
                    for (SolrVideoMQMsg solrVideo : solrMsgList) {
                        try {
                            VideoInfo videoInfo = videoInfoService.getVideoInfo(solrVideo.getId());
                            if (videoInfo != null)
                                solrDataManager.saveOrUpdate(videoInfo);
                            if (videoInfo != null) {
                                if ("1".equalsIgnoreCase(videoInfo.getShow()))
                                    solrDataManager.saveOrUpdate(videoInfo);
                                else
                                    solrDataManager.deleteById(videoInfo.getId());
                            }
                            CMQManager.getInstance().deleteSolrMsg(solrVideo.getHandler());
                        } catch (Exception e) {
@@ -86,18 +98,19 @@
        new JobThreadExecutorServiceImpl().run(new Runnable() {
            @Override
            public void run() {
                List<IqiyiAlbum2MQMsg> iqiyiAlbumMsgList = CMQManager.getInstance().consumeAlbumUpdateMsg(16);
                List<IqiyiAlbum2MQMsg> iqiyiAlbumMsgList = CMQManager.getInstance().consumeIqiyiAlbumUpdateMsg(16);
                if (iqiyiAlbumMsgList != null)
                    for (IqiyiAlbum2MQMsg iqiyiAlbum2MQMsg : iqiyiAlbumMsgList) {
                        try {
                            Long qikuID = iqiyiAlbum2MQMsg.getId();
                            IqiyiAlbum2 album2 = iqiyiAlbum2Dao.get(qikuID);
                            IqiyiAlbum2 album2 = iqiyi2Service.selectAlbumById(qikuID);
                            if (album2 != null) {
                                iqiyiUtil2.addToVideoInfo(album2);
                                iqiyi2Service.addToVideoInfo(album2);
                            }
                            CMQManager.getInstance().deleteAlbumUpdateMsg(iqiyiAlbum2MQMsg.getHandler());
                            CMQManager.getInstance().deleteIqiyiAlbumUpdateMsg(iqiyiAlbum2MQMsg.getHandler());
                        } catch (Exception e) {
                            logger.error("爱奇艺专辑添加到视频出错:" + e.getMessage());
                            logger.error("ID:" + iqiyiAlbum2MQMsg.getId());
                        }
                    }
            }
@@ -105,4 +118,30 @@
    }
    private void doAddFunTV2Video() {
        new JobThreadExecutorServiceImpl().run(new Runnable() {
            @Override
            public void run() {
                List<FunTVAlbum2MQMsg> funTVAlbum2MsgList = CMQManager.getInstance().consumeFunTVAlbumUpdateMsg(16);
                if (funTVAlbum2MsgList != null)
                    for (FunTVAlbum2MQMsg funTVAlbum2MQMsg : funTVAlbum2MsgList) {
                        try {
                            String mediaId = funTVAlbum2MQMsg.getId();
                            FunTVAlbum2 album2 = funTV2Service.getAlbumDetail(mediaId);
                            if (album2 != null) {
                                funTV2Service.processAlbum(album2);
                            }
                            CMQManager.getInstance().deleteFunTVAlbumUpdateMsg(funTVAlbum2MQMsg.getHandler());
                        } catch (Exception e) {
                            logger.error("风行专辑添加到视频出错:" + e.getMessage());
                            logger.error("ID:" + funTVAlbum2MQMsg.getId());
                        }
                    }
            }
        });
    }
}