From 6a07f220e8f855740eee9b9dcae75464d6266380 Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Thu, 20 Oct 2022 22:53:10 +0800
Subject: [PATCH] 修复分页死循环
---
src/main/java/com/xcong/farmer/cms/core/handler/FriendlyDataParserHandler.java | 37 +++++++++++++++++++++++++++++++++++++
1 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/xcong/farmer/cms/core/handler/FriendlyDataParserHandler.java b/src/main/java/com/xcong/farmer/cms/core/handler/FriendlyDataParserHandler.java
index ced3c1b..56ad076 100644
--- a/src/main/java/com/xcong/farmer/cms/core/handler/FriendlyDataParserHandler.java
+++ b/src/main/java/com/xcong/farmer/cms/core/handler/FriendlyDataParserHandler.java
@@ -1,6 +1,18 @@
package com.xcong.farmer.cms.core.handler;
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
import com.xcong.farmer.cms.core.node.AttrNode;
+import com.xcong.farmer.cms.core.tag.data.FriendlyData;
+import com.xcong.farmer.cms.core.tag.model.Ad;
+import com.xcong.farmer.cms.core.tag.model.Friendly;
+import com.xcong.farmer.cms.modules.system.entity.CmsFriendlyLinkEntity;
+import com.xcong.farmer.cms.modules.system.mapper.CmsFriendlyLinkMapper;
+import com.xcong.farmer.cms.utils.SpringContextHolder;
+
+import java.util.ArrayList;
+import java.util.List;
/**
* @author wzy
@@ -8,8 +20,33 @@
**/
public class FriendlyDataParserHandler implements DataParserHandler{
+ private final CmsFriendlyLinkMapper cmsFriendlyLinkMapper = SpringContextHolder.getBean(CmsFriendlyLinkMapper.class);
+
@Override
public void dataParser(AttrNode attrNode) {
+ Long companyId = (Long) attrNode.getSystemDataValue("companyId");
+ Friendly param = (Friendly) attrNode.getParam();
+ List<CmsFriendlyLinkEntity> friendlies = null;
+ if (StrUtil.isNotBlank(param.getGroupId())) {
+ friendlies = cmsFriendlyLinkMapper.selectByGroupIdAndCompanyId(Long.parseLong(param.getGroupId()), companyId);
+ } else {
+ friendlies = cmsFriendlyLinkMapper.selectByGroupCodeAndCompanyId(param.getCode(), companyId);
+ }
+
+ if (CollUtil.isEmpty(friendlies)) {
+ attrNode.setData(new FriendlyData());
+ } else {
+ List<FriendlyData> list = new ArrayList<>();
+
+ for (int i = 0; i < friendlies.size(); i++) {
+ FriendlyData data = new FriendlyData();
+ BeanUtil.copyProperties(friendlies.get(i), data);
+ data.setIndex(i + 1);
+ list.add(data);
+ }
+
+ attrNode.setData(list);
+ }
}
}
--
Gitblit v1.9.1