From 603ebb026943a6c9d322133b4e3a375d876650b3 Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Fri, 14 Jul 2023 12:53:32 +0800 Subject: [PATCH] fix poi --- .../basic/TtMerchantPoiController.java | 1 - .../iformall/controller/mem/AsyncTask.java | 41 ++++++++++++++++++- 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java b/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java index bdc10994b..994d547e6 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java @@ -270,7 +270,6 @@ public class TtMerchantPoiController extends DouyinBaseController { } } } - @TenantIgnore @PostMapping(value = "/importPoi", consumes = "multipart/*") diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java index aed348921..63eb88ccf 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java @@ -11,6 +11,7 @@ import cn.afterturn.easypoi.handler.inter.IExcelDataHandler; import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; import com.iformall.common.ErrorCode; +import com.iformall.common.ResultData; import com.iformall.domain.po.MallUserInfo; import com.iformall.domain.po.TtMerchantPoi; import com.iformall.domain.po.WxMerchant; @@ -23,6 +24,7 @@ import com.iformall.domain.vo.MerchantPoiTNew; import com.iformall.domain.vo.WxCardPriceTemplate; import com.iformall.enums.EnumMerchantCreateFrom; import com.iformall.exception.MallinkException; +import com.iformall.file.aliyun.AliyunOSS; import com.iformall.service.TtMerchantPoiService; import com.iformall.service.WxCUserBasicInfoService; import com.iformall.service.WxCouponPasswordService; @@ -39,7 +41,10 @@ import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; import java.io.File; +import java.io.InputStream; import java.io.OutputStream; import java.util.ArrayList; import java.util.HashMap; @@ -71,6 +76,9 @@ public class AsyncTask { @Autowired private WxMerchantService wxMerchantService; + + @Autowired + private AliyunOSS aliyunOSS; private class UserExcelHandler extends ExcelDataHandlerDefaultImpl { @Override @@ -391,7 +399,7 @@ public class AsyncTask { } } - private static void exportExcel(HttpServletRequest request, HttpServletResponse response,List successList, Class dataClass, String fileName) throws Exception { + private void exportExcel(HttpServletRequest request, HttpServletResponse response,List successList, Class dataClass, String fileName) throws Exception { ExportParams exportParams = new ExportParams(); exportParams.setType(ExcelType.XSSF); Workbook workBook = ExcelExportUtil.exportExcel(exportParams, dataClass, successList); @@ -407,6 +415,37 @@ public class AsyncTask { out.close(); } + private String uploadErrorExcel(List successList, Class dataClass, String fileName) throws Exception { + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + Workbook workBook = ExcelExportUtil.exportExcel(exportParams, dataClass, successList); + ByteArrayOutputStream bos = null; + try { + bos = new ByteArrayOutputStream(); + workBook.write(bos); + byte[] barray = bos.toByteArray(); + InputStream is = new ByteArrayInputStream(barray); + int dot = fileName.lastIndexOf('.'); + String fileFormat = ""; + if (dot >= 0) { + fileFormat = fileName.substring(dot, fileName.length()); + } + return aliyunOSS.upload("temp/errorexcel", fileFormat, is); + }catch(Exception e) { + logger.error("uploadErrorExcel error.",e); + }finally { + if (bos != null) { + try { + bos.flush(); + bos.close(); + }catch(Exception e) { + logger.error("uploadErrorExcel error.",e); + } + } + } + return null; + } + @Async public void importExcelPoiDataForNew(File file, MallUserInfo user, String importKey,HttpServletRequest request, HttpServletResponse response) { // 需要验证