|
@@ -121,23 +121,51 @@ public class TicketBoxMgrController extends BaseApiController {
|
|
|
if (null == ids || null == ids.getIds() || ids.getIds().size() == 0) {
|
|
|
return AjaxResult.error("请选择需要导出的盲票组");
|
|
|
}
|
|
|
+ List<TicketExcel> excelList = new ArrayList<TicketExcel>();
|
|
|
+ // 首先查询要导出的数据总数
|
|
|
LambdaQueryWrapper<Ticket> queryWrapper = new LambdaQueryWrapper<Ticket>();
|
|
|
queryWrapper.in(Ticket::getBoxId, ids.getIds());
|
|
|
- List<Ticket> list = ticketService.list(queryWrapper);
|
|
|
- if (null == list || list.size() == 0) {
|
|
|
+ int totalSize = ticketService.count(queryWrapper);
|
|
|
+ if (totalSize == 0) {
|
|
|
return AjaxResult.error("选择的盲票组中没有可导出的数据");
|
|
|
}
|
|
|
- List<TicketExcel> excelList = new ArrayList<TicketExcel>();
|
|
|
- for (Ticket ticket : list) {
|
|
|
- if (null != ticket && StringUtils.isNotBlank(ticket.getSerialNo())
|
|
|
- && StringUtils.isNotBlank(ticket.getDrawNum())
|
|
|
- && StringUtils.isNotBlank(ticket.getCipherLuckyNum())) {
|
|
|
- TicketExcel ticketExcel = new TicketExcel();
|
|
|
- ticketExcel.setSerialNo(ticket.getSerialNo());
|
|
|
- ticketExcel.setUrl(exportUrl + ticket.getSerialNo());
|
|
|
- ticketExcel.setDrawNum(ticket.getDrawNum());
|
|
|
- ticketExcel.setCipherLuckyNum(ticket.getCipherLuckyNum());
|
|
|
- excelList.add(ticketExcel);
|
|
|
+ if(totalSize > 1000) {
|
|
|
+ int totalPage = totalSize%1000 == 0?totalSize/1000:totalSize/1000+1;
|
|
|
+ for (int i = 0; i < totalPage; i++) {
|
|
|
+ LambdaQueryWrapper<Ticket> pageQueryWrapper = new LambdaQueryWrapper<Ticket>();
|
|
|
+ pageQueryWrapper.in(Ticket::getBoxId, ids.getIds());
|
|
|
+ queryWrapper.last("limit "+(i+1)+", 1000");
|
|
|
+ List<Ticket> list = ticketService.list(queryWrapper);
|
|
|
+ if(null != list && list.size() > 0 ) {
|
|
|
+ for (Ticket ticket : list) {
|
|
|
+ if (null != ticket && StringUtils.isNotBlank(ticket.getSerialNo())
|
|
|
+ && StringUtils.isNotBlank(ticket.getDrawNum())
|
|
|
+ && StringUtils.isNotBlank(ticket.getCipherLuckyNum())) {
|
|
|
+ TicketExcel ticketExcel = new TicketExcel();
|
|
|
+ ticketExcel.setSerialNo(ticket.getSerialNo());
|
|
|
+ ticketExcel.setUrl(exportUrl + ticket.getSerialNo());
|
|
|
+ ticketExcel.setDrawNum(ticket.getDrawNum());
|
|
|
+ ticketExcel.setCipherLuckyNum(ticket.getCipherLuckyNum());
|
|
|
+ excelList.add(ticketExcel);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ List<Ticket> list = ticketService.list(queryWrapper);
|
|
|
+ if(null != list && list.size() > 0 ) {
|
|
|
+ for (Ticket ticket : list) {
|
|
|
+ if (null != ticket && StringUtils.isNotBlank(ticket.getSerialNo())
|
|
|
+ && StringUtils.isNotBlank(ticket.getDrawNum())
|
|
|
+ && StringUtils.isNotBlank(ticket.getCipherLuckyNum())) {
|
|
|
+ TicketExcel ticketExcel = new TicketExcel();
|
|
|
+ ticketExcel.setSerialNo(ticket.getSerialNo());
|
|
|
+ ticketExcel.setUrl(exportUrl + ticket.getSerialNo());
|
|
|
+ ticketExcel.setDrawNum(ticket.getDrawNum());
|
|
|
+ ticketExcel.setCipherLuckyNum(ticket.getCipherLuckyNum());
|
|
|
+ excelList.add(ticketExcel);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
ExcelUtil<TicketExcel> util = new ExcelUtil<TicketExcel>(TicketExcel.class);
|