package com.fs.store.service;

import com.fs.store.domain.FsHomeArticleView;
import com.fs.store.param.home.HomeArticleViewListParam;
import com.fs.store.vo.home.HomeArticleViewsListVO;

import java.util.List;

/**
 * 期刊阅读Service接口
 *
 * @author fs
 * @date 2025-05-21
 */
public interface IFsHomeArticleViewService
{
    /**
     * 查询期刊阅读
     *
     * @param viewId 期刊阅读ID
     * @return 期刊阅读
     */
    public FsHomeArticleView selectFsHomeArticleViewById(Long viewId);

    /**
     * 查询期刊阅读列表
     *
     * @param fsHomeArticleView 期刊阅读
     * @return 期刊阅读集合
     */
    public List<FsHomeArticleView> selectFsHomeArticleViewList(FsHomeArticleView fsHomeArticleView);

    /**
     * 新增期刊阅读
     *
     * @param fsHomeArticleView 期刊阅读
     * @return 结果
     */
    public int insertFsHomeArticleView(FsHomeArticleView fsHomeArticleView);

    /**
     * 修改期刊阅读
     *
     * @param fsHomeArticleView 期刊阅读
     * @return 结果
     */
    public int updateFsHomeArticleView(FsHomeArticleView fsHomeArticleView);

    /**
     * 批量删除期刊阅读
     *
     * @param viewIds 需要删除的期刊阅读ID
     * @return 结果
     */
    public int deleteFsHomeArticleViewByIds(Long[] viewIds);

    /**
     * 删除期刊阅读信息
     *
     * @param viewId 期刊阅读ID
     * @return 结果
     */
    public int deleteFsHomeArticleViewById(Long viewId);

    /**
     * 新增阅读记录，更新阅读数
     * @param articleId 文章id
     * @param userId 用户id
     * @return
     */
    int addArticleRecord(Long articleId, Long userId);

    /**
     * 查询文章的阅读人员列表
     * @param param 入参
     * @return
     */
    List<HomeArticleViewsListVO> selectHomeArticleViewsList(HomeArticleViewListParam param);

}
