diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.java b/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.java index e324fb0..15a6be2 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.java @@ -75,5 +75,5 @@ public interface ArticleMapper public List selectChildrenById(Long id); - ArticleVO selectArticleByCode(ArticleCategoryQuery articleCategoryQuery); + ArticleVO selectArticleByCode(ArticleQuery articleQuery); } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.xml b/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.xml index f97c0ba..10be760 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.xml +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/article/mapper/ArticleMapper.xml @@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -34,6 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and bart.brief = #{query.brief} and bart.title like concat ('',#{query.title},'') and bart.content = #{query.content} + and bart.code = #{query.code} ${query.params.dataScope} @@ -55,8 +57,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" @@ -68,6 +70,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" brief, create_time, update_time, + code, #{categoryId}, @@ -76,6 +79,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{brief}, #{createTime}, #{updateTime}, + #{code}, @@ -182,6 +186,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" content = #{data.content}, create_time = #{data.createTime}, update_time = #{data.updateTime}, + code = #{data.code}, diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/ArticleService.java b/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/ArticleService.java index 84f8074..99dfac1 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/ArticleService.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/ArticleService.java @@ -63,7 +63,7 @@ public interface ArticleService public int deleteArticleById(Long id); - ArticleVO selectArticleByCode(ArticleCategoryQuery articleCategoryQuery); + ArticleVO selectArticleByCode(ArticleQuery articleQuery); List selectArticleByCategoryId(Long categoryId); } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/impl/ArticleServiceImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/impl/ArticleServiceImpl.java index 3b527df..45ef763 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/impl/ArticleServiceImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/article/service/impl/ArticleServiceImpl.java @@ -8,6 +8,7 @@ import com.ruoyi.bst.articleCategory.domain.ArticleCategoryQuery; import com.ruoyi.bst.articleCategory.domain.ArticleCategoryVO; import com.ruoyi.bst.articleCategory.domain.enums.ArticleCategoryStatus; import com.ruoyi.bst.articleCategory.service.ArticleCategoryService; +import com.ruoyi.bst.device.domain.DeviceVO; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.ServiceUtil; @@ -18,6 +19,7 @@ import com.ruoyi.bst.article.domain.Article; import com.ruoyi.bst.article.domain.ArticleVO; import com.ruoyi.bst.article.domain.ArticleQuery; import com.ruoyi.bst.article.service.ArticleService; +import org.springframework.transaction.support.TransactionTemplate; import javax.print.ServiceUI; @@ -35,6 +37,9 @@ public class ArticleServiceImpl implements ArticleService @Autowired private ArticleCategoryService articleCategoryService; + + @Autowired + private TransactionTemplate transactionTemplate; /** * 查询文章 @@ -74,8 +79,21 @@ public class ArticleServiceImpl implements ArticleService if (articleCategoryVO.getCategoryStatus().equals(ArticleCategoryStatus.DISABLED.getCode())){ ServiceUtil.assertion(true,"该分类已被禁用"); } - article.setCreateTime(DateUtils.getNowDate()); - return articleMapper.insertArticle(article); + + Integer result = transactionTemplate.execute(status -> { + + int insert = articleMapper.insertArticle(article); + ServiceUtil.assertion(insert != 1,"新增文章失败"); + ArticleVO vo = this.selectArticleById(article.getId()); + + ArticleQuery articleQuery = new ArticleQuery(); + articleQuery.setId(vo.getId()); + articleQuery.setCode(vo.getCode()); + ArticleVO articleVO = articleMapper.selectArticleByCode(articleQuery); + ServiceUtil.assertion(articleVO != null,"该指南已存在"); + return insert; + }); + return result == null ? 0:result; } /** @@ -93,6 +111,11 @@ public class ArticleServiceImpl implements ArticleService ServiceUtil.assertion(true,"该分类已被禁用"); } article.setUpdateTime(DateUtils.getNowDate()); + ArticleQuery articleQuery = new ArticleQuery(); + articleQuery.setId(article.getId()); + articleQuery.setCode(article.getCode()); + ArticleVO articleVO = articleMapper.selectArticleByCode(articleQuery); + ServiceUtil.assertion(articleVO != null,"该指南已存在"); return articleMapper.updateArticle(article); } @@ -122,8 +145,8 @@ public class ArticleServiceImpl implements ArticleService @Override - public ArticleVO selectArticleByCode(ArticleCategoryQuery articleCategoryQuery) { - return articleMapper.selectArticleByCode(articleCategoryQuery); + public ArticleVO selectArticleByCode(ArticleQuery articleQuery) { + return articleMapper.selectArticleByCode(articleQuery); } @Override diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/articleCategory/domain/ArticleCategoryQuery.java b/ruoyi-service/src/main/java/com/ruoyi/bst/articleCategory/domain/ArticleCategoryQuery.java index 1d31db4..e41aebd 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/articleCategory/domain/ArticleCategoryQuery.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/articleCategory/domain/ArticleCategoryQuery.java @@ -6,6 +6,5 @@ import lombok.Data; @Data public class ArticleCategoryQuery extends ArticleCategoryVO { - @ApiModelProperty("指南编号") - private String code; + } diff --git a/ruoyi-web/src/main/java/com/ruoyi/web/app/AppAtricleCategoryController.java b/ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleCategoryController.java similarity index 88% rename from ruoyi-web/src/main/java/com/ruoyi/web/app/AppAtricleCategoryController.java rename to ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleCategoryController.java index 5065ff9..434756e 100644 --- a/ruoyi-web/src/main/java/com/ruoyi/web/app/AppAtricleCategoryController.java +++ b/ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleCategoryController.java @@ -25,7 +25,7 @@ import java.util.List; @RestController @RequestMapping("/app/articleCategory") -public class AppAtricleCategoryController extends BaseController { +public class AppArticleCategoryController extends BaseController { @Autowired private ArticleCategoryService articleCategoryService; @@ -33,13 +33,6 @@ public class AppAtricleCategoryController extends BaseController { @Autowired private ArticleService articleService; - @ApiOperation("租/用车指南") - @GetMapping("/{code}") - @Anonymous - public AjaxResult getGuide(ArticleCategoryQuery articleCategoryQuery) { - startPage(); - return AjaxResult.success(articleService.selectArticleByCode(articleCategoryQuery)); - } @ApiOperation("查询所有文章分类信息") @GetMapping("/list") diff --git a/ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleController.java b/ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleController.java new file mode 100644 index 0000000..d7bcf7e --- /dev/null +++ b/ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleController.java @@ -0,0 +1,32 @@ +package com.ruoyi.web.app; + +import com.ruoyi.bst.article.domain.ArticleQuery; +import com.ruoyi.bst.article.service.ArticleService; +import com.ruoyi.common.annotation.Anonymous; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +@RestController +@RequestMapping("/app/article") +public class AppArticleController extends BaseController { + + + @Autowired + private ArticleService articleService; + + @ApiOperation("租/用车指南") + @GetMapping("/guide") + @Anonymous + public AjaxResult getGuide(ArticleQuery articleQuery) { + startPage(); + return AjaxResult.success(articleService.selectArticleList(articleQuery)); + } + +}