admin
2025-02-20 f537abe9f3646c739beaf15076246a2f71a347e9
src/main/java/com/yeshi/buwan/service/imp/juhe/InternetSearchVideoServiceImpl.java
@@ -7,7 +7,7 @@
import com.yeshi.buwan.exception.ParamsException;
import com.yeshi.buwan.service.inter.juhe.InternetSearchVideoService;
import com.yeshi.buwan.service.inter.system.SystemConfigService;
import com.yeshi.buwan.util.mq.CMQManager;
import com.yeshi.buwan.util.mq.rabbit.RabbitmqManager;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
@@ -27,6 +27,9 @@
    @Resource
    private SystemConfigService systemConfigService;
    @Resource
    private RabbitmqManager rabbitmqManager;
    private boolean isCanSave(InternetSearchVideo video) {
        SystemConfig systemConfig = systemConfigService.getConfigByKeyCache("internetSearchInvalidKeyForSave");
@@ -50,7 +53,10 @@
            return null;
        InternetSearchVideo oldVideo = internetSearchVideoDao.get(video.getId());
        Set<Integer> resourceIds = listResourceId(video);
        Set<Integer> resourceIds = new HashSet<>();
        if (oldVideo != null) {
            resourceIds.addAll(listResourceId(oldVideo));
        }
        int resourceId = Integer.parseInt(video.getResourceIds());
        resourceIds.add(resourceId);
        Integer[] rids = new Integer[resourceIds.size()];
@@ -66,7 +72,7 @@
        InternetSearchVideoMQMsg msg = new InternetSearchVideoMQMsg();
        msg.setId(video.getId());
        msg.setResourceId(resourceId);
        CMQManager.getInstance().addInternetSearchVideoUpdateMsg(msg);
        rabbitmqManager.addInternetSearchVideoUpdateMsg(msg);
        return video;
    }
@@ -131,5 +137,31 @@
        return internetSearchVideoDao.findList(query);
    }
    @Override
    public void removeResourceId(String id, Integer resourceId) {
        InternetSearchVideo video = internetSearchVideoDao.get(id);
        if (video == null) {
            return;
        }
        Set<Integer> resourceIds = listResourceId(video);
        if (resourceIds.contains(resourceId)) {
            //移除
            resourceIds.remove(resourceId);
        }
        if (resourceIds.size() <= 0) {
            // 移除数据
            internetSearchVideoDao.deleteByPrimaryKey(id);
        } else {
            InternetSearchVideo update = new InternetSearchVideo();
            update.setId(id);
            Integer[] rids = new Integer[resourceIds.size()];
            resourceIds.toArray(rids);
            video.setResourceIds(StringUtil.concat(rids, ","));
            internetSearchVideoDao.updateSelective(update);
        }
        InternetSearchVideoMQMsg msg = new InternetSearchVideoMQMsg();
        msg.setId(video.getId());
        msg.setResourceId(resourceId);
        rabbitmqManager.addInternetSearchVideoUpdateMsg(msg);
    }
}