From 8f527cfc93518f5db3b90f31f78a358d79bcbb51 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 03 十一月 2023 16:58:04 +0800
Subject: [PATCH] #导出excel单据

---
 src/main/java/com/zy/asrs/controller/OrderController.java |   79 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 79 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index 8dc4cbe..de90edd 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -1,6 +1,10 @@
 package com.zy.asrs.controller;
 
 import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.ExcelWriter;
+
+import com.alibaba.excel.write.metadata.WriteSheet;
+import com.alibaba.excel.write.metadata.fill.FillConfig;
 import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -12,6 +16,7 @@
 import com.sun.org.apache.xpath.internal.operations.Or;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.OrderDomainParam;
+import com.zy.asrs.entity.result.LocDetlAll;
 import com.zy.asrs.entity.result.OrderDetlVo;
 import com.zy.asrs.service.*;
 import com.zy.common.CodeRes;
@@ -27,7 +32,9 @@
 import javax.imageio.ImageIO;
 import javax.servlet.http.HttpServletResponse;
 import java.awt.image.BufferedImage;
+import java.io.File;
 import java.io.IOException;
+import java.io.OutputStream;
 import java.math.BigDecimal;
 import java.net.URLEncoder;
 import java.util.*;
@@ -52,6 +59,78 @@
     @Autowired
     private OrderLogService orderLogService;
 
+    @RequestMapping(value = "/order/all")
+    @ManagerAuth
+    public R statis2(@RequestParam(defaultValue = "1")Integer curr,
+                     @RequestParam(defaultValue = "10")Integer limit,
+                     @RequestParam Map<String, Object> param) {
+
+
+
+        Page<Order> stockStatis = orderService.getOrderAll(toPage(curr, limit, param, Order.class));
+
+        return R.ok().add(stockStatis);
+    }
+//    @RequestMapping(value = "/order/export")
+//    @ManagerAuth
+//    public void orderExport(HttpServletResponse response,OrderExport orderExport) throws IOException {
+//        List<OrderDetl> orderNo = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderExport.getOrderNo()));
+//
+//        response.setContentType("application/vnd.ms-excel");
+//        response.setCharacterEncoding("utf-8");
+//        String templateFileName =
+//                this.getClass().getClassLoader().getResource("ru.xlsx").getPath();;
+//
+//        String fileName =  "complexFill" + System.currentTimeMillis() + ".xlsx";
+//
+//        response.setHeader("Content-disposition", "attachment;filename=" + fileName);
+//        ExcelWriter excelWriter = EasyExcel.write(fileName).withTemplate(templateFileName).build();
+//        WriteSheet writeSheet = EasyExcel.writerSheet().build();
+//        // 杩欓噷娉ㄦ剰 鍏ュ弬鐢ㄤ簡forceNewRow 浠h〃鍦ㄥ啓鍏ist鐨勬椂鍊欎笉绠ist涓嬮潰鏈夋病鏈夌┖琛� 閮戒細鍒涘缓涓�琛岋紝鐒跺悗涓嬮潰鐨勬暟鎹線鍚庣Щ鍔ㄣ�傞粯璁� 鏄痜alse锛屼細鐩存帴浣跨敤涓嬩竴琛岋紝濡傛灉娌℃湁鍒欏垱寤恒��
+//        // forceNewRow 濡傛灉璁剧疆浜唗rue,鏈変釜缂虹偣 灏辨槸浠栦細鎶婃墍鏈夌殑鏁版嵁閮芥斁鍒板唴瀛樹簡锛屾墍浠ユ厧鐢�
+//        // 绠�鍗曠殑璇� 濡傛灉浣犵殑妯℃澘鏈塴ist,涓攍ist涓嶆槸鏈�鍚庝竴琛岋紝涓嬮潰杩樻湁鏁版嵁闇�瑕佸~鍏� 灏卞繀椤昏缃� forceNewRow=true 浣嗘槸杩欎釜灏变細鎶婃墍鏈夋暟鎹斁鍒板唴瀛� 浼氬緢鑰楀唴瀛�
+//        // 濡傛灉鏁版嵁閲忓ぇ list涓嶆槸鏈�鍚庝竴琛� 鍙傜収涓嬩竴涓�
+//        FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
+//        excelWriter.fill(orderNo, fillConfig, writeSheet);
+////        excelWriter.fill(orderNo, fillConfig, writeSheet);
+//        Map<String, Object> map = new HashMap<String, Object>();
+//        map.put("date", "2019骞�10鏈�9鏃�13:28:28");
+//        map.put("total", 1000);
+//        excelWriter.fill(map, writeSheet);
+//        excelWriter.finish();
+//
+//
+//    }
+
+    @RequestMapping("/download_excel")
+    public void downloadExcel(HttpServletResponse response,@RequestParam String orderNo) throws IOException {
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("utf-8");
+        String fileName = "Order " + orderNo + ".xlsx";
+        response.setHeader("Content-disposition", "attachment;filename=" + fileName);
+
+        OutputStream outputStream = response.getOutputStream();
+        orderExport(outputStream, orderNo);
+        outputStream.flush();
+        outputStream.close();
+    }
+
+    public void orderExport(OutputStream outputStream, String orderNo) throws IOException {
+        List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo));
+
+        String templateFileName = this.getClass().getClassLoader().getResource("ru.xlsx").getPath();
+
+        ExcelWriter excelWriter = EasyExcel.write(outputStream).withTemplate(templateFileName).build();
+        WriteSheet writeSheet = EasyExcel.writerSheet().build();
+        FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
+        excelWriter.fill(orderDetls, fillConfig, writeSheet);
+        Map<String, Object> map = new HashMap<String, Object>();
+        map.put("date", "2019骞�10鏈�9鏃�13:28:28");
+        map.put("orderNo", orderNo);
+        excelWriter.fill(map, writeSheet);
+        excelWriter.finish();
+    }
+
     @RequestMapping(value = "/order/nav/list/auth")
     @ManagerAuth
     public R navList(@RequestParam(required = false) String orderNo){

--
Gitblit v1.9.1