From ef9d6dde26af79f4ef71d648e3b4a7fa30935351 Mon Sep 17 00:00:00 2001
From: er <913652501@qq.com>
Date: Fri, 03 Apr 2020 09:33:57 +0800
Subject: [PATCH] 添加 数据需求的导出功能

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IDataNeedService.java         |    4 ++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/DataNeedServiceImpl.java |   16 ++++++++++++++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/DataNeedController.java |   17 +++++++++++++++++
 3 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IDataNeedService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IDataNeedService.java
index cad3d49..cd6cee5 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IDataNeedService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IDataNeedService.java
@@ -3,7 +3,9 @@
 import com.kidgrow.oprationcenter.model.DataNeed;
 import com.kidgrow.common.model.PageResult;
 import com.kidgrow.common.service.ISuperService;
+import com.kidgrow.oprationcenter.vo.DataNeedExcel;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -29,5 +31,7 @@
     * @return DataNeed对象
     */
     DataNeed findByObject(DataNeed dataNeed);
+
+    List<DataNeedExcel> findListExportByParam(Map<String, Object> params);
 }
 
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/DataNeedServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/DataNeedServiceImpl.java
index b5f7020..1d4067a 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/DataNeedServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/DataNeedServiceImpl.java
@@ -1,10 +1,13 @@
 package com.kidgrow.oprationcenter.service.impl;
 
+import com.kidgrow.oprationcenter.vo.DataNeedExcel;
+import org.springframework.cglib.beans.BeanCopier;
 import org.springframework.stereotype.Service;
 import com.kidgrow.common.model.PageResult;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.kidgrow.common.service.impl.SuperServiceImpl;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import org.apache.commons.collections4.MapUtils;
@@ -46,4 +49,17 @@
     public DataNeed findByObject(DataNeed dataNeed){
         return baseMapper.findByObject(dataNeed);
     }
+
+    @Override
+    public List<DataNeedExcel> findListExportByParam(Map<String, Object> params) {
+        List<DataNeed> dataNeeds = baseMapper.selectByMap(params);
+        List<DataNeedExcel> voList=new ArrayList<>();
+        dataNeeds.forEach(e ->{
+            DataNeedExcel vo=new DataNeedExcel();
+            BeanCopier beanCopier = BeanCopier.create(DataNeed.class, DataNeedExcel.class, false);
+            beanCopier.copy(e,vo,null);
+            voList.add(vo);
+        });
+        return voList;
+    }
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/DataNeedController.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/DataNeedController.java
index 5ec8aaf..f5e2de5 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/DataNeedController.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/DataNeedController.java
@@ -3,8 +3,10 @@
 import com.kidgrow.common.controller.BaseController;
 import com.kidgrow.common.model.PageResult;
 import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.common.utils.ExcelUtil;
 import com.kidgrow.oprationcenter.model.DataNeed;
 import com.kidgrow.oprationcenter.service.IDataNeedService;
+import com.kidgrow.oprationcenter.vo.DataNeedExcel;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -14,7 +16,10 @@
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
+import java.io.IOException;
+import java.util.List;
 import java.util.Map;
 
 
@@ -94,4 +99,16 @@
         dataNeedService.removeById(id);
         return ResultBody.ok().msg("删除成功");
     }
+    /**
+     * 导出excel
+     *
+     * @return
+     */
+    @PostMapping("/export")
+    public ResultBody exportUser(@RequestParam Map<String, Object> params, HttpServletResponse response) throws IOException {
+        List<DataNeedExcel> result = dataNeedService.findListExportByParam(params);
+        //导出操作
+        ExcelUtil.exportExcel(result, null, "数据需求", DataNeedExcel.class, "DataNeed", response);
+        return ResultBody.ok().msg("导出数据成功");
+    }
 }

--
Gitblit v1.8.0