package com.xingxi.business.News.mapper;

import com.xingxi.business.News.domain.News;

import java.util.List;

/**
 * 新闻广告Mapper接口
 *
 * @author xingxi
 * @date 2025-03-06
 */
public interface NewsMapper {
    /**
     * 查询新闻广告
     *
     * @param newsId 新闻广告主键
     * @return 新闻广告
     */
    News selectNewsByNewsId(Long newsId);

    /**
     * 查询新闻广告列表
     *
     * @param news 新闻广告
     * @return 新闻广告集合
     */
    List<News> selectNewsList(News news);

    /**
     * 新增新闻广告
     *
     * @param news 新闻广告
     * @return 结果
     */
    int insertNews(News news);

    /**
     * 批量新增新闻广告
     *
     * @param newsList 新闻广告
     * @return 结果
     */
    int batchInsertNews(List<News> newsList);

    /**
     * 修改新闻广告
     *
     * @param news 新闻广告
     * @return 结果
     */
    int updateNews(News news);

    /**
     * 删除新闻广告
     *
     * @param newsId 新闻广告主键
     * @return 结果
     */
    int deleteNewsByNewsId(Long newsId);

    /**
     * 批量删除新闻广告
     *
     * @param newsIds 需要删除的数据主键集合
     * @return 结果
     */
    int deleteNewsByNewsIds(String[] newsIds);


    /**
     * 逻辑删除新闻广告
     *
     * @param newsId 新闻广告主键
     * @return 结果
     */
    int logicDeleteNewsByNewsId(Long newsId);

    /**
     * 逻辑批量删除新闻广告
     *
     * @param newsIds 需要删除的数据主键集合
     * @return 结果
     */
    int logicDeleteNewsByNewsIds(String[] newsIds);

    /**
     * 逻辑批量删除新闻广告
     *
     * @param news 新闻广告
     * @return 结果
     */
    int logicDeleteNewsByCondition(News news);

}
