From ab9066e00429cec617724a943da45d91cb812835 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 08 Jul 2022 16:36:06 +0800
Subject: [PATCH] fix
---
src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java | 78 +++++++++++++++++++++------------------
1 files changed, 42 insertions(+), 36 deletions(-)
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java
index 8435fda..5a88510 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java
@@ -1,11 +1,13 @@
package com.xcong.farmer.cms.modules.system.service.Impl;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xcong.farmer.cms.common.contants.AppContants;
import com.xcong.farmer.cms.common.response.Result;
import com.xcong.farmer.cms.modules.core.service.ICmsCoreService;
import com.xcong.farmer.cms.modules.system.dto.*;
@@ -24,6 +26,7 @@
import org.springframework.stereotype.Service;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import java.util.Date;
@@ -53,32 +56,32 @@
long companyId = userlogin.getCompanyId() == null ? UserEntity.USER_BELONG_TOP : userlogin.getCompanyId();
Page<AdminArticleVo> page = new Page<>(adminArticleDto.getPageNum(), adminArticleDto.getPageSize());
ArticleEntity articleEntity = new ArticleEntity();
- Long columnId = adminArticleDto.getColumnId() == null ? 0L : adminArticleDto.getColumnId();
- if(columnId != 0L){
- articleEntity.setColumnId(columnId);
+ String columnIdStrs = adminArticleDto.getColumnIdStr();
+ if(StrUtil.isNotEmpty(columnIdStrs)){
+ String[] columnIdStr = columnIdStrs.split(StringPool.COMMA);
+ List<Long> columnList = new ArrayList<>();
+ for(String columnIdString : columnIdStr){
+ columnList.add(Long.valueOf(columnIdString));
+ }
+ articleEntity.setColumnList(columnList);
}
String title = adminArticleDto.getTitle();
if(StrUtil.isNotEmpty(title)){
articleEntity.setTitle(title);
}
- Integer contentType = adminArticleDto.getContentType() == null ? 0 : adminArticleDto.getContentType();
- if(contentType != 0){
- QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>();
- objectQueryWrapper.eq("content_type",contentType);
- List<ColumnEntity> columnEntities = columnMapper.selectList(objectQueryWrapper);
- if(CollUtil.isNotEmpty(columnEntities)){
- List<Long> columIds = new ArrayList<>();
- for(ColumnEntity columnEntity : columnEntities){
- Long id = columnEntity.getId();
- columIds.add(id);
- }
- articleEntity.setColumnIds(columIds);
- }
- }
+
if(UserEntity.USER_BELONG_TOP != companyId){
articleEntity.setCompanyId(companyId);
}
IPage<AdminArticleVo> list = this.baseMapper.selectAdminArticleInPage(page,articleEntity);
+ if (CollUtil.isNotEmpty(list.getRecords())) {
+ for (AdminArticleVo record : list.getRecords()) {
+ // 站内
+ if (record.getType() == 1) {
+ record.setArticleUrl(record.getBaseUrl() + record.getPath() + "/" + record.getId() + ".html");
+ }
+ }
+ }
return Result.ok(list);
}
@@ -117,9 +120,6 @@
articleEntity.setIsTop(isTop);
Integer releaseStatus = adminAddArticleDto.getReleaseStatus();
articleEntity.setReleaseStatus(releaseStatus);
- if(ArticleEntity.RELEASE_STATUS_YES == releaseStatus){
- articleEntity.setReleaseTime(new Date());
- }
String articleDetails = adminAddArticleDto.getArticleDetails();
articleEntity.setArticleDetails(articleDetails);
String uploadFile = adminAddArticleDto.getUploadFile();
@@ -191,9 +191,6 @@
}
Integer releaseStatus = adminUpdateArticleDto.getReleaseStatus();
articleEntity.setReleaseStatus(releaseStatus);
- if(ArticleEntity.RELEASE_STATUS_YES == releaseStatus){
- articleEntity.setReleaseTime(new Date());
- }
String articleDetails = adminUpdateArticleDto.getArticleDetails();
articleEntity.setArticleDetails(articleDetails);
String uploadFile = adminUpdateArticleDto.getUploadFile();
@@ -259,17 +256,8 @@
@Override
public Result webArticleInPage(HttpServletRequest request, WebArticleInPageDto webArticleInPageDto) {
- StringBuffer requestURL = request.getRequestURL();
- List<CompanyEntity> companyEntities = companyMapper.selectList(new QueryWrapper<>());
- Long companyId = 0L;
- if(CollUtil.isNotEmpty(companyEntities)){
- for(CompanyEntity companyEntity : companyEntities){
- boolean contains = StrUtil.contains(requestURL, companyEntity.getWebAddress());
- if(contains){
- companyId = companyEntity.getId();
- }
- }
- }
+ String website = request.getHeader(AppContants.WEBSITE_HEADER);
+ Long companyId = getCompanyIdFromWebsite(website);
Page<WebArticleVo> page = new Page<>(webArticleInPageDto.getPageNum(), webArticleInPageDto.getPageSize());
ArticleEntity articleEntity = new ArticleEntity();
@@ -288,21 +276,39 @@
if(UserEntity.USER_BELONG_TOP != companyId){
articleEntity.setCompanyId(companyId);
}
+ String timeType = webArticleInPageDto.getTimeType();
+ if(StrUtil.isNotEmpty(timeType)){
+ articleEntity.setTimeType(timeType);
+ }
IPage<WebArticleVo> list = this.baseMapper.selectWebArticleInPage(page,articleEntity);
return Result.ok(list);
}
@Override
public Result updateStatusOn(Long id) {
+ Long companyId = LoginUserUtil.getCompanyId();
ArticleEntity articleEntity = this.baseMapper.selectById(id);
if(ObjectUtil.isEmpty(articleEntity)){
return Result.fail("文章不存在");
}
articleEntity.setReleaseStatus(ArticleEntity.RELEASE_STATUS_YES);
- articleEntity.setReleaseTime(new Date());
this.baseMapper.updateById(articleEntity);
- releaseService.releaseArticle(articleEntity.getId());
+ releaseService.releaseArticle(articleEntity.getId(), companyId);
return Result.ok("操作成功");
}
+
+ private Long getCompanyIdFromWebsite(String website){
+ List<CompanyEntity> companyEntities = companyMapper.selectList(new QueryWrapper<>());
+ Long companyId = 0L;
+ if(CollUtil.isNotEmpty(companyEntities)){
+ for(CompanyEntity companyEntity : companyEntities){
+ boolean contains = StrUtil.contains(companyEntity.getWebAddress(), website);
+ if(contains){
+ companyId = companyEntity.getId();
+ }
+ }
+ }
+ return companyId;
+ }
}
--
Gitblit v1.9.1