From 9ca97fd558700e7054c5f54192a9db7a1e6b8230 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 11 九月 2024 16:31:47 +0800
Subject: [PATCH] 完善导出等接口

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java |   88 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 81 insertions(+), 7 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
index e2b403c..180b21c 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
@@ -14,9 +14,7 @@
 import com.ruoyi.system.domain.TOrderStockGoods;
 import com.ruoyi.system.dto.OrderMealGeneratorDTO;
 import com.ruoyi.system.dto.OrderSaleGeneratorDTO;
-import com.ruoyi.system.export.TOrderMealExportExcel;
-import com.ruoyi.system.export.TOrderSaleAndGoodsExportExcel;
-import com.ruoyi.system.export.TOrderStockExportExcel;
+import com.ruoyi.system.export.*;
 import com.ruoyi.system.query.TDataGeneratorMealQuery;
 import com.ruoyi.system.query.TDataGeneratorQuery;
 import com.ruoyi.system.query.TDataGeneratorSaleQuery;
@@ -26,6 +24,7 @@
 import com.ruoyi.system.service.TOrderSaleService;
 import com.ruoyi.system.service.TOrderStockService;
 import com.ruoyi.system.vo.*;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.BeanUtils;
@@ -50,6 +49,7 @@
  * @author xiaochen
  * @since 2024-08-27
  */
+@Api(tags = "数据生成管理")
 @RestController
 @RequestMapping("/t-data-generator")
 public class TDataGeneratorController {
@@ -140,8 +140,9 @@
         for (TOrderMealVO orderMealVO : list) {
             TOrderMealExportExcel tOrderMealExportExcel = new TOrderMealExportExcel();
             BeanUtils.copyProperties(orderMealVO, tOrderMealExportExcel);
-            tOrderMealExportExcel.setCreateStrTime(DateUtils.localDateTimeToString(orderMealVO.getCreateTime()));
+            tOrderMealExportExcel.setCreateStrTime(DateUtils.localDateToString(orderMealVO.getMealTime()));
             tOrderMealExportExcel.setGoodsList(orderMealVO.getGoodsList().stream().collect(Collectors.joining("\n")));
+            orderMeals.add(tOrderMealExportExcel);
         }
         Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderMealExportExcel.class, orderMeals);
         HttpServletResponse response = WebUtils.response();
@@ -176,7 +177,8 @@
             TOrderSaleAndGoodsExportExcel orderSaleExportExcel = new TOrderSaleAndGoodsExportExcel();
             BeanUtils.copyProperties(orderSaleVO, orderSaleExportExcel);
             orderSaleExportExcel.setCreateStrTime(DateUtils.localDateTimeToString(orderSaleVO.getCreateTime()));
-            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getSalePrice).reduce(BigDecimal::add).get());
+            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getThisSalePrice).reduce(BigDecimal::add).get());
+            orderMeals.add(orderSaleExportExcel);
         }
         Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderSaleAndGoodsExportExcel.class, orderMeals);
         HttpServletResponse response = WebUtils.response();
@@ -210,8 +212,8 @@
         for (TOrderStockVO orderStockVO : list) {
             TOrderStockExportExcel orderStockExportExcel = new TOrderStockExportExcel();
             BeanUtils.copyProperties(orderStockVO, orderStockExportExcel);
-            orderStockExportExcel.setGoodsAmount(orderStockVO.getOrderStockGoods().stream().map(TOrderStockGoods::getSalePrice).reduce(BigDecimal::add).get());
             orderStockExportExcel.setStockTime(DateUtils.localDateToString(orderStockVO.getStockTime()));
+            orderStockExportExcels.add(orderStockExportExcel);
         }
         Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderStockExportExcel.class, orderStockExportExcels);
         HttpServletResponse response = WebUtils.response();
@@ -219,7 +221,7 @@
         response.setCharacterEncoding("utf-8");
         ServletOutputStream outputStream = null;
         try {
-            String fileName = URLEncoder.encode("销售生成列表.xls", "utf-8");
+            String fileName = URLEncoder.encode("进货生成列表.xls", "utf-8");
             response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
             response.setContentType("application/vnd.ms-excel;charset=UTF-8");
             response.setHeader("Pragma", "no-cache");
@@ -237,6 +239,78 @@
         }
     }
 
+    @ApiOperation( value = "餐饮数据生成列表导出")
+    @PostMapping(value = "/mealGeneratorListExport")
+    public void mealGeneratorListExport(@RequestBody TDataGeneratorQuery query) {
+        List<TDataGeneratorVO> list = orderMealService.mealGeneratorListExport(query);
+        List<MealGeneratorListExport> mealGeneratorListExports = new ArrayList<>();
+        for (TDataGeneratorVO dataGeneratorVO : list) {
+            MealGeneratorListExport mealGeneratorListExport = new MealGeneratorListExport();
+            BeanUtils.copyProperties(dataGeneratorVO, mealGeneratorListExport);
+            mealGeneratorListExport.setGeneratorTime(DateUtils.localDateTimeToString(dataGeneratorVO.getCreateTime()));
+            mealGeneratorListExport.setStartTimeStr(DateUtils.localDateToString(dataGeneratorVO.getStartTime()) + " ~ " + DateUtils.localDateToString(dataGeneratorVO.getEndTime()));
+            mealGeneratorListExport.setRevenueRange(dataGeneratorVO.getMinMoney() + " ~ " + dataGeneratorVO.getMaxMoney());
+            mealGeneratorListExports.add(mealGeneratorListExport);
+        }
+        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), MealGeneratorListExport.class, mealGeneratorListExports);
+        HttpServletResponse response = WebUtils.response();
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("utf-8");
+        ServletOutputStream outputStream = null;
+        try {
+            String fileName = URLEncoder.encode("餐饮数据生成列表.xls", "utf-8");
+            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+            response.setContentType("application/vnd.ms-excel;charset=UTF-8");
+            response.setHeader("Pragma", "no-cache");
+            response.setHeader("Cache-Control", "no-cache");
+            outputStream = response.getOutputStream();
+            workbook.write(outputStream);
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            try {
+                outputStream.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    @ApiOperation( value = "销售数据生成列表导出")
+    @PostMapping(value = "/saleGeneratorListExport")
+    public void saleGeneratorListExport(@RequestBody TDataGeneratorQuery query) {
+        List<TDataGeneratorVO> list = orderSaleService.saleGeneratorListExport(query);
+        List<SaleGeneratorListExport> saleGeneratorListExports = new ArrayList<>();
+        for (TDataGeneratorVO dataGeneratorVO : list) {
+            SaleGeneratorListExport saleGeneratorListExport = new SaleGeneratorListExport();
+            BeanUtils.copyProperties(dataGeneratorVO, saleGeneratorListExport);
+            saleGeneratorListExport.setGeneratorTime(DateUtils.localDateTimeToString(dataGeneratorVO.getCreateTime()));
+            saleGeneratorListExport.setStartTimeStr(DateUtils.localDateToString(dataGeneratorVO.getStartTime()) + " ~ " + DateUtils.localDateToString(dataGeneratorVO.getEndTime()));
+            saleGeneratorListExports.add(saleGeneratorListExport);
+        }
+        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), SaleGeneratorListExport.class, saleGeneratorListExports);
+        HttpServletResponse response = WebUtils.response();
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("utf-8");
+        ServletOutputStream outputStream = null;
+        try {
+            String fileName = URLEncoder.encode("销售数据生成列表.xls", "utf-8");
+            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+            response.setContentType("application/vnd.ms-excel;charset=UTF-8");
+            response.setHeader("Pragma", "no-cache");
+            response.setHeader("Cache-Control", "no-cache");
+            outputStream = response.getOutputStream();
+            workbook.write(outputStream);
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            try {
+                outputStream.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
 
 }
 

--
Gitblit v1.7.1