From 9f091d8653a854c8fcd8164ded2acb3888e0e2c7 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 11 Jul 2022 14:11:27 +0800 Subject: [PATCH] fix --- src/main/java/com/xcong/farmer/cms/core/handler/ArticleDataParserHandler.java | 33 ++++++++++++++++++++++----------- 1 files changed, 22 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/xcong/farmer/cms/core/handler/ArticleDataParserHandler.java b/src/main/java/com/xcong/farmer/cms/core/handler/ArticleDataParserHandler.java index a8c1e0d..c73ba7b 100644 --- a/src/main/java/com/xcong/farmer/cms/core/handler/ArticleDataParserHandler.java +++ b/src/main/java/com/xcong/farmer/cms/core/handler/ArticleDataParserHandler.java @@ -32,25 +32,36 @@ Article tag = (Article) node.getParam(); ArticleEntity data = articleMapper.selectById(tag.getId()); + ArticleData articleData = ArticleConversion.INSTANCE.entityToData(data); + ArticleEntity prevEntity = articleMapper.selectPrevOrNextArticle(data.getId(), data.getColumnId(), 1); - ArticleData prev = ArticleConversion.INSTANCE.entityToData(prevEntity); - if (prevEntity.getType() == 2) { - prev.setUrl(prevEntity.getArticleUrl()); + if (prevEntity != null) { + ArticleData prev = ArticleConversion.INSTANCE.entityToData(prevEntity); + if (prevEntity.getType() == 2) { + prev.setUrl(prevEntity.getArticleUrl()); + } else { + prev.setUrl(cmsProperties.getBaseUrl() + prevEntity.getPath() + "/" + prevEntity.getId() + ".html"); + } + + articleData.setPrev(prev); } else { - prev.setUrl(cmsProperties.getBaseUrl() + prevEntity.getPath() + "/" + prevEntity.getId() + ".html"); + articleData.setPrev(new ArticleData()); } ArticleEntity nextEntity = articleMapper.selectPrevOrNextArticle(data.getId(), data.getColumnId(), 2); - ArticleData next = ArticleConversion.INSTANCE.entityToData(nextEntity); - if (nextEntity.getType() == 2) { - next.setUrl(prevEntity.getArticleUrl()); + if (nextEntity != null) { + ArticleData next = ArticleConversion.INSTANCE.entityToData(nextEntity); + if (nextEntity.getType() == 2) { + next.setUrl(nextEntity.getArticleUrl()); + } else { + next.setUrl(cmsProperties.getBaseUrl() + nextEntity.getPath() + "/" + nextEntity.getId() + ".html"); + } + + articleData.setNext(next); } else { - next.setUrl(cmsProperties.getBaseUrl() + nextEntity.getPath() + "/" + nextEntity.getId() + ".html"); + articleData.setNext(new ArticleData()); } - ArticleData articleData = ArticleConversion.INSTANCE.entityToData(data); - articleData.setNext(next); - articleData.setPrev(prev); node.setData(articleData); } } -- Gitblit v1.9.1