| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- package cn.com.goldenwater.dcproj.utils.export;
- import cn.com.goldenwater.dcproj.dto.BisInspWtdstDetailDto;
- import cn.com.goldenwater.dcproj.param.BisInspWtdstDtoListParam;
- import cn.com.goldenwater.dcproj.param.TypeExportParam;
- import cn.com.goldenwater.dcproj.service.BisInspWtdstService;
- import cn.com.goldenwater.dcproj.service.GeneralDownloadService;
- import com.github.pagehelper.PageInfo;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import java.io.*;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- /**
- * @ClassName CreateShTables
- * @Author liyz
- * @Date 2019/3/15 11:41
- * @Version 1.0
- **/
- @Component
- public class CreateShTables {
- private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- @Autowired
- private ExcelFieldUtil excelFieldUtil;
- @Autowired
- private CreateExcelHelper createExcelHelper;
- /**
- * 7.水毁督查情况
- */
- @Autowired
- private BisInspWtdstService bisInspWtdstService;
- @Autowired
- private GeneralDownloadService generalDownloadService;
- /**
- * 7.创建水毁工程督查情况表
- *
- * @param
- * @param
- */
- public int createBisInspWtdstDtoExcel(TypeExportParam typeExportParam, PrintWriter printWriter, String adCode, String dir) {
- BisInspWtdstDtoListParam bisInspWtdstDtoListParam = new BisInspWtdstDtoListParam();
- bisInspWtdstDtoListParam.setPersGuid(typeExportParam.getPersGuid());
- bisInspWtdstDtoListParam.setLocAd(adCode);
- // 一页查200条数据
- bisInspWtdstDtoListParam.setPageSize(200);
- PageInfo<BisInspWtdstDetailDto> data = null;
- try {
- data = generalDownloadService.findDtoListAboutExport(bisInspWtdstDtoListParam, typeExportParam);
- } catch (Exception e) {
- e.printStackTrace();
- }
- // 如果没有数据,则直接返回
- if (data.getList().size() == 0) {
- return 0;
- }
- String tab = TableEnum.T7.toString();
- String fileName = createExcelHelper.getAdName(adCode + "0000000000") + TableEnum.T7.getName();
- OutputStream os = null;
- //导出
- try {
- printWriter.println(sdf.format(new Date()) + " 开始创建 " + fileName + ".xls" + "<br>");
- printWriter.flush();
- // 如果有数据,则导出到excel
- File outputFile = new File(dir + fileName + (System.currentTimeMillis()) + ".xls");
- os = new FileOutputStream(outputFile);
- // 导出到excel
- ExportAbstract exportZ = createExcelHelper.export(tab, fileName, os, excelFieldUtil.getBisInspWtdstDtoDataList(data.getList()));
- int pages = data.getPages();
- // 如果超过一页
- if (pages > 1) {
- for (int p = 2; p <= pages; p++) {
- bisInspWtdstDtoListParam.setPageNum(p);
- PageInfo<BisInspWtdstDetailDto> dataNext = generalDownloadService.findDtoListAboutExport(bisInspWtdstDtoListParam, typeExportParam);
- // 继续导出
- exportZ.ContinueExport(excelFieldUtil.getBisInspWtdstDtoDataList(dataNext.getList()));
- }
- }
- exportZ.EndExport();
- os.close();
- printWriter.println(sdf.format(new Date()) + " 完成创建 " + fileName + ".xls" + "<br>");
- printWriter.flush();
- } catch (Exception e) {
- try {
- os.close();
- } catch (IOException e1) {
- e1.printStackTrace();
- return 0;
- }
- e.printStackTrace();
- }
- return 1;
- }
- }
|