65 lines
1.3 KiB
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();
|
|
}
|