Prechádzať zdrojové kódy

标签接口优化 去重报错,空格优化

fangqing 4 mesiacov pred
rodič
commit
ccb9af85e1

+ 16 - 1
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityTagController.java

@@ -8,9 +8,11 @@ import com.ruoyi.common.exception.user.ProjectException;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.generator.domain.Community.CommunityArticleRecommend;
 import com.ruoyi.generator.domain.Community.CommunityTag;
 import com.ruoyi.generator.domain.Community.CommunityTagBlock;
 import com.ruoyi.generator.mapper.community.CommunityTagBlockMapper;
+import com.ruoyi.generator.mapper.community.CommunityTagMapper;
 import com.ruoyi.generator.service.ICommunityTagService;
 import com.ruoyi.generator.vo.CommunityTagVo;
 import io.swagger.annotations.Api;
@@ -41,6 +43,9 @@ public class CommunityTagController extends BaseController {
     @Autowired
     private CommunityTagBlockMapper communityTagBlockMapper;
 
+    @Autowired
+    private CommunityTagMapper communityTagMapper;
+
     /**
      * 获取标签信息
      */
@@ -137,7 +142,7 @@ public class CommunityTagController extends BaseController {
         try {
             CommunityTag communityTag = new CommunityTag();
             Long userId = SecurityUtils.getUserId();
-            communityTag.setTagName(tagName);
+            communityTag.setTagName(tagName.replaceAll("(?<=\\p{L})\\s+(?=\\p{N})|(?<=\\p{N})\\s+(?=\\p{L})|(?<=\\p{L})\\s+(?=\\p{L})", ""));
             communityTag.setTagHot(0L);
             communityTag.setDelete(false);
             communityTag.setCreateBy(userId);
@@ -148,6 +153,16 @@ public class CommunityTagController extends BaseController {
             communityTag.setAttribute5(attribute5);
             communityTag.setCreateTime(DateUtils.parseDate(DateUtils.getTime()));
             System.out.println("communityTag: " + communityTag);
+
+            //判断标签名称是否重复
+            CommunityTag CommunityTag2 = communityTagMapper.selectOne(new QueryWrapper<CommunityTag>()
+                    .eq("tag_name", communityTag.getTagName())
+                    .and((wrapper) -> {
+                        wrapper.ne("is_delete", true).or().isNull("is_delete");
+                    }));
+            if (CommunityTag2 != null) {
+                return AjaxResult.error("标签名称重复");
+            }
             communityTagService.save(communityTag);
         } catch (Exception e) {
             System.out.println(e.getMessage());