From 20956b0f05f81ca47cf6c3e8f9b3b426e9cfd035 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期日, 24 九月 2023 21:54:01 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
inventory-server/src/main/java/com/yuanchu/mom/service/impl/SaleServiceImpl.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 47 insertions(+), 4 deletions(-)
diff --git a/inventory-server/src/main/java/com/yuanchu/mom/service/impl/SaleServiceImpl.java b/inventory-server/src/main/java/com/yuanchu/mom/service/impl/SaleServiceImpl.java
index 85abcc8..516d62d 100644
--- a/inventory-server/src/main/java/com/yuanchu/mom/service/impl/SaleServiceImpl.java
+++ b/inventory-server/src/main/java/com/yuanchu/mom/service/impl/SaleServiceImpl.java
@@ -1,6 +1,8 @@
package com.yuanchu.mom.service.impl;
import cn.hutool.core.date.DateUtil;
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.support.ExcelTypeEnum;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -10,20 +12,25 @@
import com.yuanchu.mom.pojo.Sale;
import com.yuanchu.mom.mapper.SaleMapper;
import com.yuanchu.mom.pojo.SaleMaterial;
-import com.yuanchu.mom.pojo.dto.ConsignmentDto1;
-import com.yuanchu.mom.pojo.dto.ConsignmentDto2;
-import com.yuanchu.mom.pojo.dto.SaleDto;
-import com.yuanchu.mom.pojo.dto.SaleMaterialDto;
+import com.yuanchu.mom.pojo.dto.*;
import com.yuanchu.mom.pojo.vo.SaleVo;
import com.yuanchu.mom.service.SaleMaterialService;
import com.yuanchu.mom.service.SaleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yuanchu.mom.utils.easyexcel.CustemHandler;
+import com.yuanchu.mom.utils.easyexcel.EasyExcelUtils;
+import com.yuanchu.mom.utils.easyexcel.LocalDateConverter;
+import com.yuanchu.mom.utils.easyexcel.template.ExportSaleTemplate;
import com.yuanchu.mom.vo.Result;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
@@ -257,4 +264,40 @@
}
return list;
}
+
+ @Override
+ public void exportSale(ExportSaleDto dto, HttpServletResponse response) {
+ try{
+ List<ExportSaleTemplate> exportSaleTemplates = saleMapper.selectSaleListByExport(dto.getOrderNumber(), dto.getName(), dto.getType(), dto.getDelTime());
+ for (int i = 0; i < exportSaleTemplates.size(); i++) {
+ exportSaleTemplates.get(i).setId(i+1);
+ }
+ String fileName = String.valueOf(new StringBuilder()
+ .append("閿�鍞鍗昣")
+ .append(DateUtil.today())
+ .append(ExcelTypeEnum.XLS.getValue()));
+ fileName = URLEncoder.encode(fileName, StandardCharsets.UTF_8.toString());
+ response.setContentType("application/octet-stream");
+ response.setHeader("Cache-Control", "no-cache");
+ response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+ response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
+ EasyExcel.write(response.getOutputStream())
+ .head(ExportSaleTemplate.class)
+ .registerConverter(new LocalDateConverter())
+ .autoCloseStream(true)
+ .excelType(ExcelTypeEnum.XLS)
+ .registerWriteHandler(new CustemHandler())
+ .registerWriteHandler(EasyExcelUtils.getStyleStrategy())
+ .sheet("Sheet1")
+ .doWrite(exportSaleTemplates);
+ }catch (IOException e) {
+ e.printStackTrace();
+ } finally {
+ try {
+ response.getOutputStream().close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
}
--
Gitblit v1.9.3