From a62596b736d8a6c53aefbf47e3938f0c835e7305 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 08 Aug 2022 14:20:21 +0800
Subject: [PATCH] fix
---
src/main/java/com/xcong/farmer/cms/core/handler/PageDataParserHandler.java | 13 ++++++++++++-
src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java | 1 +
src/main/resources/mapper/ColumnMapper.xml | 5 +++++
3 files changed, 18 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/xcong/farmer/cms/core/handler/PageDataParserHandler.java b/src/main/java/com/xcong/farmer/cms/core/handler/PageDataParserHandler.java
index 1bcdd09..ea4235c 100644
--- a/src/main/java/com/xcong/farmer/cms/core/handler/PageDataParserHandler.java
+++ b/src/main/java/com/xcong/farmer/cms/core/handler/PageDataParserHandler.java
@@ -10,9 +10,12 @@
import com.xcong.farmer.cms.core.tag.data.PageChildData;
import com.xcong.farmer.cms.core.tag.data.PageData;
import com.xcong.farmer.cms.core.tag.model.Article;
+import com.xcong.farmer.cms.core.tag.model.Column;
import com.xcong.farmer.cms.core.tag.model.Pagination;
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.utils.SpringContextHolder;
import lombok.extern.slf4j.Slf4j;
@@ -27,6 +30,7 @@
public class PageDataParserHandler implements DataParserHandler {
private ArticleMapper articleMapper = SpringContextHolder.getBean(ArticleMapper.class);
+ private ColumnMapper columnMapper = SpringContextHolder.getBean(ColumnMapper.class);
@Override
public void dataParser(AttrNode attrNode) {
// log.info("分页解析");
@@ -49,7 +53,14 @@
pageData.setTotalCnt((int) pageList.getSize());
if (CollUtil.isNotEmpty(pageList.getRecords())) {
- String path = baseUrl + "/" + param.getCode();
+ ColumnEntity parentColumn = columnMapper.selectParentColumnByCodeAndCompanyId(param.getCode(), companyId);
+ String path;
+ if (parentColumn == null) {
+ path = baseUrl + "/" + param.getCode();
+ } else {
+ path = baseUrl + "/" + parentColumn.getColumnCode() + "/" + param.getCode();
+ }
+
String filename = "index_{}.html";
List<PageChildData> list = new ArrayList<>();
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
index 0ddbb20..ec08bad 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
@@ -17,6 +17,7 @@
List<AdminColumnVo> selectColumnInListByParentId(@Param("parentId") Long parentidDefault, @Param("companyId") Long companyId);
ColumnEntity selectByCodeAndCompanyId(@Param("code") String code, @Param("companyId") Long companyId);
+ ColumnEntity selectParentColumnByCodeAndCompanyId(@Param("code") String code, @Param("companyId") Long companyId);
List<ColumnEntity> selectColumnByParentId(@Param("parentId") Long parentId, @Param("companyId") Long companyId, @Param("isNav") Integer isNav);
diff --git a/src/main/resources/mapper/ColumnMapper.xml b/src/main/resources/mapper/ColumnMapper.xml
index e4022c0..33b504b 100644
--- a/src/main/resources/mapper/ColumnMapper.xml
+++ b/src/main/resources/mapper/ColumnMapper.xml
@@ -34,6 +34,11 @@
where column_code=#{code} and company_id=#{companyId}
</select>
+ <select id="selectParentColumnByCodeAndCompanyId" resultType="com.xcong.farmer.cms.modules.system.entity.ColumnEntity">
+ select a.* from t_column a, t_column b
+ where b.column_code=#{code} and b.company_id=#{companyId} and a.id=b.parent_id
+ </select>
+
<select id="selectColumnByParentId" resultType="com.xcong.farmer.cms.modules.system.entity.ColumnEntity">
select * from t_column
where parent_id=#{parentId} and company_id=#{companyId}
--
Gitblit v1.9.1