Преглед изворни кода

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

release_toaliyun_real
gongbiao пре 7 година
родитељ
комит
dc701e62f4
3 измењених фајлова са 88 додато и 12 уклоњено
  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 Прегледај датотеку

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


import com.github.pagehelper.PageInfo;
import com.simple.common.Result;
import com.simple.common.ResultData; import com.simple.common.ResultData;
import com.simple.domain.po.WxCouponOrder; import com.simple.domain.po.WxCouponOrder;
import com.simple.domain.vo.WxCouponOrderBVo;
import com.simple.service.WxCouponOrderService; import com.simple.service.WxCouponOrderService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
@@ -12,7 +9,13 @@ import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; 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 @RestController
@RequestMapping("wxCouponOrder") @RequestMapping("wxCouponOrder")
@@ -35,5 +38,13 @@ public class WxCouponOrderController extends BaseController
return wxCouponOrderService.listAdminAsPage(wxCouponOrder, pageNum, pageSize); 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 Прегледај датотеку

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


import java.util.*;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.simple.common.ResultData; import com.simple.common.ResultData;
import com.simple.domain.po.MallUserInfo;
import com.simple.domain.po.WxCouponOrder; 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 { public interface WxCouponOrderService {


@@ -107,4 +105,6 @@ public interface WxCouponOrderService {
*/ */
ResultData listAdminAsPage(WxCouponOrder wxCouponOrder, Integer pageIndex, Integer pageSize); 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 Прегледај датотеку

@@ -1,25 +1,30 @@
package com.simple.service.impl; 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.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.simple.common.ErrorCode; import com.simple.common.ErrorCode;
import com.simple.common.IdWorker; import com.simple.common.IdWorker;
import com.simple.common.Result;
import com.simple.common.ResultData; import com.simple.common.ResultData;
import com.simple.domain.po.*; import com.simple.domain.po.*;
import com.simple.domain.vo.WxCouponOrderBVo;
import com.simple.domain.vo.WxCouponOrderCVo; import com.simple.domain.vo.WxCouponOrderCVo;
import com.simple.enums.EnumCouponOrderStatus; import com.simple.enums.EnumCouponOrderStatus;
import com.simple.enums.EnumCouponStatus;
import com.simple.exception.MallinkException; import com.simple.exception.MallinkException;
import com.simple.mapper.*; import com.simple.mapper.*;
import com.simple.service.WxCouponOrderService; import com.simple.service.WxCouponOrderService;
import org.apache.log4j.Logger; 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.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; 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.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
@@ -206,6 +211,66 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
return new ResultData(PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponOrderMapper.findListOfAdmin(wxCouponOrder))); 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 @Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public ResultData verify(Long couponOrderId, Long bUserId) { public ResultData verify(Long couponOrderId, Long bUserId) {


Loading…
Откажи
Сачувај