From 51ea662e22121f9a0ddb5b40c4a8e93e098b34ec Mon Sep 17 00:00:00 2001 From: Hentua <wangdoubleone@gmail.com> Date: Wed, 10 Jan 2024 22:22:44 +0800 Subject: [PATCH] fxi --- src/main/java/com/xcong/farmer/cms/core/handler/PageDataParserHandler.java | 23 ++++++++++++++++++++--- 1 files changed, 20 insertions(+), 3 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..09b2ab5 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,15 +30,22 @@ 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("分页解析"); + log.info("分页解析"); synchronized (this) { Template.HAS_PAGING = true; + String baseUrl = (String) attrNode.getSystemDataValue("baseUrl"); Long companyId = (Long) attrNode.getSystemDataValue("companyId"); Pagination param = (Pagination) attrNode.getParam(); + + Object pageNum = attrNode.getSystemDataValue("page"); + if (pageNum != null) { + param.setPage(pageNum.toString()); + } Page<ArticleEntity> page = new Page<>(Integer.parseInt(param.getPage()), Integer.parseInt(param.getLimit())); ArticleEntity article = new ArticleEntity(); @@ -49,7 +59,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<>(); @@ -60,7 +77,7 @@ for (int i = startAndEnd[0]; i <= startAndEnd[1]; i++) { PageChildData child = new PageChildData(); child.setIndex(i); - if (pageNo == 1) { + if (i == 1) { child.setPath(path + "/index.html"); } else { child.setPath(path + "/" + StrUtil.format(filename, i)); -- Gitblit v1.9.1