From 32ff7efdd4ab0342851b25bee83db60654413d97 Mon Sep 17 00:00:00 2001 From: SjS Date: Tue, 29 Apr 2025 18:20:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=9F=E8=BD=A6=E6=8C=87=E5=8D=97=E7=94=A8?= =?UTF-8?q?=E8=BD=A6=E6=8C=87=E5=8D=97=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bst/article/mapper/ArticleMapper.java | 2 +- .../bst/article/mapper/ArticleMapper.xml | 9 ++++-- .../bst/article/service/ArticleService.java | 2 +- .../service/impl/ArticleServiceImpl.java | 31 +++++++++++++++--- .../domain/ArticleCategoryQuery.java | 3 +- ...java => AppArticleCategoryController.java} | 9 +----- .../ruoyi/web/app/AppArticleController.java | 32 +++++++++++++++++++ 7 files changed, 70 insertions(+), 18 deletions(-) rename ruoyi-web/src/main/java/com/ruoyi/web/app/{AppAtricleCategoryController.java => AppArticleCategoryController.java} (88%) create mode 100644 ruoyi-web/src/main/java/com/ruoyi/web/app/AppArticleController.java 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)); + } + +}