From 07326eeadfd578b7f9e19305b6ecdde992efaea7 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 07 Jul 2022 18:07:27 +0800
Subject: [PATCH] fix

---
 src/main/java/com/xcong/farmer/cms/configurations/security/WebSecurityConfig.java        |    2 
 src/main/java/com/xcong/farmer/cms/modules/system/vo/WebArticleVo.java                   |   53 ++++++++
 src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java  |    9 +
 src/main/resources/mapper/ArticleMapper.xml                                              |   31 +++++
 src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java    |   47 +++++++
 src/main/resources/mapper/ColumnMapper.xml                                               |   10 +
 src/main/java/com/xcong/farmer/cms/modules/system/service/IArticleService.java           |    8 
 src/main/java/com/xcong/farmer/cms/modules/system/service/IColumnService.java            |    4 
 src/main/java/com/xcong/farmer/cms/modules/system/vo/WebColumnVo.java                    |   23 +++
 src/main/java/com/xcong/farmer/cms/modules/system/dto/WebArticleInPageDto.java           |   50 ++++++++
 src/main/java/com/xcong/farmer/cms/modules/system/mapper/ArticleMapper.java              |    3 
 src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminArticleController.java |    7 +
 src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java               |    3 
 src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ArticleServiceImpl.java   |   63 ++++++++-
 src/test/java/com/xcong/farmer/cms/KssframeworkApplicationTests.java                     |   18 +++
 15 files changed, 313 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/xcong/farmer/cms/configurations/security/WebSecurityConfig.java b/src/main/java/com/xcong/farmer/cms/configurations/security/WebSecurityConfig.java
index 0f63511..6e4ae50 100644
--- a/src/main/java/com/xcong/farmer/cms/configurations/security/WebSecurityConfig.java
+++ b/src/main/java/com/xcong/farmer/cms/configurations/security/WebSecurityConfig.java
@@ -53,6 +53,8 @@
                 .antMatchers("/api/common/doUpload").permitAll()
                 .antMatchers("/api/common/uploadFile").permitAll()
                 .antMatchers("/api/messageBoard/addMessage").permitAll()
+                .antMatchers("/api/article/webArticleInPage").permitAll()
+                .antMatchers("/api/column/webColumnInList").permitAll()
                 .antMatchers("/image/**").permitAll()
                 .anyRequest().authenticated()
                 .and().apply(securityConfiguereAdapter());
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminArticleController.java b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminArticleController.java
index fd293ac..f688cbe 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminArticleController.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminArticleController.java
@@ -12,6 +12,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 import javax.validation.Valid;
 
 @RestController
@@ -81,4 +82,10 @@
     public Result delObjs(@RequestBody @Valid AdminDeleteDto adminDeleteDto) {
         return iArticleService.delObjs(adminDeleteDto);
     }
+
+    @ApiOperation(value = "网站文章分页列表查询", notes = "网站文章分页列表查询")
+    @PostMapping(value = "/webArticleInPage")
+    public Result webArticleInPage(HttpServletRequest request, @RequestBody @Valid WebArticleInPageDto webArticleInPageDto) {
+        return iArticleService.webArticleInPage(request,webArticleInPageDto);
+    }
 }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java
index 236057e..fec1746 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java
@@ -5,6 +5,7 @@
 import com.xcong.farmer.cms.modules.system.service.IColumnService;
 import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo;
 import com.xcong.farmer.cms.modules.system.vo.AdminSeeColumnInfoVo;
+import com.xcong.farmer.cms.modules.system.vo.WebColumnVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
@@ -14,6 +15,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 import javax.validation.Valid;
 
 @RestController
@@ -72,4 +74,11 @@
         return Result.ok("发布成功");
     }
 
+    @ApiOperation(value = "网页栏目列表", notes = "网页栏目列表")
+    @ApiResponses({@ApiResponse(code = 200, message = "ok", response = WebColumnVo.class)})
+    @GetMapping(value = "/webColumnInList")
+    public Result webColumnInList(HttpServletRequest request) {
+        return iColumnService.getWebColumnInList(request);
+    }
+
 }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/dto/WebArticleInPageDto.java b/src/main/java/com/xcong/farmer/cms/modules/system/dto/WebArticleInPageDto.java
new file mode 100644
index 0000000..eb2268f
--- /dev/null
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/dto/WebArticleInPageDto.java
@@ -0,0 +1,50 @@
+package com.xcong.farmer.cms.modules.system.dto;
+
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@ApiModel(value = "WebArticleInPageDto", description = "参数接收类")
+public class WebArticleInPageDto {
+
+
+    @ApiModelProperty(value = "作者", example = "张")
+    private String author;
+
+    @ApiModelProperty(value = "关键词", example = "关于")
+    private String queryKey;
+
+    @ApiModelProperty(value = "栏目ID", example = "1")
+    private Long columnId;
+
+    @ApiModelProperty(value = "每页条数", example = "10")
+    private Integer pageSize;
+
+    @ApiModelProperty(value = "第几页", example = "1")
+    private Integer pageNum;
+
+    @ApiModelProperty(value = "一周内,一月内,一年内", example = "一月内")
+    private String timeType;
+
+    public String getTimeType() {
+        if (this.timeType == null) {
+            return null;
+        }
+        switch (this.timeType) {
+            case "一周内" :
+                return DateUtil.formatDateTime(DateUtil.offsetDay(new Date(),-7));
+            case "一月内" :
+                return DateUtil.formatDateTime(DateUtil.offsetMonth(new Date(),-1));
+            case "一年内" :
+                return DateUtil.formatDateTime(DateUtil.offsetMonth(new Date(),-12));
+            default:
+                return null;
+        }
+    }
+
+}
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ArticleMapper.java b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ArticleMapper.java
index 05ab4bd..10da8d6 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ArticleMapper.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ArticleMapper.java
@@ -6,6 +6,7 @@
 import com.xcong.farmer.cms.modules.system.entity.ArticleEntity;
 import com.xcong.farmer.cms.modules.system.vo.AdminArticleVo;
 import com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo;
+import com.xcong.farmer.cms.modules.system.vo.WebArticleVo;
 import io.swagger.models.auth.In;
 import org.apache.ibatis.annotations.Param;
 
@@ -22,4 +23,6 @@
     ArticleEntity selectArticleById(@Param("id") Long id);
 
     IPage<ArticleEntity> selectArticleInPage(Page<ArticleEntity> page, @Param("record") ArticleEntity article);
+
+    IPage<WebArticleVo> selectWebArticleInPage(Page<WebArticleVo> page, ArticleEntity articleEntity);
 }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
index 81774ab..119dd3b 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/ColumnMapper.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xcong.farmer.cms.modules.system.entity.ColumnEntity;
 import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo;
+import com.xcong.farmer.cms.modules.system.vo.WebColumnVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -20,4 +21,6 @@
     List<ColumnEntity> selectColumnByParentId(@Param("parentId") Long parentId, @Param("companyId") Long companyId);
 
     IPage<ColumnEntity> selectColumnInPage(Page<ColumnEntity> page, @Param("record") ColumnEntity column);
+
+    List<WebColumnVo> selectWebColumnInListByParentId(@Param("parentId") Long parentidDefault, @Param("companyId") Long companyId);
 }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/IArticleService.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/IArticleService.java
index 81c3cd5..03c2aad 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/IArticleService.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/IArticleService.java
@@ -2,11 +2,10 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.xcong.farmer.cms.common.response.Result;
-import com.xcong.farmer.cms.modules.system.dto.AdminAddArticleDto;
-import com.xcong.farmer.cms.modules.system.dto.AdminArticleDto;
-import com.xcong.farmer.cms.modules.system.dto.AdminDeleteDto;
-import com.xcong.farmer.cms.modules.system.dto.AdminUpdateArticleDto;
+import com.xcong.farmer.cms.modules.system.dto.*;
 import com.xcong.farmer.cms.modules.system.entity.ArticleEntity;
+
+import javax.servlet.http.HttpServletRequest;
 
 public interface IArticleService extends IService<ArticleEntity> {
 
@@ -30,4 +29,5 @@
 
     Result updateIstopOff(Long id);
 
+    Result webArticleInPage(HttpServletRequest request, WebArticleInPageDto webArticleInPageDto);
 }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/IColumnService.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/IColumnService.java
index 9eb13e0..09f2cb0 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/IColumnService.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/IColumnService.java
@@ -8,6 +8,8 @@
 import com.xcong.farmer.cms.modules.system.dto.AdminUpdateColumnDto;
 import com.xcong.farmer.cms.modules.system.entity.ColumnEntity;
 
+import javax.servlet.http.HttpServletRequest;
+
 public interface IColumnService extends IService<ColumnEntity> {
 
     Result getColumnInPage(AdminColumnDto adminColumnDto);
@@ -23,4 +25,6 @@
     Result getColumnInList();
 
     Result delObjs(AdminDeleteDto adminDeleteDto);
+
+    Result getWebColumnInList(HttpServletRequest request);
 }
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 4cb2c13..7bd87b9 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
@@ -8,20 +8,16 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 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.AdminAddArticleDto;
-import com.xcong.farmer.cms.modules.system.dto.AdminArticleDto;
-import com.xcong.farmer.cms.modules.system.dto.AdminDeleteDto;
-import com.xcong.farmer.cms.modules.system.dto.AdminUpdateArticleDto;
-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.entity.UserEntity;
-import com.xcong.farmer.cms.modules.system.entity.UserRoleEntity;
+import com.xcong.farmer.cms.modules.system.dto.*;
+import com.xcong.farmer.cms.modules.system.entity.*;
 import com.xcong.farmer.cms.modules.system.mapper.ArticleMapper;
 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.util.LoginUserUtil;
 import com.xcong.farmer.cms.modules.system.vo.AdminArticleVo;
 import com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo;
+import com.xcong.farmer.cms.modules.system.vo.WebArticleVo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -35,6 +31,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 
 @Service
 @Slf4j
@@ -42,6 +39,9 @@
 
     @Resource
     private ColumnMapper columnMapper;
+
+    @Resource
+    private CompanyMapper companyMapper;
 
     @Autowired
     private ICmsCoreService cmsCoreService;
@@ -117,6 +117,9 @@
         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();
@@ -161,8 +164,6 @@
         }
         Integer isTop = adminUpdateArticleDto.getIsTop();
         articleEntity.setIsTop(isTop);
-        Integer releaseStatus = adminUpdateArticleDto.getReleaseStatus();
-        articleEntity.setReleaseStatus(releaseStatus);
         String title = adminUpdateArticleDto.getTitle();
         articleEntity.setTitle(title);
         String childTitle = adminUpdateArticleDto.getChildTitle();
@@ -188,7 +189,11 @@
         if(ObjectUtil.isNotEmpty(releaseTime)){
             articleEntity.setReleaseTime(releaseTime);
         }
+        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();
@@ -197,6 +202,8 @@
         articleEntity.setArticleUrl(adminUpdateArticleDto.getArticleUrl());
         articleEntity.setType(adminUpdateArticleDto.getType());
         articleEntity.setContentType(adminUpdateArticleDto.getContentType());
+        String authorBelong = adminUpdateArticleDto.getAuthorBelong();
+        articleEntity.setAuthorBelong(authorBelong);
         this.baseMapper.updateById(articleEntity);
         return Result.ok("更新成功");
     }
@@ -251,12 +258,48 @@
     }
 
     @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();
+                }
+            }
+        }
+
+        Page<WebArticleVo> page = new Page<>(webArticleInPageDto.getPageNum(), webArticleInPageDto.getPageSize());
+        ArticleEntity articleEntity = new ArticleEntity();
+        Long columnId = webArticleInPageDto.getColumnId() == null ? 0L : webArticleInPageDto.getColumnId();
+        if(columnId != 0L){
+            articleEntity.setColumnId(columnId);
+        }
+        String author = webArticleInPageDto.getAuthor();
+        if(StrUtil.isNotEmpty(author)){
+            articleEntity.setAuthor(author);
+        }
+        String queryKey = webArticleInPageDto.getQueryKey();
+        if(StrUtil.isNotEmpty(queryKey)){
+            articleEntity.setTitle(queryKey);
+        }
+        if(UserEntity.USER_BELONG_TOP != companyId){
+            articleEntity.setCompanyId(companyId);
+        }
+        IPage<WebArticleVo> list = this.baseMapper.selectWebArticleInPage(page,articleEntity);
+        return Result.ok(list);
+    }
+
+    @Override
     public Result updateStatusOn(Long id) {
         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);
         return Result.ok("操作成功");
     }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
index 992f6d5..18d34a9 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
@@ -11,16 +11,15 @@
 import com.xcong.farmer.cms.modules.system.dto.AdminColumnDto;
 import com.xcong.farmer.cms.modules.system.dto.AdminDeleteDto;
 import com.xcong.farmer.cms.modules.system.dto.AdminUpdateColumnDto;
-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.entity.NavigationBarEntity;
-import com.xcong.farmer.cms.modules.system.entity.UserEntity;
+import com.xcong.farmer.cms.modules.system.entity.*;
 import com.xcong.farmer.cms.modules.system.mapper.ArticleMapper;
 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.IColumnService;
 import com.xcong.farmer.cms.modules.system.util.LoginUserUtil;
 import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo;
 import com.xcong.farmer.cms.modules.system.vo.AdminSeeColumnInfoVo;
+import com.xcong.farmer.cms.modules.system.vo.WebColumnVo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -29,6 +28,7 @@
 import cn.hutool.core.util.ObjectUtil;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -38,6 +38,8 @@
 
     @Autowired
     private ArticleMapper articleMapper;
+    @Autowired
+    private CompanyMapper companyMapper;
 
     @Override
     public Result getColumnInPage(AdminColumnDto adminColumnDto) {
@@ -277,4 +279,41 @@
         }
         return Result.ok("删除成功");
     }
+
+    @Override
+    public Result getWebColumnInList(HttpServletRequest request) {
+        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();
+                }
+            }
+        }
+        List<WebColumnVo> records = this.baseMapper.selectWebColumnInListByParentId(ColumnEntity.PARENTID_DEFAULT,companyId);
+        if(CollUtil.isNotEmpty(records)){
+            for(WebColumnVo webColumnVo : records){
+                Long id = webColumnVo.getId();
+                QueryWrapper<ColumnEntity> objectQueryWrapper = new QueryWrapper<>();
+                objectQueryWrapper.eq("parent_id",id);
+                objectQueryWrapper.eq("company_id",companyId);
+                List<ColumnEntity> columnEntities = this.baseMapper.selectList(objectQueryWrapper);
+                List<WebColumnVo> adminColumnVoChilds = new ArrayList<>();
+                if(CollUtil.isNotEmpty(columnEntities)){
+                    for(ColumnEntity columnEntityChild : columnEntities){
+                        WebColumnVo child = new WebColumnVo();
+                        child.setId(columnEntityChild.getId());
+                        child.setColumnName(columnEntityChild.getColumnName());
+                        child.setColumnCode(columnEntityChild.getColumnCode());
+                        adminColumnVoChilds.add(child);
+                    }
+                }
+                webColumnVo.setChild(adminColumnVoChilds);
+            }
+        }
+        return Result.ok(records);
+    }
 }
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/vo/WebArticleVo.java b/src/main/java/com/xcong/farmer/cms/modules/system/vo/WebArticleVo.java
new file mode 100644
index 0000000..452e1d7
--- /dev/null
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/vo/WebArticleVo.java
@@ -0,0 +1,53 @@
+package com.xcong.farmer.cms.modules.system.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@ApiModel(value = "WebArticleVo", description = "返回")
+public class WebArticleVo {
+
+    private Long id;
+
+    @ApiModelProperty(value = "标题")
+    private String title;
+
+    @ApiModelProperty(value = "标题")
+    private String childTitle;
+
+    @ApiModelProperty(value = "作者")
+    private String author;
+
+    @ApiModelProperty(value = "作者所属单位")
+    private String authorBelong;
+
+    @ApiModelProperty(value = "描述")
+    private String remark;
+
+    @ApiModelProperty(value = "所属栏目名称")
+    private String columnName;
+
+    @ApiModelProperty(value = "访问量")
+    private Integer visits;
+
+    @ApiModelProperty(value = "主图")
+    private String mainDiagram;
+
+    @ApiModelProperty(value = "图集")
+    private String atlas;
+
+    @ApiModelProperty(value = "发布时间")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date releaseTime;
+
+    @ApiModelProperty(value = "设置成热门文章 0:否 1:是")
+    private Integer isTop;
+
+    @ApiModelProperty(value = "文章详情")
+    private String articleDetails;
+
+}
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/vo/WebColumnVo.java b/src/main/java/com/xcong/farmer/cms/modules/system/vo/WebColumnVo.java
new file mode 100644
index 0000000..33c3a21
--- /dev/null
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/vo/WebColumnVo.java
@@ -0,0 +1,23 @@
+package com.xcong.farmer.cms.modules.system.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel(value = "WebColumnVo", description = "返回")
+public class WebColumnVo {
+
+    private Long id;
+
+    @ApiModelProperty(value = "栏目名称")
+    private String columnName;
+
+    @ApiModelProperty(value = "栏目编码")
+    private String columnCode;
+
+    @ApiModelProperty(value = "子菜单")
+    private List<WebColumnVo> child;
+}
diff --git a/src/main/resources/mapper/ArticleMapper.xml b/src/main/resources/mapper/ArticleMapper.xml
index 61fc59f..6564050 100644
--- a/src/main/resources/mapper/ArticleMapper.xml
+++ b/src/main/resources/mapper/ArticleMapper.xml
@@ -82,4 +82,35 @@
             </if>
         </where>
     </select>
+
+    <select id="selectWebArticleInPage" resultType="com.xcong.farmer.cms.modules.system.vo.WebArticleVo">
+        SELECT
+        a.*,
+        b.column_name columnName
+        FROM
+        t_article a
+        left join t_column b on a.column_id = b.id
+        <where>
+            and a.del_status = 1
+            and a.release_status = 1
+            <if test="record != null" >
+                <if test="record.companyId != null">
+                    and a.company_id = #{record.companyId}
+                </if>
+                <if test="record.columnId != null">
+                    and a.column_id = #{record.columnId}
+                </if>
+                <if test="record.title!=null">
+                    and a.title like concat ('%',#{record.title},'%')
+                </if>
+                <if test="record.author!=null">
+                    and a.author like concat ('%',#{record.author},'%')
+                </if>
+                <if test="record.timeType!=null">
+                    and a.release_time > #{record.timeType}
+                </if>
+            </if>
+        </where>
+        order by a.is_top desc,a.create_time desc
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/ColumnMapper.xml b/src/main/resources/mapper/ColumnMapper.xml
index 6b09973..90eba2e 100644
--- a/src/main/resources/mapper/ColumnMapper.xml
+++ b/src/main/resources/mapper/ColumnMapper.xml
@@ -51,4 +51,14 @@
             </foreach>
         </if>
     </select>
+
+
+    <select id="selectWebColumnInListByParentId" resultType="com.xcong.farmer.cms.modules.system.vo.WebColumnVo">
+        SELECT
+            a.*
+        FROM
+            t_column a
+        where a.parent_id = #{parentId} and a.company_id = #{companyId}
+        order by a.order_num ASC,a.create_time desc
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/src/test/java/com/xcong/farmer/cms/KssframeworkApplicationTests.java b/src/test/java/com/xcong/farmer/cms/KssframeworkApplicationTests.java
index 542c24e..efa9df4 100644
--- a/src/test/java/com/xcong/farmer/cms/KssframeworkApplicationTests.java
+++ b/src/test/java/com/xcong/farmer/cms/KssframeworkApplicationTests.java
@@ -4,6 +4,7 @@
 import com.xcong.farmer.cms.common.response.Result;
 import com.xcong.farmer.cms.common.utils.FileUtils;
 import com.xcong.farmer.cms.configurations.properties.CmsProperties;
+import com.xcong.farmer.cms.modules.system.dto.WebArticleInPageDto;
 import com.xcong.farmer.cms.modules.system.entity.CmsTemplateEntity;
 import com.xcong.farmer.cms.modules.system.mapper.CmsTemplateMapper;
 import com.xcong.farmer.cms.modules.system.util.LoginUserUtil;
@@ -90,6 +91,23 @@
         String pathName = FileUtils.path(templatePath, cmsTemplateEntity.getPath());
         System.out.println(templatePath);
         System.out.println(pathName);
+        byte[] bytes = new byte[0];
+        try {
+            bytes = Files.readAllBytes(Paths.get(pathName));
+        } catch (IOException e) {
+            e.printStackTrace();
+            System.out.println("未找到模板");
+        }
+
+        String content = new String(bytes, StandardCharsets.UTF_8);
+        System.out.println(content);
+    }
+
+    @Test
+    public void dateTest(){
+        WebArticleInPageDto webArticleInPageDto = new WebArticleInPageDto();
+        webArticleInPageDto.setTimeType("一周内");
+        System.out.println(webArticleInPageDto.getTimeType());
     }
 
 }

--
Gitblit v1.9.1