package com.ruoyi.generator.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.generator.domain.Community.CommunityCollection;
import com.ruoyi.generator.domain.Community.CommunityCollectionArticle;
import com.ruoyi.generator.vo.CommunityCollectionArticleVo;
import com.ruoyi.generator.vo.CommunityCollectionVo;

import java.util.List;

public interface ICommunityCollectionService extends IService<CommunityCollection> {

    /**
     * 添加文章到用户合集中
     * @param collectionArticle 合集列表
     */
    void addArticleToCollection(CommunityCollectionArticle collectionArticle);

    /**
     * 删除合集中的某个文章
     * @param collectionId 合集id
     * @param articleId 文章id
     */
    void deleteArticleToCollection(Long collectionId, Long articleId);

    /**
     * 根据合集id,查询合集下所有文章信息
     * @param collectionId 合集id
     * @return 文章信息
     */
    List<CommunityCollectionArticleVo> selectArticleInfoInCollection(Long collectionId);

    /**
     * 删除合集
     * @param collectionId 合集id
     */
    void deleteCollectionById(Long collectionId);

    /**
     * 用户合集
     * @param userId 用户id
     * @return 用户合集信息
     */
    List<CommunityCollectionVo> selectUserCollection(Long userId);
}
