news-classifier/backend/src/main/java/com/aisi/newsclassifier/service/NewsService.java

65 lines
1.3 KiB
Java

package com.aisi.newsclassifier.service;
import com.aisi.newsclassifier.domain.RestBean;
import com.aisi.newsclassifier.domain.dto.*;
import com.aisi.newsclassifier.domain.vo.NewsVo;
import java.util.List;
import java.util.Map;
/**
* 新闻服务接口
*/
public interface NewsService {
/**
* 分页查询新闻列表
*/
RestBean<PageResult<NewsVo>> getNewsList(NewsQueryDto queryDto);
/**
* 获取新闻详情
*/
RestBean<NewsVo> getNewsDetail(Long id);
/**
* 创建新闻(支持去重检查)
*/
RestBean<NewsVo> createNews(NewsCreateDto createDto);
/**
* 更新新闻
*/
RestBean<NewsVo> updateNews(NewsUpdateDto updateDto);
/**
* 删除新闻
*/
RestBean<Void> deleteNews(Long id);
/**
* 批量删除新闻
*/
RestBean<Void> batchDeleteNews(List<Long> ids);
/**
* 搜索新闻
*/
RestBean<PageResult<NewsVo>> searchNews(String keyword, Integer page, Integer size);
/**
* 按分类查询新闻
*/
RestBean<PageResult<NewsVo>> getNewsByCategory(Integer categoryId, Integer page, Integer size);
/**
* 获取最新新闻
*/
RestBean<PageResult<NewsVo>> getLatestNews(Integer page, Integer size);
/**
* 获取新闻统计数据
*/
RestBean<Map<String, Object>> getNewsStatistics();
}