From ecad870fe1896c8c3e48506d50bb5818974253bf Mon Sep 17 00:00:00 2001
From: fangyuan <527392886@qq.com>
Date: 星期一, 16 一月 2023 11:33:58 +0800
Subject: [PATCH] 机场公安前后端联调内容

---
 ycl-platform/src/main/java/com/ycl/controller/NewsColumnInformationController.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/controller/NewsColumnInformationController.java b/ycl-platform/src/main/java/com/ycl/controller/NewsColumnInformationController.java
index f3ec01d..538a5f9 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/NewsColumnInformationController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/NewsColumnInformationController.java
@@ -3,16 +3,29 @@
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.api.ApiController;
 import com.baomidou.mybatisplus.extension.api.R;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.ycl.entity.NewsColumnInformation;
+import com.ycl.entity.NewsInformation;
 import com.ycl.service.NewsColumnInformationService;
+import com.ycl.service.NewsInformationService;
+import com.ycl.vo.depart.UmsDepartVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 /**
  * 鏍忕洰鍜ㄨ涓棿琛�(NewsColumnInformation)琛ㄦ帶鍒跺眰
@@ -22,6 +35,7 @@
  */
 @RestController
 @RequestMapping("newsColumnInformation")
+@Api(tags = "鏍忕洰鍜ㄨ涓棿琛ㄦ帶鍒跺眰")
 public class NewsColumnInformationController extends ApiController {
     /**
      * 鏈嶅姟瀵硅薄
@@ -29,6 +43,8 @@
     @Resource
     private NewsColumnInformationService newsColumnInformationService;
 
+    @Autowired
+    private NewsInformationService newsInformationService;
     /**
      * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�
      *
@@ -37,6 +53,7 @@
      * @return 鎵�鏈夋暟鎹�
      */
     @GetMapping
+    @ApiOperation(value = "鏌ヨ鎵�鏈夋暟鎹�")
     public R selectAll(Page<NewsColumnInformation> page, NewsColumnInformation newsColumnInformation) {
         return success(this.newsColumnInformationService.page(page, new QueryWrapper<>(newsColumnInformation)));
     }
@@ -48,6 +65,7 @@
      * @return 鍗曟潯鏁版嵁
      */
     @GetMapping("{id}")
+    @ApiOperation(value = "鎸塱d鏌ヨ鏁版嵁")
     public R selectOne(@PathVariable Serializable id) {
         return success(this.newsColumnInformationService.getById(id));
     }
@@ -59,6 +77,7 @@
      * @return 鏂板缁撴灉
      */
     @PostMapping
+    @ApiOperation(value = "鏂板鏁版嵁")
     public R insert(@RequestBody NewsColumnInformation newsColumnInformation) {
         return success(this.newsColumnInformationService.save(newsColumnInformation));
     }
@@ -70,6 +89,7 @@
      * @return 淇敼缁撴灉
      */
     @PutMapping
+    @ApiOperation(value = "淇敼鏁版嵁")
     public R update(@RequestBody NewsColumnInformation newsColumnInformation) {
         return success(this.newsColumnInformationService.updateById(newsColumnInformation));
     }
@@ -81,8 +101,51 @@
      * @return 鍒犻櫎缁撴灉
      */
     @DeleteMapping
+    @ApiOperation(value = "鍒犻櫎鏁版嵁")
     public R delete(@RequestParam("idList") List<Long> idList) {
         return success(this.newsColumnInformationService.removeByIds(idList));
     }
+
+    /**
+     * 閫氳繃鏍忕洰id鏌ュ搴旇祫璁�
+     *
+     * @param id 鏍忕洰id
+     * @return 璧勮鏌ヨ缁撴灉
+     */
+    @GetMapping("column/{id}")
+    @ApiOperation(value = "鎸夋爮鐩甶d鏌ヨ璁伅")
+    public R selectInformationByColumnId(@PathVariable Serializable id ,@RequestParam(value = "pageNum", required = false,defaultValue = "1")Integer pageNum,@RequestParam(value = "pageSize", required = false,defaultValue = "10")Integer pageSize) {
+        List<NewsColumnInformation> newsColumnInformationList = newsColumnInformationService.list(new QueryWrapper<NewsColumnInformation>().eq("column_id", id));
+        List<NewsInformation> resultList=new ArrayList<>();
+        IPage<NewsInformation> page = new Page<>(pageNum, pageSize);
+        for (NewsColumnInformation newsColumnInformation:newsColumnInformationList){
+            resultList.add(newsInformationService.selectInformationById(newsColumnInformation.getInformationId()));
+        }
+        page.setTotal(resultList.size());
+        if (pageSize>resultList.size()){
+            page.setRecords(resultList);
+        }
+        else {
+            List<List<NewsInformation>> lists = split8(resultList, pageSize);
+            page.setRecords(lists.get(pageNum-1));
+        }
+        return success(page);
+    }
+
+    public static <T> List<List<T>> split8(List<T> list,int splitSize){
+        // 姣忎唤涓暟 splitSize
+        if( null == list || list.isEmpty() ){ return Collections.emptyList(); }
+        // 鍒楄〃鍏冪礌鏁帮紝鎬讳唤鏁�
+        int size = list.size(), cnt = (size + splitSize - 1 ) / splitSize;
+        return Stream
+                .iterate(0,i -> i+1 )
+                .limit(cnt)
+                .parallel()
+                .map(i -> list.parallelStream().skip( i * splitSize ).limit(splitSize).collect(Collectors.toList()))
+                .filter(a -> !a.isEmpty())
+                .collect(Collectors.toList());
+    }
+
+
 }
 

--
Gitblit v1.8.0