src/main/java/com/xcong/farmer/cms/modules/system/Controller/AdminArticleController.java
New file @@ -0,0 +1,56 @@ package com.xcong.farmer.cms.modules.system.Controller; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.*; import com.xcong.farmer.cms.modules.system.service.IArticleService; import com.xcong.farmer.cms.modules.system.vo.AdminArticleVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; @RestController @RequestMapping(value = "/api/article") @Slf4j @Api(value = "文章", tags = "文章") public class AdminArticleController { @Resource private IArticleService iArticleService; @ApiOperation(value = "文章分页列表", notes = "文章分页列表") @ApiResponses({@ApiResponse(code = 200, message = "ok", response = AdminArticleVo.class)}) @PostMapping(value = "/articleInPage") public Result getArticleInPage(@RequestBody @Valid AdminArticleDto adminArticleDto) { return iArticleService.getArticleInPage(adminArticleDto); } @ApiOperation(value = "添加文章", notes = "添加文章") @PostMapping(value = "/addArticle") public Result addArticle(@RequestBody @Valid AdminAddArticleDto adminAddArticleDto) { return iArticleService.addArticle(adminAddArticleDto); } @ApiOperation(value = "删除文章", notes = "删除文章") @GetMapping(value = "/deleteArticle/{id}") public Result deleteArticle(@PathVariable(value = "id") Long id) { return iArticleService.deleteArticle(id); } @ApiOperation(value = "查看文章", notes = "查看文章") @GetMapping(value = "/seeArticleInfo/{id}") public Result seeArticleInfo(@PathVariable(value = "id") Long id) { return iArticleService.seeArticleInfo(id); } @ApiOperation(value = "更新文章", notes = "更新文章") @PostMapping(value = "/updateArticle") public Result updateArticle(@RequestBody @Valid AdminUpdateArticleDto adminUpdateArticleDto) { return iArticleService.updateArticle(adminUpdateArticleDto); } } src/main/java/com/xcong/farmer/cms/modules/system/Controller/AdminColumnController.java
New file @@ -0,0 +1,66 @@ package com.xcong.farmer.cms.modules.system.Controller; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.*; import com.xcong.farmer.cms.modules.system.service.IColumnService; import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.extern.slf4j.Slf4j; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; @RestController @RequestMapping(value = "/api/column") @Slf4j @Api(value = "栏目", tags = "栏目") public class AdminColumnController { @Resource private IColumnService iColumnService; @ApiOperation(value = "栏目分页列表", notes = "栏目分页列表") @ApiResponses({@ApiResponse(code = 200, message = "ok", response = AdminColumnVo.class)}) @PostMapping(value = "/columnInPage") public Result getColumnInPage(@RequestBody @Valid AdminColumnDto adminColumnDto) { log.info("--->{}", SecurityContextHolder.getContext().getAuthentication()); return iColumnService.getColumnInPage(adminColumnDto); } @ApiOperation(value = "栏目列表", notes = "栏目列表") @ApiResponses({@ApiResponse(code = 200, message = "ok", response = AdminColumnVo.class)}) @GetMapping(value = "/columnInList") public Result columnInList() { return iColumnService.getColumnInList(); } @ApiOperation(value = "添加栏目", notes = "添加栏目") @PostMapping(value = "/addColumn") public Result addColumn(@RequestBody @Valid AdminAddColumnDto adminAddColumnDto) { return iColumnService.addColumn(adminAddColumnDto); } @ApiOperation(value = "删除栏目", notes = "删除栏目") @GetMapping(value = "/deleteColumn/{id}") public Result deleteColumn(@PathVariable(value = "id") Long id) { return iColumnService.deleteColumn(id); } @ApiOperation(value = "查看栏目", notes = "查看栏目") @GetMapping(value = "/seeColumnInfo/{id}") public Result seeColumnInfo(@PathVariable(value = "id") Long id) { return iColumnService.seeColumnInfo(id); } @ApiOperation(value = "更新栏目", notes = "更新栏目") @PostMapping(value = "/updateColumn") public Result updateColumn(@RequestBody @Valid AdminUpdateColumnDto adminUpdateColumnDto) { return iColumnService.updateColumn(adminUpdateColumnDto); } } src/main/java/com/xcong/farmer/cms/modules/system/Controller/AdminNavigationBarController.java
New file @@ -0,0 +1,67 @@ package com.xcong.farmer.cms.modules.system.Controller; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.*; import com.xcong.farmer.cms.modules.system.service.INavigationBarService; import com.xcong.farmer.cms.modules.system.vo.AdminNavigationBarVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.extern.slf4j.Slf4j; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; @RestController @RequestMapping(value = "/api/bar") @Slf4j @Api(value = "导航栏", tags = "导航栏") public class AdminNavigationBarController { @Resource private INavigationBarService iNavigationBarService; @ApiOperation(value = "导航栏分页列表", notes = "导航栏分页列表") @ApiResponses({@ApiResponse(code = 200, message = "ok", response = AdminNavigationBarVo.class)}) @PostMapping(value = "/barInPage") public Result getBarInPage(@RequestBody @Valid AdminNavigationBarDto adminNavigationBarDto) { log.info("--->{}", SecurityContextHolder.getContext().getAuthentication()); return iNavigationBarService.getBarInPage(adminNavigationBarDto); } @ApiOperation(value = "导航栏列表", notes = "导航栏列表") @ApiResponses({@ApiResponse(code = 200, message = "ok", response = AdminNavigationBarVo.class)}) @GetMapping(value = "/barInList") public Result getBarInList() { return iNavigationBarService.getBarInList(); } @ApiOperation(value = "添加导航栏", notes = "添加导航栏") @PostMapping(value = "/addBar") public Result addBar(@RequestBody @Valid AdminAddBarDto adminAddBarDto) { return iNavigationBarService.addBar(adminAddBarDto); } @ApiOperation(value = "删除导航栏", notes = "删除导航栏") @GetMapping(value = "/deleteBar/{id}") public Result deleteBar(@PathVariable(value = "id") Long id) { return iNavigationBarService.deleteBar(id); } @ApiOperation(value = "查看导航栏", notes = "查看导航栏") @GetMapping(value = "/seeBarInfo/{id}") public Result seeBarInfo(@PathVariable(value = "id") Long id) { return iNavigationBarService.seeBarInfo(id); } @ApiOperation(value = "更新导航栏", notes = "更新导航栏") @PostMapping(value = "/updateBar") public Result updateBar(@RequestBody @Valid AdminUpdateBarDto adminUpdateMenuDto) { return iNavigationBarService.updateBar(adminUpdateMenuDto); } } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminAddArticleDto.java
New file @@ -0,0 +1,43 @@ package com.xcong.farmer.cms.modules.system.dto; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(value = "AdminAddArticleDto", description = "参数接收类") public class AdminAddArticleDto { @ApiModelProperty(value = "标题") private String title; @ApiModelProperty(value = "标题") private String childTitle; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "所属栏目ID") private Long columnId; @ApiModelProperty(value = "访问量") private Integer visits; @ApiModelProperty(value = "主图") private String mainDiagram; @ApiModelProperty(value = "图集") private String atlas; @ApiModelProperty(value = "发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date releaseTime; @ApiModelProperty(value = "是否立即发布 0:否 1:是") private Integer releaseStatus; @ApiModelProperty(value = "文章详情") private String articleDetails; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminAddBarDto.java
New file @@ -0,0 +1,28 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminAddBarDto", description = "参数接收类") public class AdminAddBarDto { //导航栏标题 @ApiModelProperty(value = "导航栏标题") private String barName; //链接地址 @ApiModelProperty(value = "链接地址") private String linkUrl; //描述 @ApiModelProperty(value = "描述") private String describe; //排序 @ApiModelProperty(value = "排序") private Integer orderNum; //图片 @ApiModelProperty(value = "图片") private String pic; //上级类目ID @ApiModelProperty(value = "上级类目ID") private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminAddColumnDto.java
New file @@ -0,0 +1,29 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminAddColumnDto", description = "参数接收类") public class AdminAddColumnDto { @ApiModelProperty(value = "栏目名称") private String columnName; @ApiModelProperty(value = "栏目编码") private String columnCode; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "排序") private Integer orderNum; @ApiModelProperty(value = "图片") private String pic; @ApiModelProperty(value = "上级类目ID") private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminArticleDto.java
New file @@ -0,0 +1,22 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminArticleDto", description = "参数接收类") public class AdminArticleDto { @ApiModelProperty(value = "标题", example = "文章") private String title; @ApiModelProperty(value = "所属栏目ID", example = "2") private Long columnId; @ApiModelProperty(value = "每页条数", example = "10") private Integer pageSize; @ApiModelProperty(value = "第几页", example = "1") private Integer pageNum; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminColumnDto.java
New file @@ -0,0 +1,16 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminColumnDto", description = "参数接收类") public class AdminColumnDto { @ApiModelProperty(value = "每页条数", example = "10") private Integer pageSize; @ApiModelProperty(value = "第几页", example = "1") private Integer pageNum; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminNavigationBarDto.java
New file @@ -0,0 +1,16 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminNavigationBarDto", description = "参数接收类") public class AdminNavigationBarDto { @ApiModelProperty(value = "每页条数", example = "10") private Integer pageSize; @ApiModelProperty(value = "第几页", example = "1") private Integer pageNum; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminUpdateArticleDto.java
New file @@ -0,0 +1,47 @@ package com.xcong.farmer.cms.modules.system.dto; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(value = "AdminUpdateArticleDto", description = "参数接收类") public class AdminUpdateArticleDto { private Long id; @ApiModelProperty(value = "标题") private String title; @ApiModelProperty(value = "标题") private String childTitle; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "所属栏目ID") private Long columnId; @ApiModelProperty(value = "访问量") private Integer visits; @ApiModelProperty(value = "主图") private String mainDiagram; @ApiModelProperty(value = "图集") private String atlas; @ApiModelProperty(value = "发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date releaseTime; @ApiModelProperty(value = "是否立即发布 0:否 1:是") private Integer releaseStatus; @ApiModelProperty(value = "文章详情") private String articleDetails; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminUpdateBarDto.java
New file @@ -0,0 +1,29 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminUpdateBarDto", description = "参数接收类") public class AdminUpdateBarDto { private Long id; //导航栏标题 @ApiModelProperty(value = "导航栏标题") private String barName; //链接地址 @ApiModelProperty(value = "链接地址") private String linkUrl; //描述 @ApiModelProperty(value = "描述") private String describe; //排序 @ApiModelProperty(value = "排序") private Integer orderNum; //图片 @ApiModelProperty(value = "图片") private String pic; //上级类目ID @ApiModelProperty(value = "上级类目ID") private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminUpdateColumnDto.java
New file @@ -0,0 +1,31 @@ package com.xcong.farmer.cms.modules.system.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminUpdateColumnDto", description = "参数接收类") public class AdminUpdateColumnDto { private Long id; @ApiModelProperty(value = "栏目名称") private String columnName; @ApiModelProperty(value = "栏目编码") private String columnCode; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "排序") private Integer orderNum; @ApiModelProperty(value = "图片") private String pic; @ApiModelProperty(value = "上级类目ID") private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/entity/ArticleEntity.java
New file @@ -0,0 +1,60 @@ package com.xcong.farmer.cms.modules.system.entity; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.xcong.farmer.cms.common.system.base.BaseEntity; import lombok.Data; import java.util.Date; /** * 文章表 */ @Data @TableName("t_article") public class ArticleEntity extends BaseEntity { /** * 是否立即发布 1:是 */ public static final Integer RELEASE_STATUS_YES = 1; /** * 是否立即发布 0:否 */ public static final Integer RELEASE_STATUS_NO = 0; /** * 是否删除 1:未删除 */ public static final Integer DELETE_STATUS_NO = 1; /** * 是否删除 0:已删除 */ public static final Integer DELETE_STATUS_YES = 0; /** * 访问量 */ public static final Integer VISITS_DEFAULT = 0; //标题 private String title; //副标题 private String childTitle; //描述 private String describe; //所属栏目ID private Long columnId; //访问量 private Integer visits; //主图 private String mainDiagram; //图集 private String atlas; //发布时间 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date releaseTime; //是否立即发布 0:否 1:是 private Integer releaseStatus; //文章详情 private String articleDetails; //是否删除 0:已删除 1:未删除 private Integer delStatus; } src/main/java/com/xcong/farmer/cms/modules/system/entity/ColumnEntity.java
New file @@ -0,0 +1,30 @@ package com.xcong.farmer.cms.modules.system.entity; import com.baomidou.mybatisplus.annotation.TableName; import com.xcong.farmer.cms.common.system.base.BaseEntity; import lombok.Data; /** * 栏目表 */ @Data @TableName("t_column") public class ColumnEntity extends BaseEntity { /** * 导航栏 - 默认上级类目ID */ public static final Long PARENTID_DEFAULT = 0L; //栏目名称 private String columnName; //栏目编码 private String columnCode; //描述 private String describe; //排序 private Integer orderNum; //图片 private String pic; //上级类目ID private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/entity/NavigationBarEntity.java
New file @@ -0,0 +1,31 @@ package com.xcong.farmer.cms.modules.system.entity; import com.baomidou.mybatisplus.annotation.TableName; import com.xcong.farmer.cms.common.system.base.BaseEntity; import lombok.Data; /** * 导航栏表 */ @Data @TableName("t_navigation_bar") public class NavigationBarEntity extends BaseEntity { /** * 导航栏 - 默认上级类目ID */ public static final Long PARENTID_DEFAULT = 0L; //导航栏标题 private String barName; //链接地址 private String linkUrl; //描述 private String describe; //排序 private Integer orderNum; //图片 private String pic; //上级类目ID private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/mapper/ArticleMapper.java
New file @@ -0,0 +1,16 @@ package com.xcong.farmer.cms.modules.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.xcong.farmer.cms.modules.system.entity.ArticleEntity; import com.xcong.farmer.cms.modules.system.vo.AdminArticleVo; import com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo; import org.apache.ibatis.annotations.Param; public interface ArticleMapper extends BaseMapper<ArticleEntity> { IPage<AdminArticleVo> selectAdminArticleInPage(Page<AdminArticleVo> page, @Param("record")ArticleEntity articleEntity); AdminSeeArticleInfoVo selectAdminArticleByid(@Param("id")Long id); } src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
New file @@ -0,0 +1,17 @@ package com.xcong.farmer.cms.modules.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.xcong.farmer.cms.modules.system.entity.ColumnEntity; import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo; import org.apache.ibatis.annotations.Param; import java.util.List; public interface ColumnMapper extends BaseMapper<ColumnEntity> { IPage<AdminColumnVo> selectAdminColumnVoInPage(Page<AdminColumnVo> page, @Param("record")ColumnEntity columnEntity); List<AdminColumnVo> selectColumnInListByParentId(@Param("parentId")Long parentidDefault); } src/main/java/com/xcong/farmer/cms/modules/system/mapper/NavigationBarMapper.java
New file @@ -0,0 +1,17 @@ package com.xcong.farmer.cms.modules.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.xcong.farmer.cms.modules.system.entity.NavigationBarEntity; import com.xcong.farmer.cms.modules.system.vo.AdminNavigationBarVo; import org.apache.ibatis.annotations.Param; import java.util.List; public interface NavigationBarMapper extends BaseMapper<NavigationBarEntity> { IPage<AdminNavigationBarVo> selectAdminNavigationBarVoInPage(Page<AdminNavigationBarVo> page, @Param("record")NavigationBarEntity navigationBarEntity); List<AdminNavigationBarVo> selectAdminNavigationBarVoByParentId(@Param("parentId")Long parentidDefault); } src/main/java/com/xcong/farmer/cms/modules/system/service/IArticleService.java
New file @@ -0,0 +1,21 @@ package com.xcong.farmer.cms.modules.system.service; import com.baomidou.mybatisplus.extension.service.IService; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.AdminAddArticleDto; import com.xcong.farmer.cms.modules.system.dto.AdminArticleDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateArticleDto; import com.xcong.farmer.cms.modules.system.entity.ArticleEntity; public interface IArticleService extends IService<ArticleEntity> { Result getArticleInPage(AdminArticleDto adminArticleDto); Result addArticle(AdminAddArticleDto adminAddArticleDto); Result deleteArticle(Long id); Result seeArticleInfo(Long id); Result updateArticle(AdminUpdateArticleDto adminUpdateArticleDto); } src/main/java/com/xcong/farmer/cms/modules/system/service/IColumnService.java
New file @@ -0,0 +1,23 @@ package com.xcong.farmer.cms.modules.system.service; import com.baomidou.mybatisplus.extension.service.IService; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.AdminAddColumnDto; import com.xcong.farmer.cms.modules.system.dto.AdminColumnDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateColumnDto; import com.xcong.farmer.cms.modules.system.entity.ColumnEntity; public interface IColumnService extends IService<ColumnEntity> { Result getColumnInPage(AdminColumnDto adminColumnDto); Result addColumn(AdminAddColumnDto adminAddColumnDto); Result deleteColumn(Long id); Result seeColumnInfo(Long id); Result updateColumn(AdminUpdateColumnDto adminUpdateColumnDto); Result getColumnInList(); } src/main/java/com/xcong/farmer/cms/modules/system/service/INavigationBarService.java
New file @@ -0,0 +1,23 @@ package com.xcong.farmer.cms.modules.system.service; import com.baomidou.mybatisplus.extension.service.IService; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.AdminAddBarDto; import com.xcong.farmer.cms.modules.system.dto.AdminNavigationBarDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateBarDto; import com.xcong.farmer.cms.modules.system.entity.NavigationBarEntity; public interface INavigationBarService extends IService<NavigationBarEntity> { Result getBarInPage(AdminNavigationBarDto adminNavigationBarDto); Result addBar(AdminAddBarDto adminAddBarDto); Result deleteBar(Long id); Result seeBarInfo(Long id); Result updateBar(AdminUpdateBarDto adminUpdateMenuDto); Result getBarInList(); } src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java
New file @@ -0,0 +1,179 @@ package com.xcong.farmer.cms.modules.system.service.Impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.AdminAddArticleDto; import com.xcong.farmer.cms.modules.system.dto.AdminArticleDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateArticleDto; import com.xcong.farmer.cms.modules.system.entity.ArticleEntity; import com.xcong.farmer.cms.modules.system.entity.ColumnEntity; import com.xcong.farmer.cms.modules.system.mapper.ArticleMapper; import com.xcong.farmer.cms.modules.system.mapper.ColumnMapper; import com.xcong.farmer.cms.modules.system.service.IArticleService; import com.xcong.farmer.cms.modules.system.vo.AdminArticleVo; import com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; import java.util.Date; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ObjectUtil; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; @Service @Slf4j public class ArticleServiceImpl extends ServiceImpl<ArticleMapper, ArticleEntity> implements IArticleService { @Resource private ColumnMapper columnMapper; @Override public Result getArticleInPage(AdminArticleDto adminArticleDto) { Page<AdminArticleVo> page = new Page<>(adminArticleDto.getPageNum(), adminArticleDto.getPageSize()); ArticleEntity articleEntity = new ArticleEntity(); Long columnId = adminArticleDto.getColumnId() == null ? 0L : adminArticleDto.getColumnId(); if(columnId != 0L){ articleEntity.setColumnId(columnId); } String title = adminArticleDto.getTitle(); if(StrUtil.isNotEmpty(title)){ articleEntity.setTitle(title); } IPage<AdminArticleVo> list = this.baseMapper.selectAdminArticleInPage(page,articleEntity); return Result.ok(list); } @Override @Transactional public Result addArticle(AdminAddArticleDto adminAddArticleDto) { ArticleEntity articleEntity = new ArticleEntity(); String title = adminAddArticleDto.getTitle(); if(StrUtil.isEmpty(title)){ return Result.fail("请输入文章标题"); } articleEntity.setTitle(title); String childTitle = adminAddArticleDto.getChildTitle(); if(StrUtil.isNotEmpty(childTitle)){ articleEntity.setChildTitle(childTitle); } String describe = adminAddArticleDto.getDescribe(); if(StrUtil.isNotEmpty(describe)){ articleEntity.setDescribe(describe); } long columnId = adminAddArticleDto.getColumnId() == null ? 0L : adminAddArticleDto.getColumnId(); if(columnId == 0L){ return Result.fail("请选择文章栏目"); } ColumnEntity columnEntity = columnMapper.selectById(columnId); if(ObjectUtil.isEmpty(columnEntity)){ return Result.fail("请选择文章栏目"); } articleEntity.setColumnId(columnId); Integer visits = adminAddArticleDto.getVisits() == null ? 0 : adminAddArticleDto.getVisits(); articleEntity.setVisits(visits); String mainDiagram = adminAddArticleDto.getMainDiagram(); if(StrUtil.isNotEmpty(mainDiagram)){ articleEntity.setMainDiagram(mainDiagram); } String atlas = adminAddArticleDto.getAtlas(); if(StrUtil.isNotEmpty(atlas)){ articleEntity.setAtlas(atlas); } Date releaseTime = adminAddArticleDto.getReleaseTime(); if(ObjectUtil.isNotEmpty(releaseTime)){ articleEntity.setReleaseTime(releaseTime); } Integer releaseStatus = adminAddArticleDto.getReleaseStatus(); articleEntity.setReleaseStatus(releaseStatus); String articleDetails = adminAddArticleDto.getArticleDetails(); if(StrUtil.isNotEmpty(articleDetails)){ articleEntity.setArticleDetails(articleDetails); } this.baseMapper.insert(articleEntity); return Result.ok("添加成功"); } @Override @Transactional public Result deleteArticle(Long id) { ArticleEntity articleEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(articleEntity)){ return Result.fail("文章不存在"); } articleEntity.setDelStatus(ArticleEntity.DELETE_STATUS_YES); this.baseMapper.updateById(articleEntity); return Result.ok("删除成功"); } @Override public Result seeArticleInfo(Long id) { ArticleEntity articleEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(articleEntity)){ return Result.fail("文章不存在"); } AdminSeeArticleInfoVo adminSeeArticleInfoVo = this.baseMapper.selectAdminArticleByid(id); return Result.ok(adminSeeArticleInfoVo); } @Override @Transactional public Result updateArticle(AdminUpdateArticleDto adminUpdateArticleDto) { Long id = adminUpdateArticleDto.getId(); ArticleEntity articleEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(articleEntity)){ return Result.fail("文章不存在"); } String title = adminUpdateArticleDto.getTitle(); if(StrUtil.isEmpty(title)){ return Result.fail("请输入文章标题"); } articleEntity.setTitle(title); String childTitle = adminUpdateArticleDto.getChildTitle(); if(StrUtil.isNotEmpty(childTitle)){ articleEntity.setChildTitle(childTitle); } String describe = adminUpdateArticleDto.getDescribe(); if(StrUtil.isNotEmpty(describe)){ articleEntity.setDescribe(describe); } long columnId = adminUpdateArticleDto.getColumnId() == null ? 0L : adminUpdateArticleDto.getColumnId(); if(columnId == 0L){ return Result.fail("请选择文章栏目"); } ColumnEntity columnEntity = columnMapper.selectById(columnId); if(ObjectUtil.isEmpty(columnEntity)){ return Result.fail("请选择文章栏目"); } articleEntity.setColumnId(columnId); Integer visits = adminUpdateArticleDto.getVisits() == null ? 0 : adminUpdateArticleDto.getVisits(); articleEntity.setVisits(visits); String mainDiagram = adminUpdateArticleDto.getMainDiagram(); if(StrUtil.isNotEmpty(mainDiagram)){ articleEntity.setMainDiagram(mainDiagram); } String atlas = adminUpdateArticleDto.getAtlas(); if(StrUtil.isNotEmpty(atlas)){ articleEntity.setAtlas(atlas); } Date releaseTime = adminUpdateArticleDto.getReleaseTime(); if(ObjectUtil.isNotEmpty(releaseTime)){ articleEntity.setReleaseTime(releaseTime); } Integer releaseStatus = adminUpdateArticleDto.getReleaseStatus(); articleEntity.setReleaseStatus(releaseStatus); String articleDetails = adminUpdateArticleDto.getArticleDetails(); if(StrUtil.isNotEmpty(articleDetails)){ articleEntity.setArticleDetails(articleDetails); } this.baseMapper.updateById(articleEntity); return Result.ok("更新成功"); } } src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
New file @@ -0,0 +1,214 @@ package com.xcong.farmer.cms.modules.system.service.Impl; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.AdminAddColumnDto; import com.xcong.farmer.cms.modules.system.dto.AdminColumnDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateColumnDto; import com.xcong.farmer.cms.modules.system.entity.ColumnEntity; import com.xcong.farmer.cms.modules.system.mapper.ColumnMapper; import com.xcong.farmer.cms.modules.system.service.IColumnService; import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo; import com.xcong.farmer.cms.modules.system.vo.AdminSeeColumnInfoVo; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ObjectUtil; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; @Service @Slf4j public class ColumnServiceImpl extends ServiceImpl<ColumnMapper, ColumnEntity> implements IColumnService { @Override public Result getColumnInPage(AdminColumnDto adminColumnDto) { Page<AdminColumnVo> page = new Page<>(adminColumnDto.getPageNum(), adminColumnDto.getPageSize()); ColumnEntity columnEntity = new ColumnEntity(); columnEntity.setParentId(ColumnEntity.PARENTID_DEFAULT); IPage<AdminColumnVo> list = this.baseMapper.selectAdminColumnVoInPage(page,columnEntity); List<AdminColumnVo> records = list.getRecords(); if(CollUtil.isNotEmpty(records)){ for(AdminColumnVo adminColumnVo : records){ Long id = adminColumnVo.getId(); QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("parent_id",id); List<ColumnEntity> columnEntities = this.baseMapper.selectList(objectQueryWrapper); List<AdminColumnVo> adminColumnVoChilds = new ArrayList<>(); if(CollUtil.isNotEmpty(columnEntities)){ for(ColumnEntity columnEntityChild : columnEntities){ AdminColumnVo child = new AdminColumnVo(); child.setId(columnEntityChild.getId()); child.setColumnName(columnEntityChild.getColumnName()); child.setColumnCode(columnEntityChild.getColumnCode()); child.setDescribe(columnEntityChild.getDescribe()); child.setPic(columnEntityChild.getPic()); child.setOrderNum(columnEntityChild.getOrderNum()); adminColumnVoChilds.add(child); } } adminColumnVo.setChild(adminColumnVoChilds); } } return Result.ok(list); } @Override @Transactional public Result addColumn(AdminAddColumnDto adminAddColumnDto) { ColumnEntity columnEntity = new ColumnEntity(); String columnName = adminAddColumnDto.getColumnName(); if(StrUtil.isEmpty(columnName)){ return Result.fail("请输入栏目名称"); } columnEntity.setColumnName(columnName); String columnCode = adminAddColumnDto.getColumnCode(); if(StrUtil.isEmpty(columnCode)){ return Result.fail("请输入栏目编码"); } QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("column_code",columnCode); List<ColumnEntity> columnEntities = this.baseMapper.selectList(objectQueryWrapper); if(CollUtil.isNotEmpty(columnEntities)){ return Result.fail("栏目编码不能重复"); } columnEntity.setColumnCode(columnCode); String describe = adminAddColumnDto.getDescribe(); if(StrUtil.isNotEmpty(describe)){ columnEntity.setDescribe(describe); } String pic = adminAddColumnDto.getPic(); if(StrUtil.isNotEmpty(pic)){ columnEntity.setPic(pic); } Integer orderNum = adminAddColumnDto.getOrderNum(); if(ObjectUtil.isNotEmpty(orderNum)){ columnEntity.setOrderNum(orderNum); } Long parentId = adminAddColumnDto.getParentId(); if(ObjectUtil.isEmpty(parentId)){ columnEntity.setParentId(ColumnEntity.PARENTID_DEFAULT); }else{ columnEntity.setParentId(parentId); } this.baseMapper.insert(columnEntity); return Result.ok("添加成功"); } @Override @Transactional public Result deleteColumn(Long id) { ColumnEntity columnEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(columnEntity)){ return Result.fail("栏目不存在"); } QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("parent_id",id); List<ColumnEntity> columnEntities = this.baseMapper.selectList(objectQueryWrapper); if(CollUtil.isNotEmpty(columnEntities)){ return Result.fail("请先清空它的二级栏目"); } this.baseMapper.deleteById(id); return Result.ok("删除成功"); } @Override public Result seeColumnInfo(Long id) { ColumnEntity columnEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(columnEntity)){ return Result.fail("栏目不存在"); } AdminSeeColumnInfoVo adminSeeColumnInfoVo = new AdminSeeColumnInfoVo(); adminSeeColumnInfoVo.setId(columnEntity.getId()); adminSeeColumnInfoVo.setColumnName(columnEntity.getColumnName()); adminSeeColumnInfoVo.setColumnCode(columnEntity.getColumnCode()); adminSeeColumnInfoVo.setDescribe(columnEntity.getDescribe()); adminSeeColumnInfoVo.setParentId(columnEntity.getParentId()); adminSeeColumnInfoVo.setOrderNum(columnEntity.getOrderNum()); adminSeeColumnInfoVo.setPic(columnEntity.getPic()); return Result.ok(adminSeeColumnInfoVo); } @Override @Transactional public Result updateColumn(AdminUpdateColumnDto adminUpdateColumnDto) { Long id = adminUpdateColumnDto.getId(); if(ObjectUtil.isEmpty(id)){ return Result.fail("栏目不存在"); } ColumnEntity columnEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(columnEntity)){ return Result.fail("栏目不存在"); } String columnName = adminUpdateColumnDto.getColumnName(); if(StrUtil.isEmpty(columnName)){ return Result.fail("请输入栏目名称"); } columnEntity.setColumnName(columnName); String columnCode = adminUpdateColumnDto.getColumnCode(); if(StrUtil.isEmpty(columnCode)){ return Result.fail("请输入栏目编码"); } QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("column_code",columnCode); List<ColumnEntity> columnEntities = this.baseMapper.selectList(objectQueryWrapper); if(CollUtil.isNotEmpty(columnEntities)){ return Result.fail("栏目编码不能重复"); } columnEntity.setColumnCode(columnCode); String describe = adminUpdateColumnDto.getDescribe(); if(StrUtil.isNotEmpty(describe)){ columnEntity.setDescribe(describe); } String pic = adminUpdateColumnDto.getPic(); if(StrUtil.isNotEmpty(pic)){ columnEntity.setPic(pic); } Integer orderNum = adminUpdateColumnDto.getOrderNum(); if(ObjectUtil.isNotEmpty(orderNum)){ columnEntity.setOrderNum(orderNum); } Long parentId = adminUpdateColumnDto.getParentId(); if(ObjectUtil.isEmpty(parentId)){ columnEntity.setParentId(ColumnEntity.PARENTID_DEFAULT); }else{ columnEntity.setParentId(parentId); } this.baseMapper.updateById(columnEntity); return Result.ok("更新成功"); } @Override public Result getColumnInList() { List<AdminColumnVo> records = this.baseMapper.selectColumnInListByParentId(ColumnEntity.PARENTID_DEFAULT); if(CollUtil.isNotEmpty(records)){ for(AdminColumnVo adminColumnVo : records){ Long id = adminColumnVo.getId(); QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("parent_id",id); List<ColumnEntity> columnEntities = this.baseMapper.selectList(objectQueryWrapper); List<AdminColumnVo> adminColumnVoChilds = new ArrayList<>(); if(CollUtil.isNotEmpty(columnEntities)){ for(ColumnEntity columnEntityChild : columnEntities){ AdminColumnVo child = new AdminColumnVo(); child.setId(columnEntityChild.getId()); child.setColumnName(columnEntityChild.getColumnName()); child.setColumnCode(columnEntityChild.getColumnCode()); child.setDescribe(columnEntityChild.getDescribe()); child.setPic(columnEntityChild.getPic()); child.setOrderNum(columnEntityChild.getOrderNum()); adminColumnVoChilds.add(child); } } adminColumnVo.setChild(adminColumnVoChilds); } } return Result.ok(records); } } src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/MenuServiceImpl.java
@@ -41,7 +41,6 @@ menuEntity.setParentId(MenuEntity.PARENTID_DEFAULT); IPage<AdminMenuVo> list = this.baseMapper.selectAdminMenuVoInPage(page,menuEntity); List<AdminMenuVo> records = list.getRecords(); list.getTotal(); if(CollUtil.isNotEmpty(records)){ for(AdminMenuVo adminMenuVo : records){ Long id = adminMenuVo.getId(); src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/NavigationBarServiceImpl.java
New file @@ -0,0 +1,202 @@ package com.xcong.farmer.cms.modules.system.service.Impl; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.modules.system.dto.AdminAddBarDto; import com.xcong.farmer.cms.modules.system.dto.AdminNavigationBarDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateBarDto; import com.xcong.farmer.cms.modules.system.entity.NavigationBarEntity; import com.xcong.farmer.cms.modules.system.mapper.NavigationBarMapper; import com.xcong.farmer.cms.modules.system.service.INavigationBarService; import com.xcong.farmer.cms.modules.system.vo.AdminNavigationBarVo; import com.xcong.farmer.cms.modules.system.vo.AdminSeeBarInfoVo; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ObjectUtil; import org.springframework.transaction.annotation.Transactional; @Service @Slf4j public class NavigationBarServiceImpl extends ServiceImpl<NavigationBarMapper, NavigationBarEntity> implements INavigationBarService { @Override public Result getBarInPage(AdminNavigationBarDto adminNavigationBarDto) { Page<AdminNavigationBarVo> page = new Page<>(adminNavigationBarDto.getPageNum(), adminNavigationBarDto.getPageSize()); NavigationBarEntity navigationBarEntity = new NavigationBarEntity(); navigationBarEntity.setParentId(NavigationBarEntity.PARENTID_DEFAULT); IPage<AdminNavigationBarVo> list = this.baseMapper.selectAdminNavigationBarVoInPage(page,navigationBarEntity); List<AdminNavigationBarVo> records = list.getRecords(); if(CollUtil.isNotEmpty(records)){ for(AdminNavigationBarVo adminNavigationBarVo : records){ Long id = adminNavigationBarVo.getId(); QueryWrapper<NavigationBarEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("parent_id",id); List<NavigationBarEntity> navigationBarEntities = this.baseMapper.selectList(objectQueryWrapper); List<AdminNavigationBarVo> adminNavigationBarVoChilds = new ArrayList<>(); if(CollUtil.isNotEmpty(navigationBarEntities)){ for(NavigationBarEntity navigationBarEntityChild : navigationBarEntities){ AdminNavigationBarVo child = new AdminNavigationBarVo(); child.setId(navigationBarEntityChild.getId()); child.setBarName(navigationBarEntityChild.getBarName()); child.setLinkUrl(navigationBarEntityChild.getLinkUrl()); child.setDescribe(navigationBarEntityChild.getDescribe()); child.setPic(navigationBarEntityChild.getPic()); child.setOrderNum(navigationBarEntityChild.getOrderNum()); adminNavigationBarVoChilds.add(child); } } adminNavigationBarVo.setChild(adminNavigationBarVoChilds); } } return Result.ok(list); } @Override @Transactional public Result addBar(AdminAddBarDto adminAddBarDto) { NavigationBarEntity navigationBarEntity = new NavigationBarEntity(); String barName = adminAddBarDto.getBarName(); if(StrUtil.isEmpty(barName)){ return Result.fail("请输入导航栏标题"); } navigationBarEntity.setBarName(barName); Long parentId = adminAddBarDto.getParentId(); if(ObjectUtil.isEmpty(parentId)){ navigationBarEntity.setParentId(NavigationBarEntity.PARENTID_DEFAULT); }else{ navigationBarEntity.setParentId(parentId); } String linkUrl = adminAddBarDto.getLinkUrl(); if(StrUtil.isNotEmpty(linkUrl)){ navigationBarEntity.setLinkUrl(linkUrl); } Integer orderNum = adminAddBarDto.getOrderNum(); if(ObjectUtil.isNotEmpty(orderNum)){ navigationBarEntity.setOrderNum(orderNum); } String pic = adminAddBarDto.getPic(); if(StrUtil.isNotEmpty(pic)){ navigationBarEntity.setPic(pic); } String describe = adminAddBarDto.getDescribe(); if(StrUtil.isNotEmpty(describe)){ navigationBarEntity.setDescribe(describe); } this.baseMapper.insert(navigationBarEntity); return Result.ok("添加成功"); } @Override @Transactional public Result deleteBar(Long id) { NavigationBarEntity navigationBarEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(navigationBarEntity)){ return Result.fail("导航栏不存在"); } QueryWrapper<NavigationBarEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("parent_id",id); List<NavigationBarEntity> navigationBarEntities = this.baseMapper.selectList(objectQueryWrapper); if(CollUtil.isNotEmpty(navigationBarEntities)){ return Result.fail("请先清空它的二级导航栏"); } this.baseMapper.deleteById(id); return Result.ok("删除成功"); } @Override public Result seeBarInfo(Long id) { NavigationBarEntity navigationBarEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(navigationBarEntity)){ return Result.fail("导航栏不存在"); } AdminSeeBarInfoVo adminSeeBarInfoVo = new AdminSeeBarInfoVo(); adminSeeBarInfoVo.setId(navigationBarEntity.getId()); adminSeeBarInfoVo.setBarName(navigationBarEntity.getBarName()); adminSeeBarInfoVo.setLinkUrl(navigationBarEntity.getLinkUrl()); adminSeeBarInfoVo.setDescribe(navigationBarEntity.getDescribe()); adminSeeBarInfoVo.setOrderNum(navigationBarEntity.getOrderNum()); adminSeeBarInfoVo.setPic(navigationBarEntity.getPic()); adminSeeBarInfoVo.setParentId(navigationBarEntity.getParentId()); return Result.ok(adminSeeBarInfoVo); } @Override @Transactional public Result updateBar(AdminUpdateBarDto adminUpdateMenuDto) { Long id = adminUpdateMenuDto.getId(); if(ObjectUtil.isEmpty(id)){ return Result.fail("导航栏不存在"); } NavigationBarEntity navigationBarEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(navigationBarEntity)){ return Result.fail("导航栏不存在"); } String barName = adminUpdateMenuDto.getBarName(); if(StrUtil.isEmpty(barName)){ return Result.fail("请输入导航栏标题"); } navigationBarEntity.setBarName(barName); Long parentId = adminUpdateMenuDto.getParentId(); if(ObjectUtil.isEmpty(parentId)){ navigationBarEntity.setParentId(NavigationBarEntity.PARENTID_DEFAULT); }else{ navigationBarEntity.setParentId(parentId); } String linkUrl = adminUpdateMenuDto.getLinkUrl(); if(StrUtil.isNotEmpty(linkUrl)){ navigationBarEntity.setLinkUrl(linkUrl); } Integer orderNum = adminUpdateMenuDto.getOrderNum(); if(ObjectUtil.isNotEmpty(orderNum)){ navigationBarEntity.setOrderNum(orderNum); } String pic = adminUpdateMenuDto.getPic(); if(StrUtil.isNotEmpty(pic)){ navigationBarEntity.setPic(pic); } String describe = adminUpdateMenuDto.getDescribe(); if(StrUtil.isNotEmpty(describe)){ navigationBarEntity.setDescribe(describe); } this.baseMapper.updateById(navigationBarEntity); return Result.ok("更新成功"); } @Override public Result getBarInList() { List<AdminNavigationBarVo> records = this.baseMapper.selectAdminNavigationBarVoByParentId(NavigationBarEntity.PARENTID_DEFAULT); if(CollUtil.isNotEmpty(records)){ for(AdminNavigationBarVo adminNavigationBarVo : records){ Long id = adminNavigationBarVo.getId(); QueryWrapper<NavigationBarEntity> objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("parent_id",id); List<NavigationBarEntity> navigationBarEntities = this.baseMapper.selectList(objectQueryWrapper); List<AdminNavigationBarVo> adminNavigationBarVoChilds = new ArrayList<>(); if(CollUtil.isNotEmpty(navigationBarEntities)){ for(NavigationBarEntity navigationBarEntityChild : navigationBarEntities){ AdminNavigationBarVo child = new AdminNavigationBarVo(); child.setId(navigationBarEntityChild.getId()); child.setBarName(navigationBarEntityChild.getBarName()); child.setLinkUrl(navigationBarEntityChild.getLinkUrl()); child.setDescribe(navigationBarEntityChild.getDescribe()); child.setPic(navigationBarEntityChild.getPic()); child.setOrderNum(navigationBarEntityChild.getOrderNum()); adminNavigationBarVoChilds.add(child); } } adminNavigationBarVo.setChild(adminNavigationBarVoChilds); } } return Result.ok(records); } } src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/RoleServiceImpl.java
@@ -11,14 +11,8 @@ import com.xcong.farmer.cms.modules.system.dto.AdminAddRoleDto; import com.xcong.farmer.cms.modules.system.dto.AdminRoleDto; import com.xcong.farmer.cms.modules.system.dto.AdminUpdateRoleDto; import com.xcong.farmer.cms.modules.system.entity.MenuEntity; import com.xcong.farmer.cms.modules.system.entity.RoleEntity; import com.xcong.farmer.cms.modules.system.entity.RoleMenuEntity; import com.xcong.farmer.cms.modules.system.entity.UserRoleEntity; import com.xcong.farmer.cms.modules.system.mapper.MenuMapper; import com.xcong.farmer.cms.modules.system.mapper.RoleMapper; import com.xcong.farmer.cms.modules.system.mapper.RoleMenuMapper; import com.xcong.farmer.cms.modules.system.mapper.UserRoleMapper; import com.xcong.farmer.cms.modules.system.entity.*; import com.xcong.farmer.cms.modules.system.mapper.*; import com.xcong.farmer.cms.modules.system.service.IRoleService; import com.xcong.farmer.cms.modules.system.vo.AdminMenuInfoVo; import com.xcong.farmer.cms.modules.system.vo.AdminRoleVo; @@ -44,6 +38,8 @@ private RoleMenuMapper roleMenuMapper; @Resource private UserRoleMapper userRoleMapper; @Resource private UserMapper userMapper; @Resource private MenuMapper menuMapper; @@ -151,6 +147,16 @@ if(StrUtil.isNotEmpty(menuIds)){ saveRoleMenus(menuIds,id); } QueryWrapper<UserEntity> userWrapper = new QueryWrapper<>(); userWrapper.eq("role_id",id); List<UserEntity> userEntities = userMapper.selectList(userWrapper); if(CollUtil.isNotEmpty(userEntities)){ for(UserEntity userEntity : userEntities){ userEntity.setRoleName(roleName); userMapper.updateById(userEntity); } } return Result.ok("更新成功"); } src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminArticleVo.java
New file @@ -0,0 +1,51 @@ package com.xcong.farmer.cms.modules.system.vo; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(value = "AdminArticleVo", description = "文章列表返回") public class AdminArticleVo { private Long id; @ApiModelProperty(value = "标题") private String title; @ApiModelProperty(value = "标题") private String childTitle; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "所属栏目ID") private Long columnId; @ApiModelProperty(value = "所属栏目名称") private Long columnName; @ApiModelProperty(value = "访问量") private Integer visits; @ApiModelProperty(value = "主图") private String mainDiagram; @ApiModelProperty(value = "图集") private String atlas; @ApiModelProperty(value = "发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date releaseTime; @ApiModelProperty(value = "是否立即发布 0:否 1:是") private Integer releaseStatus; @ApiModelProperty(value = "文章详情") private String articleDetails; @ApiModelProperty(value = "是否删除 0:已删除 1:未删除") private Integer delStatus; } src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminColumnVo.java
New file @@ -0,0 +1,31 @@ package com.xcong.farmer.cms.modules.system.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; @Data @ApiModel(value = "AdminColumnVo", description = "栏目列表返回") public class AdminColumnVo { private Long id; @ApiModelProperty(value = "栏目名称") private String columnName; @ApiModelProperty(value = "栏目编码") private String columnCode; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "排序") private Integer orderNum; @ApiModelProperty(value = "图片") private String pic; @ApiModelProperty(value = "子菜单") private List<AdminColumnVo> child; } src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminNavigationBarVo.java
New file @@ -0,0 +1,33 @@ package com.xcong.farmer.cms.modules.system.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; @Data @ApiModel(value = "AdminNavigationBarVo", description = "导航栏列表返回") public class AdminNavigationBarVo { private Long id; //导航栏标题 @ApiModelProperty(value = "导航栏标题") private String barName; //链接地址 @ApiModelProperty(value = "链接地址") private String linkUrl; //描述 @ApiModelProperty(value = "描述") private String describe; //排序 @ApiModelProperty(value = "排序") private Integer orderNum; //图片 @ApiModelProperty(value = "图片") private String pic; @ApiModelProperty(value = "子菜单") private List<AdminNavigationBarVo> child; } src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeArticleInfoVo.java
New file @@ -0,0 +1,45 @@ package com.xcong.farmer.cms.modules.system.vo; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(value = "AdminSeeArticleInfoVo", description = "文章返回") public class AdminSeeArticleInfoVo { private Long id; @ApiModelProperty(value = "标题") private String title; @ApiModelProperty(value = "标题") private String childTitle; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "所属栏目ID") private Long columnId; @ApiModelProperty(value = "访问量") private Integer visits; @ApiModelProperty(value = "主图") private String mainDiagram; @ApiModelProperty(value = "图集") private String atlas; @ApiModelProperty(value = "发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date releaseTime; @ApiModelProperty(value = "是否立即发布 0:否 1:是") private Integer releaseStatus; @ApiModelProperty(value = "文章详情") private String articleDetails; } src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeBarInfoVo.java
New file @@ -0,0 +1,30 @@ package com.xcong.farmer.cms.modules.system.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminSeeBarInfoVo", description = "导航栏返回") public class AdminSeeBarInfoVo { private Long id; //导航栏标题 @ApiModelProperty(value = "导航栏标题") private String barName; //链接地址 @ApiModelProperty(value = "链接地址") private String linkUrl; //描述 @ApiModelProperty(value = "描述") private String describe; //排序 @ApiModelProperty(value = "排序") private Integer orderNum; //图片 @ApiModelProperty(value = "图片") private String pic; //上级类目ID @ApiModelProperty(value = "上级类目ID") private Long parentId; } src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeColumnInfoVo.java
New file @@ -0,0 +1,30 @@ package com.xcong.farmer.cms.modules.system.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "AdminSeeColumnInfoVo", description = "栏目返回") public class AdminSeeColumnInfoVo { private Long id; @ApiModelProperty(value = "栏目名称") private String columnName; @ApiModelProperty(value = "栏目编码") private String columnCode; @ApiModelProperty(value = "描述") private String describe; @ApiModelProperty(value = "排序") private Integer orderNum; @ApiModelProperty(value = "图片") private String pic; @ApiModelProperty(value = "上级类目ID") private Long parentId; } src/main/resources/mapper/ArticleMapper.xml
New file @@ -0,0 +1,33 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.xcong.farmer.cms.modules.system.mapper.ArticleMapper"> <select id="selectAdminArticleInPage" resultType="com.xcong.farmer.cms.modules.system.vo.AdminArticleVo"> SELECT a.*, b.column_name columnName FROM t_article a left join t_column b on a.column_id = b.id <where> and a.del_status = 1 <if test="record != null" > <if test="record.columnId != null"> and a.column_id = #{record.columnId} </if> <if test="record.title!=null"> and a.title like concat ('%',#{record.title},'%') </if> </if> </where> order by a.create_time desc </select> <select id="selectAdminArticleByid" resultType="com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo"> SELECT a.* FROM t_article a where id = #{id} </select> </mapper> src/main/resources/mapper/ColumnMapper.xml
New file @@ -0,0 +1,29 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.xcong.farmer.cms.modules.system.mapper.ColumnMapper"> <select id="selectAdminColumnVoInPage" resultType="com.xcong.farmer.cms.modules.system.vo.AdminColumnVo"> SELECT a.* FROM t_column a <where> <if test="record != null" > <if test="record.parentId != null"> and a.parent_id = #{record.parentId} </if> </if> </where> order by a.create_time desc </select> <select id="selectColumnInListByParentId" resultType="com.xcong.farmer.cms.modules.system.vo.AdminColumnVo"> SELECT a.* FROM t_column a where a.parent_id = #{parentId} order by a.create_time desc </select> </mapper> src/main/resources/mapper/NavigationBarMapper.xml
New file @@ -0,0 +1,29 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.xcong.farmer.cms.modules.system.mapper.NavigationBarMapper"> <select id="selectAdminNavigationBarVoInPage" resultType="com.xcong.farmer.cms.modules.system.vo.AdminNavigationBarVo"> SELECT a.* FROM t_navigation_bar a <where> <if test="record != null" > <if test="record.parentId != null"> and a.parent_id = #{record.parentId} </if> </if> </where> order by a.create_time desc </select> <select id="selectAdminNavigationBarVoByParentId" resultType="com.xcong.farmer.cms.modules.system.vo.AdminNavigationBarVo"> SELECT a.* FROM t_navigation_bar a where a.parent_id = #{parentId} order by a.create_time desc </select> </mapper>