网站管理
章节简介
本框架已经集成一个简易的网站管理模块,系统中常用的栏位、协议、频道设置以及轮播图、文章、通知公告管理功能,本章节将介绍如何使用简易网站管理系统对这些内容进行管理。
栏位设置
1、此模块主要是配置项目中导航栏的栏位,栏位为树形结构,可设置排序、对应的图标图片以及跳转链接等
2、手机/PC端接口在website >> api 包下的ColumnApi,接口如下
@RestController
@RequestMapping("/api/column")
@Api(tags = "栏位管理api")
public class ColumnApi {
@Autowired
private IColumnService columnService;
// 手机、PC端根据父编码获取第一级栏位的数据
@GetMapping(value = "/getChildColumnList")
@ApiOperation("获取子栏位")
public JsonResult<List<ColumnVO>> getChildColumnList(@RequestParam String code) {
return new JsonResult<>(columnService.getChildColumnList(code));
}
// 手机、PC端根据父编码下所有栏位的数据,返回格式为树形接口
@GetMapping("/cascadeByCode")
@ApiOperation("获取级联")
public JsonResult<List<CascaderDto>> cascadeByCode(@RequestParam String code) {
return new JsonResult<>(columnService.cascadeByCode(code));
}
}
协议设置
1、如项目中有用户协议,隐私政策等可在此模块配置
2、手机/PC端接口在website >> api 包下的ContentApi,接口如下
@RestController
@RequestMapping("/api/content")
@Api(tags = "协议设置api")
public class ContentApi {
@Autowired
private IContentService contentService;
// 手机、PC端根据编码获取内容,接口如下
@GetMapping(value = "/getByCode")
@ApiOperation("根据编码获取内容")
public JsonResult<Content> getByCode(String code) {
return new JsonResult<>(contentService.getByCode(code));
}
}
频道设置
1、如项目中的小程序、网页有快捷入口,可在此模块进行配置
2、请根据项目需求在字典管理配置对应的频道类型(channel_type)
频道类型介绍
频道类型作用主要是为了区分不同的展示区域
例如:小程序端展示,可以配置小程序频道
PC端需要展示,可以配置PC频道
3、手机/PC端接口在website >> api 包下的ChannelApi,接口如下
@RestController
@RequestMapping("/api/channel")
@Api(tags = "频道管理api")
public class ChannelApi {
@Autowired
private IChannelService channelService;
// 手机、PC端根据类型获取频道信息,接口如下
@GetMapping(value = "/getChannelList")
@ApiOperation("获取频道信息")
public JsonResult<List<Channel>> getChannelList(@RequestParam String type) {
return new JsonResult<>(channelService.getChannelList(type));
}
}
内容管理
如项目中的存在新闻资讯等其他文章类,可在此模块进行配置
1、请先在栏位设置里配置栏位
2、手机/PC端接口在website >> api 包下的NewsApi,接口如下
@RestController
@RequestMapping("/api/news")
@Api(tags = "网站新闻api")
public class NewsApi {
@Autowired
private INewsService newsService;
// 手机、PC端根据id获取详情
@GetMapping(value = "/getNewsById")
@ApiOperation("获取新闻资讯详情")
public JsonResult<News> getNewsById(@RequestParam Long newsId) {
return new JsonResult<>(newsService.view(newsId));
}
// 手机、PC端分页接口
@ApiOperation("分页查询资讯列表")
@PostMapping(value = "/pages")
public JsonResult<IPage<NewsListVO>> pages(@RequestBody(required = false) NewsListParams params) {
if (params == null) {
params = new NewsListParams();
}
IPage<NewsListVO> list = newsService.pagesByClient(params);
return new JsonResult<>(list);
}
// 手机、PC端首页分页接口
@ApiOperation("首页分页查询资讯列表")
@PostMapping(value = "/homepageList")
public JsonResult<IPage<NewsListVO>> homepageList(@RequestBody(required = false) NewsListParams params) {
if (params == null) {
params = new NewsListParams();
}
params.setHomepage(true);
IPage<NewsListVO> list = newsService.pagesByClient(params);
return new JsonResult<>(list);
}
}
提示
富文本内容存在website_news_content表
浏览量、真实浏览量、收藏量、点赞量存在website_data表
Banner轮播图
如项目中的存在轮播图、图片展示等,可在此模块进行配置
1、请根据项目需求,在字典管理配置网站轮播图类型(banner_type)所对应的类型
轮播图类型介绍
轮播图类型作用主要是为了区分不同的展示区域
轮播图系统默认存在栏位类型,其他类型需要单独配置
例如:小程序端展示,可以配置小程序类型
PC端需要展示,可以配置PC类型栏位类型主要是为了展示轮播图在对应的栏位下
例如:PC >> 首页 下的轮播图,可以在系统中选择栏位类型,联动选择对应的首页栏位
2、手机/PC端接口在website >> api 包下的BannerApi,接口如下
@RestController
@RequestMapping("/api/banner")
@Api(tags = "图片管理api")
public class BannerApi {
@Autowired
private IBannerService bannerService;
// 手机、PC端根据类型获取轮播图信息,接口如下
@GetMapping(value = "/getListByType")
@ApiOperation("根据类型获取图片信息")
public JsonResult<List<Banner>> getListByType(@RequestParam String type) {
return new JsonResult<>(bannerService.getListByType(type));
}
// 手机、PC端根据栏位编码获取轮播图信息,接口如下
@GetMapping(value = "/getListByColumnCode")
@ApiOperation("根据栏位获取图片信息")
public JsonResult<List<Banner>> getListByColumnCode(@RequestParam String columnCode) {
return new JsonResult<>(bannerService.getListByColumnCode(columnCode));
}
}
通知公告
如项目中的存在通知、公告等,可在此模块进行配置
1、请根据项目需求,在字典管理配置网站通知公告类型(bulletin_type)所对应的类型
轮播图类型介绍
网站通知公告类型作用主要是为了区分不同的展示区域
例如:小程序端展示,可以配置小程序类型
PC端需要展示,可以配置PC类型
2、手机/PC端接口在website >> api 包下的BulletinApi,接口如下
@RestController
@RequestMapping("/api/bulletin")
@Api(tags = "通知公告api")
public class BulletinApi {
@Autowired
private IBulletinService bulletinService;
// 手机、PC端根据类型获取通知公告信息,接口如下
@GetMapping(value = "/getListByType")
@ApiOperation("根据类型获取通知公告")
public JsonResult<List<Bulletin>> getListByType(@RequestParam String type) {
return new JsonResult<>(bulletinService.getListByType(type));
}
// 手机、PC端根据首页获取通知公告信息,接口如下
@GetMapping(value = "/getHomePageList")
@ApiOperation("根据网站首页通知公告")
public JsonResult<List<Bulletin>> getHomePageList() {
return new JsonResult<>(bulletinService.getHomePageList());
}
// 手机、PC端分页接口
@PostMapping(value = "/getPage")
@ApiOperation("获取通知公告分页")
public JsonResult<IPage<Bulletin>> getPage(@RequestBody BulletinParams params) {
return new JsonResult<>(this.bulletinService.getBulletinListPage(params));
}
// 手机、PC端根据id获取详情,接口如下
@GetMapping(value = "/getById")
@ApiOperation("通过id获取通知公告详情")
public JsonResult<Bulletin> getById(@RequestParam Long id) {
return new JsonResult<>(bulletinService.getOneById(id));
}
}
数据表说明
此模块主要是记录浏览量、真实浏览量、收藏量、点赞量等数据,可根据项目需求自行扩展字段
1、数据表为website_data和website_date_data
2、website_data为每条数据对应浏览量、真实浏览量、收藏量、点赞量
3、website_date_data表按以下三个字段+日期进行存储数据
3-1、数据分类:data_classify(WebsiteCons下的浏览(view)、收藏(collect)、点赞(like))
3-2、数据类型:data_type 指定对应的类型进行区分数据的来源
3-3、数据主键:dataId 指对应的数据id
4、保存浏览量接口IWebsiteDataService.view
5、保存点赞收藏接口IWebsiteDataService.likeCollect
6、其他接口项目中可自行扩展
