新闻模块是一个用于管理系统新闻资讯的功能模块,支持富文本内容编辑和发布管理。
CREATE TABLE `t_news` (
`id` bigint NOT NULL AUTO_INCREMENT,
`title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci,
`summary` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
`cover_image` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
`author` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
`view_count` int NOT NULL DEFAULT '0',
`state` int NOT NULL DEFAULT '1' COMMENT '0:草稿,1:发布,2:关闭',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`create_user_id` bigint DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`update_user_id` bigint DEFAULT NULL,
`version` bigint NOT NULL DEFAULT '0',
PRIMARY KEY (`id`) USING BTREE,
KEY `idx_t_news_state` (`state`) USING BTREE,
KEY `idx_t_news_create_time` (`create_time`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='新闻资讯表';
com.rongyichuang.news
├── entity
│ └── News.java
├── dto
│ ├── NewsInput.java
│ └── NewsResponse.java
├── repository
│ └── NewsRepository.java
├── service
│ └── NewsService.java
└── resolver
└── NewsResolver.java
src/views/
├── news-list.vue # 后台新闻管理列表
├── NewsForm.vue # 后台新闻编辑表单
├── NewsListPage.vue # 前台新闻列表展示
└── NewsDetail.vue # 前台新闻详情展示
src/api/
└── news.js # 新闻相关API接口
newsList - 获取新闻列表(后台管理)news - 获取新闻详情(后台管理)publishedNews - 获取已发布的新闻详情(前端展示)publishedNewsList - 获取已发布的新闻列表(前端展示)saveNews - 保存新闻deleteNews - 删除新闻(软删除)updateNewsState - 更新新闻状态/news - 新闻管理列表/news/new - 新增新闻/news/edit/:id - 编辑新闻/news/list - 前台新闻列表/news/detail/:id - 前台新闻详情npm install @wangeditor/editor @wangeditor/editor-for-vue --legacy-peer-deps