package com.ruoyi.mall.mapper;

import java.util.Date;
import java.util.List;
import com.ruoyi.mall.domain.BusinessArticle;
import com.ruoyi.mall.domain.OfflineServices;
import com.ruoyi.mall.domain.Vo.BusinessArticleVo;
import org.apache.ibatis.annotations.Param;

/**
 * 帖子管理Mapper接口
 * 
 * @author ruoyi
 * @date 2023-10-17
 */
public interface BusinessArticleMapper 
{
    /**
     * 查询帖子管理
     * 
     * @param articleId 帖子管理主键
     * @return 帖子管理
     */
    public BusinessArticleVo selectBusinessArticleByArticleId(Long articleId);



    /**
     * 查询帖子管理列表
     * 
     * @param businessArticle 帖子管理
     * @return 帖子管理集合
     */
    public List<BusinessArticleVo> selectBusinessArticleList(BusinessArticle businessArticle);

    /**
     * 查询帖子管理列表(xcx,结果包含likeFlag//用户点赞状态）
     * @param userId 当前登录用户
     * @param content 搜索内容
     * @param orderByColumn　需要排序的字段
     * @param descFlag　时间排序desc/asc
     * @return
     */
    List<BusinessArticleVo> selectListForXcx(@Param("userId")Long userId,@Param("content")String content,@Param("orderByColumn")String orderByColumn,@Param("descFlag")String descFlag);

    /**xcx 帖子详情*/
    BusinessArticleVo selectDetailForXcx(@Param("userId")Long userId,@Param("articleId")Long articleId);
    /**xcx 我的 帖子列表*/
    List<BusinessArticleVo> selectListForXcxMy(@Param("userId")Long userId);
    BusinessArticleVo selectDetailForXcxMy(@Param("userId")Long userId,@Param("articleId")Long articleId);
    /**小程序 话题热度排序*/
    String[] hotTagList(String createTime);
    /**
     * 新增帖子管理
     * 
     * @param businessArticle 帖子管理
     * @return 结果
     */
    public int insertBusinessArticle(BusinessArticle businessArticle);

    /**
     * 修改帖子管理
     * 
     * @param businessArticle 帖子管理
     * @return 结果
     */
    public int updateBusinessArticle(BusinessArticle businessArticle);

    /**
     * 删除帖子管理
     * 
     * @param articleId 帖子管理主键
     * @return 结果
     */
    public int deleteBusinessArticleByArticleId(Long articleId);

    /**
     * 批量删除帖子管理
     * 
     * @param articleIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBusinessArticleByArticleIds(@Param("articleIds")Long[] articleIds , @Param("businessArticle") BusinessArticle businessArticle);
}
