瀏覽代碼

导出公共方法

别傲 5 年之前
父節點
當前提交
9e1e650758

+ 1 - 4
lift-business-service/pom.xml

@@ -10,10 +10,7 @@
     <modelVersion>4.0.0</modelVersion>
 
     <artifactId>lift-business-service</artifactId>
-    <packaging>pom</packaging>
-    <modules>
-        <module>lift-protal-service</module>
-    </modules>
+    <packaging>jar</packaging>
 
 
     <dependencies>

+ 10 - 0
lift-common/pom.xml

@@ -16,6 +16,16 @@
             <groupId>cn.com.xwy</groupId>
             <artifactId>xwy-util</artifactId>
         </dependency>
+        <dependency>
+            <groupId>cn.hutool</groupId>
+            <artifactId>hutool-all</artifactId>
+            <version>5.0.6</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml</artifactId>
+            <version>3.17</version>
+        </dependency>
     </dependencies>
 
 </project>

+ 29 - 1
lift-common/src/main/java/cn.com.ty.lift.common/export/ExportUtils.java

@@ -1,5 +1,33 @@
 package cn.com.ty.lift.common.export;
 
 
-public class ExportUtils {
+import cn.hutool.poi.excel.ExcelUtil;
+import cn.hutool.poi.excel.ExcelWriter;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author bieao
+ * @date 2019/11/27
+ * @description 导出工具类
+ */
+public class ExportUtils<T> {
+
+    /**
+     * @param dataList   需要导出的数据集
+     * @param heads      导出工作薄的列名
+     * @param exportPath 导出路径
+     * @return
+     * @description 导出excel
+     * @date 2019/11/28 2:25 PM
+     */
+    public void export(List<T> dataList, Map<String, String> heads, String exportPath) {
+        ExcelWriter writer = ExcelUtil.getWriter(exportPath);
+        //设置列别名
+        heads.forEach((k, v) -> writer.addHeaderAlias(k, v));
+        writer.write(dataList, true);
+        writer.autoSizeColumnAll();
+        writer.close();
+    }
 }

+ 5 - 0
lift-manager-service/pom.xml

@@ -17,6 +17,11 @@
             <groupId>cn.com.xwy</groupId>
             <artifactId>xwy-spring-boot</artifactId>
         </dependency>
+        <dependency>
+            <groupId>cn.com.ty</groupId>
+            <artifactId>lift-common</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
 
         <!--<dependency>
             <groupId>cn.com.xwy</groupId>

+ 12 - 1
lift-manager-service/src/main/java/cn/com/ty/lift/manager/library/controller/LibraryController.java

@@ -32,7 +32,7 @@ public class LibraryController {
      */
     @PostMapping("list")
     public RestResponse<IPage<Lift>> list(@RequestBody LiftRequest request) {
-        return libraryService.list(request);
+        return RestResponse.ok(libraryService.list(request));
     }
 
     /**
@@ -56,4 +56,15 @@ public class LibraryController {
     public RestResponse modify(@RequestBody Lift lift) {
         return libraryService.modify(lift);
     }
+
+    /**
+     * @param
+     * @return
+     * @description 导出电梯
+     * @date 2019/11/28 2:19 PM
+     */
+    @PostMapping("export")
+    public void export(@RequestBody LiftRequest request) {
+        libraryService.export(request);
+    }
 }

+ 34 - 10
lift-manager-service/src/main/java/cn/com/ty/lift/manager/library/service/LibraryService.java

@@ -1,5 +1,6 @@
 package cn.com.ty.lift.manager.library.service;
 
+import cn.com.ty.lift.common.export.ExportUtils;
 import cn.com.ty.lift.manager.library.dao.entity.Lift;
 import cn.com.ty.lift.manager.library.dao.mapper.LiftMapper;
 import cn.com.ty.lift.manager.library.dao.entity.model.LiftRequest;
@@ -9,7 +10,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author bieao
@@ -22,38 +25,59 @@ public class LibraryService extends BaseServiceImpl {
     @Resource
     private LiftMapper mapper;
 
+    private Map<String, String> paramMap = new HashMap<String, String>() {{
+        put("liftCode", "电梯号");
+        put("registrationCode", "注册代码");
+        put("liftBrand", "电梯品牌");
+        put("liftType", "电梯类型");
+        put("devicePosition", "设备使用地点");
+    }};
+
     /**
+     * @param request
+     * @return
      * @description 条件查询电梯档案列表
      * @date 2019/11/27 2:10 PM
-     * @param
-     * @return
      */
-    public RestResponse<IPage<Lift>> list(LiftRequest request) {
+    public IPage<Lift> list(LiftRequest request) {
         IPage page = this.getPage(request);
         List<Lift> lifts = mapper.findByCondition(page, request);
         page.setRecords(lifts);
-        return RestResponse.ok(page);
+        return page;
     }
 
     /**
+     * @param lift
+     * @return
      * @description 新增电梯
      * @date 2019/11/27 2:22 PM
-     * @param
-     * @return
      */
-    public RestResponse add(Lift lift){
+    public RestResponse add(Lift lift) {
         Integer result = mapper.insertSelective(lift);
         return RestResponse.ok(result);
     }
 
     /**
+     * @param lift
+     * @return
      * @description 修改电梯
      * @date 2019/11/27 2:22 PM
-     * @param
-     * @return
      */
-    public RestResponse modify(Lift lift){
+    public RestResponse modify(Lift lift) {
         Integer result = mapper.updateByPrimaryKeySelective(lift);
         return RestResponse.ok(result);
     }
+
+    /**
+     * @param request
+     * @return
+     * @description 导出电梯
+     * @date 2019/11/27 2:22 PM
+     */
+    public void export(LiftRequest request) {
+        IPage page = list(request);
+        List<Lift> liftList = page.getRecords();
+        ExportUtils utils = new ExportUtils();
+        utils.export(liftList, paramMap, "/Users/bieao/Downloads/test.xlsx");
+    }
 }