From cf566cbe51e917833f3e4e9820b8656b9c7c6a7c Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 11 Jul 2022 11:21:30 +0800 Subject: [PATCH] fix --- src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java | 67 ++++++++++++++++++--------------- 1 files changed, 37 insertions(+), 30 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 ebeed62..6fb640a 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,6 +1,7 @@ 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; @@ -15,6 +16,7 @@ import com.xcong.farmer.cms.modules.system.mapper.ColumnMapper; import com.xcong.farmer.cms.modules.system.mapper.CompanyMapper; import com.xcong.farmer.cms.modules.system.service.IArticleService; +import com.xcong.farmer.cms.modules.system.service.IReleaseService; import com.xcong.farmer.cms.modules.system.util.LoginUserUtil; import com.xcong.farmer.cms.modules.system.vo.AdminArticleVo; import com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo; @@ -46,8 +48,7 @@ private CompanyMapper companyMapper; @Autowired - private ICmsCoreService cmsCoreService; - + private IReleaseService releaseService; @Override public Result getArticleInPage(AdminArticleDto adminArticleDto) { @@ -55,37 +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(); - String columnIdStr = adminArticleDto.getColumnId(); - if(StrUtil.isNotEmpty(columnIdStr)){ - long[] columnIdLongs = StrUtil.splitToLong(columnIdStr, StrUtil.COMMA); + String columnIdStrs = adminArticleDto.getColumnIdStr(); + if(StrUtil.isNotEmpty(columnIdStrs)){ + String[] columnIdStr = columnIdStrs.split(StringPool.COMMA); List<Long> columnList = new ArrayList<>(); - for(long columnIdLong : columnIdLongs){ - columnList.add(columnIdLong); + for(String columnIdString : columnIdStr){ + columnList.add(Long.valueOf(columnIdString)); } - articleEntity.setColumnlist(columnList); + 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); } @@ -119,14 +115,14 @@ String atlas = adminAddArticleDto.getAtlas(); articleEntity.setAtlas(atlas); Date releaseTime = adminAddArticleDto.getReleaseTime(); + if (releaseTime == null) { + releaseTime = new Date(); + } articleEntity.setReleaseTime(releaseTime); Integer isTop = adminAddArticleDto.getIsTop(); 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(); @@ -185,7 +181,12 @@ if(ObjectUtil.isEmpty(columnEntity)){ return Result.fail("请选择文章栏目"); } + + if (!articleEntity.getColumnId().equals(columnId) && articleEntity.getBeforeColumnId() == null) { + articleEntity.setBeforeColumnId(articleEntity.getColumnId()); + } articleEntity.setColumnId(columnId); + Integer visits = adminUpdateArticleDto.getVisits() == null ? 0 : adminUpdateArticleDto.getVisits(); articleEntity.setVisits(visits); String mainDiagram = adminUpdateArticleDto.getMainDiagram(); @@ -198,9 +199,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(); @@ -209,6 +207,8 @@ articleEntity.setArticleUrl(adminUpdateArticleDto.getArticleUrl()); articleEntity.setType(adminUpdateArticleDto.getType()); articleEntity.setContentType(adminUpdateArticleDto.getContentType()); + articleEntity.setReleaseStatus(ArticleEntity.RELEASE_STATUS_NO); + String authorBelong = adminUpdateArticleDto.getAuthorBelong(); articleEntity.setAuthorBelong(authorBelong); this.baseMapper.updateById(articleEntity); @@ -286,19 +286,26 @@ 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()); + articleEntity.setBeforeColumnId(null); this.baseMapper.updateById(articleEntity); + + releaseService.releaseArticle(articleEntity.getId(), companyId); return Result.ok("操作成功"); } @@ -307,7 +314,7 @@ Long companyId = 0L; if(CollUtil.isNotEmpty(companyEntities)){ for(CompanyEntity companyEntity : companyEntities){ - boolean contains = StrUtil.contains(website, companyEntity.getWebAddress()); + boolean contains = StrUtil.contains(companyEntity.getWebAddress(), website); if(contains){ companyId = companyEntity.getId(); } -- Gitblit v1.9.1