Browse Source

[券订单][新增]:导出excel

release_toaliyun_real
gongbiao 7 years ago
parent
commit
dc701e62f4
3 changed files with 88 additions and 12 deletions
  1. +15
    -4
      mallinkAdmin/src/main/java/com/simple/controller/WxCouponOrderController.java
  2. +5
    -5
      mallinkService/src/main/java/com/simple/service/WxCouponOrderService.java
  3. +68
    -3
      mallinkService/src/main/java/com/simple/service/impl/WxCouponOrderServiceImpl.java

+ 15
- 4
mallinkAdmin/src/main/java/com/simple/controller/WxCouponOrderController.java View File

@@ -1,10 +1,7 @@
package com.simple.controller;

import com.github.pagehelper.PageInfo;
import com.simple.common.Result;
import com.simple.common.ResultData;
import com.simple.domain.po.WxCouponOrder;
import com.simple.domain.vo.WxCouponOrderBVo;
import com.simple.service.WxCouponOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -12,7 +9,13 @@ import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@RestController
@RequestMapping("wxCouponOrder")
@@ -35,5 +38,13 @@ public class WxCouponOrderController extends BaseController
return wxCouponOrderService.listAdminAsPage(wxCouponOrder, pageNum, pageSize);
}

@RequestMapping("/exportData")
public void exportData(HttpServletRequest request, HttpServletResponse response){

wxCouponOrderService.exportData(request,response,getTenantId());

}



}

+ 5
- 5
mallinkService/src/main/java/com/simple/service/WxCouponOrderService.java View File

@@ -1,13 +1,11 @@
package com.simple.service;

import java.util.*;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.simple.common.ResultData;
import com.simple.domain.po.MallUserInfo;
import com.simple.domain.po.WxCouponOrder;
import com.simple.domain.po.WxMerchantBUser;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public interface WxCouponOrderService {

@@ -107,4 +105,6 @@ public interface WxCouponOrderService {
*/
ResultData listAdminAsPage(WxCouponOrder wxCouponOrder, Integer pageIndex, Integer pageSize);

void exportData(HttpServletRequest request, HttpServletResponse response, String tenantId);

}

+ 68
- 3
mallinkService/src/main/java/com/simple/service/impl/WxCouponOrderServiceImpl.java View File

@@ -1,25 +1,30 @@
package com.simple.service.impl;

import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.TemplateExportParams;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.simple.common.ErrorCode;
import com.simple.common.IdWorker;
import com.simple.common.Result;
import com.simple.common.ResultData;
import com.simple.domain.po.*;
import com.simple.domain.vo.WxCouponOrderBVo;
import com.simple.domain.vo.WxCouponOrderCVo;
import com.simple.enums.EnumCouponOrderStatus;
import com.simple.enums.EnumCouponStatus;
import com.simple.exception.MallinkException;
import com.simple.mapper.*;
import com.simple.service.WxCouponOrderService;
import org.apache.log4j.Logger;
import org.apache.poi.ss.usermodel.Workbook;
import org.aspectj.apache.bcel.classfile.ConstantString;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -206,6 +211,66 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
return new ResultData(PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponOrderMapper.findListOfAdmin(wxCouponOrder)));
}

@Override
public void exportData(HttpServletRequest request, HttpServletResponse response, String tenantId) {
WxCouponOrder wxCouponOrder = new WxCouponOrder();
wxCouponOrder.setTenantId(tenantId);
List<WxCouponOrder> list = wxCouponOrderMapper.findList(wxCouponOrder);

String filepath="./uploads/";
File savefile = new File(filepath);
if (!savefile.exists()) {
savefile.mkdirs();
}

Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), WxCouponOrder.class, list);
FileOutputStream fos = null;
try {
String filename=UUID.randomUUID()+".xlsx";
filepath=filepath+filename;
fos = new FileOutputStream(filepath);
workbook.write(fos);
fos.close();
downFile(filepath,filename,response,request);
} catch (Exception e) {
e.printStackTrace();
}


}


public void downFile(String filePath,String filename, HttpServletResponse response,
HttpServletRequest req) throws IOException {
try {
response.reset();
response.setContentType("bin");
String agent = req.getHeader("user-agent");
if (agent.contains("Firefox")) {
response.setHeader("Content-disposition",
"attachment; filename="
+ new String(filename.getBytes("GB2312"),
"ISO-8859-1"));
} else {
response
.setHeader("Content-disposition",
"attachment; filename="
+ java.net.URLEncoder.encode(filename,
"UTF-8"));
}
// 循环取出流中的数据
byte[] b = new byte[1024];
int len;
InputStream inStream = new FileInputStream(filePath);
while ((len = inStream.read(b)) > 0)
response.getOutputStream().write(b, 0, len);
inStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}


@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public ResultData verify(Long couponOrderId, Long bUserId) {


Loading…
Cancel
Save