package com.fdkankan.manage.service.impl; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fdkankan.manage.common.PageInfo; import com.fdkankan.manage.common.CacheUtil; import com.fdkankan.manage.entity.IncrementOrder; import com.fdkankan.manage.mapper.IIncrementOrderMapper; import com.fdkankan.manage.service.IExcelService; import com.fdkankan.manage.service.IIncrementOrderService; import com.fdkankan.manage.util.Dateutils; import com.fdkankan.manage.vo.request.OrderParam; import com.fdkankan.manage.vo.response.IncrementOrderVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** *

* 增值权益订单表 服务实现类 *

* * @author * @since 2022-05-31 */ @Service public class IncrementOrderServiceImpl extends ServiceImpl implements IIncrementOrderService { @Autowired IExcelService excelService; @Override public PageInfo pageList(OrderParam param) { CacheUtil.orderParam = param; Page page = this.getBaseMapper().pageList(new Page<>(param.getPageNum(),param.getPageSize()),param); for (IncrementOrderVo record : page.getRecords()) { String tradeTime = record.getTradeTime(); if(record.getTimeZoneOff() != null){ tradeTime = Dateutils.AddMinute(record.getTradeTime(),record.getTimeZoneOff()); } record.setCreateTime(tradeTime); } return PageInfo.PageInfo(page); } @Override public void export(HttpServletRequest req, HttpServletResponse resp) { OrderParam orderParam = CacheUtil.orderParam; orderParam.setPageNum(1); orderParam.setPageSize(5000); Page page = this.getBaseMapper().pageList(new Page<>(orderParam.getPageNum(),orderParam.getPageSize()),orderParam); ExcelWriter excelWriter = null; try { excelWriter = EasyExcel.write(resp.getOutputStream(),IncrementOrderVo.class).build(); excelService.commonExport(req,resp,"权益订单",page.getRecords(),excelWriter); while (page.hasNext()){ orderParam.setPageNum(orderParam.getPageNum() +1); page = this.getBaseMapper().pageList(new Page<>(orderParam.getPageNum(),orderParam.getPageSize()),orderParam); if(page.getRecords().size() >0){ excelService.commonExport(req,resp,"权益订单",page.getRecords(),excelWriter); } } }catch (Exception e){ e.printStackTrace(); }finally { if(excelWriter !=null){ excelWriter.finish(); } } } }