From 36e556587fc44cd9f613b10873d15a5f9cdf2fc6 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 10 Aug 2022 14:25:48 +0800
Subject: [PATCH] 20220810

---
 src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
index fdc382f..af091f8 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
@@ -5,6 +5,8 @@
 import cc.mrbird.febs.common.entity.DeptTree;
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum;
+import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.excl.ExcelSheetPO;
 import cc.mrbird.febs.common.utils.excl.ExcelUtil;
@@ -12,6 +14,7 @@
 import cc.mrbird.febs.common.utils.excl.ResponseHeadUtil;
 import cc.mrbird.febs.mall.dto.*;
 import cc.mrbird.febs.mall.entity.*;
+import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
 import cc.mrbird.febs.mall.mapper.MallOrderRefundOperationMapper;
 import cc.mrbird.febs.mall.service.IAdminMallGoodsService;
 import cc.mrbird.febs.mall.service.IAdminMallOrderService;
@@ -45,6 +48,7 @@
 public class AdminMallOrderController extends BaseController {
 
     private final IAdminMallOrderService adminMallOrderService;
+    private final MallOrderInfoMapper mallOrderInfoMapper;
 
     /**
      * 订单列表
@@ -281,6 +285,65 @@
         return null;
     }
 
+    @GetMapping("exportOrderListOne")
+    @ControllerEndpoint(operation = "订单列表", exceptionMessage = "导出失败")
+    public FebsResponse exportOrderListOne(MallOrderInfo mallOrderInfo, HttpServletResponse response) throws IOException {
+
+        List<ExcelSheetPO> res = new ArrayList<>();
+        ExcelSheetPO orderSheet = new ExcelSheetPO();
+        String title = "订单列表";
+        orderSheet.setSheetName(title);
+        orderSheet.setTitle(title);
+        String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "商品名称", "团长名称", "团长手机号码", "自提点名称","详细地址"};
+        orderSheet.setHeaders(header);
+
+        QueryRequest request = new QueryRequest();
+        request.setPageNum(1);
+        request.setPageSize(9999);
+        List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords();
+        List<List<Object>> list = new ArrayList<>();
+        if (dataList.size() > 0) {
+            for (MallOrderInfo item : dataList) {
+                List<Object> temp = new ArrayList<>();
+                temp.add(item.getOrderNo());
+                temp.add(item.getAmount());
+                temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss"));
+                temp.add("自提");
+                temp.add(item.getName());
+                temp.add(item.getPhone());
+                if (CollUtil.isNotEmpty(item.getItems())) {
+                    StringBuilder sb = new StringBuilder();
+
+                    for (MallOrderItem itemItem : item.getItems()) {
+                        if (StrUtil.isNotBlank(sb)) {
+                            sb.append(";" + itemItem.getGoodsName() + "*" + itemItem.getCnt());
+                        } else {
+                            sb.append(itemItem.getGoodsName() + "*" + itemItem.getCnt());
+                        }
+                    }
+                    temp.add(sb.toString());
+                } else {
+                    temp.add("");
+                }
+                temp.add(item.getLeaderName());
+                temp.add(item.getLeaderPhone());
+                temp.add(item.getAddressArea());
+                temp.add(item.getProvince()+item.getCity()+item.getTownship()+item.getDetailAddress());
+                list.add(temp);
+
+                adminMallOrderService.updateOrderStateAndDeliveryState(item.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue());
+            }
+        }
+        orderSheet.setDataList(list);
+        res.add(orderSheet);
+        response = ResponseHeadUtil.setExcelHead(response);
+        response.setHeader("Content-Disposition",
+                "attachment;filename=" + URLEncoder.encode(title + DateUtil.format(new Date(), "yyyyMMDDHHmmss") + ".xlsx".trim(), "UTF-8"));
+        OutputStream os = response.getOutputStream();
+        ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true);
+        return null;
+    }
+
     @PostMapping(value = "/importDeliver")
     @ControllerEndpoint(operation = "导入发货", exceptionMessage = "导入失败")
     public FebsResponse importDeliver(@RequestBody MultipartFile file) throws IOException {

--
Gitblit v1.9.1