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 297e1d6..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 CmsProperties cmsProperties = SpringContextHolder.getBean(CmsProperties.class);
+ private ColumnMapper columnMapper = SpringContextHolder.getBean(ColumnMapper.class);
@Override
public void dataParser(AttrNode attrNode) {
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 = cmsProperties.getBaseUrl() + "/" + 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