|
|
@@ -1,43 +1,5 @@
|
|
|
package com.uas.report.service.impl;
|
|
|
|
|
|
-import java.io.ByteArrayInputStream;
|
|
|
-import java.io.ByteArrayOutputStream;
|
|
|
-import java.io.File;
|
|
|
-import java.io.FileNotFoundException;
|
|
|
-import java.io.IOException;
|
|
|
-import java.io.InputStream;
|
|
|
-import java.io.OutputStream;
|
|
|
-import java.sql.Connection;
|
|
|
-import java.sql.PreparedStatement;
|
|
|
-import java.sql.ResultSet;
|
|
|
-import java.sql.ResultSetMetaData;
|
|
|
-import java.sql.SQLException;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.HashSet;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
-import java.util.Set;
|
|
|
-import java.util.regex.Matcher;
|
|
|
-import java.util.regex.Pattern;
|
|
|
-
|
|
|
-import javax.sql.DataSource;
|
|
|
-
|
|
|
-import org.apache.commons.io.output.FileWriterWithEncoding;
|
|
|
-import org.dom4j.Attribute;
|
|
|
-import org.dom4j.Document;
|
|
|
-import org.dom4j.DocumentException;
|
|
|
-import org.dom4j.Element;
|
|
|
-import org.dom4j.Node;
|
|
|
-import org.dom4j.io.SAXReader;
|
|
|
-import org.dom4j.io.XMLWriter;
|
|
|
-import org.dom4j.tree.DefaultElement;
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.uas.report.SpecialProperties;
|
|
|
import com.uas.report.SystemProperties;
|
|
|
@@ -47,21 +9,8 @@ import com.uas.report.model.ExportType;
|
|
|
import com.uas.report.model.Master;
|
|
|
import com.uas.report.service.FileService;
|
|
|
import com.uas.report.service.PrintService;
|
|
|
-import com.uas.report.util.CollectionUtils;
|
|
|
-import com.uas.report.util.ExceptionUtils;
|
|
|
-import com.uas.report.util.FileUtils;
|
|
|
-import com.uas.report.util.MasterManager;
|
|
|
-import com.uas.report.util.Platform;
|
|
|
-import com.uas.report.util.ReportConstants;
|
|
|
-import com.uas.report.util.ReportUtils;
|
|
|
-import com.uas.report.util.StringUtils;
|
|
|
-
|
|
|
-import net.sf.jasperreports.engine.JRException;
|
|
|
-import net.sf.jasperreports.engine.JRParameter;
|
|
|
-import net.sf.jasperreports.engine.JasperCompileManager;
|
|
|
-import net.sf.jasperreports.engine.JasperFillManager;
|
|
|
-import net.sf.jasperreports.engine.JasperPrint;
|
|
|
-import net.sf.jasperreports.engine.JasperReport;
|
|
|
+import com.uas.report.util.*;
|
|
|
+import net.sf.jasperreports.engine.*;
|
|
|
import net.sf.jasperreports.engine.design.JasperDesign;
|
|
|
import net.sf.jasperreports.engine.export.JRPdfExporter;
|
|
|
import net.sf.jasperreports.engine.export.JRRtfExporter;
|
|
|
@@ -70,13 +19,23 @@ import net.sf.jasperreports.engine.export.JRXlsExporter;
|
|
|
import net.sf.jasperreports.engine.export.ooxml.JRXlsxExporter;
|
|
|
import net.sf.jasperreports.engine.fill.JRFileVirtualizer;
|
|
|
import net.sf.jasperreports.engine.xml.JRXmlLoader;
|
|
|
-import net.sf.jasperreports.export.ExporterInput;
|
|
|
-import net.sf.jasperreports.export.OutputStreamExporterOutput;
|
|
|
-import net.sf.jasperreports.export.SimpleExporterInput;
|
|
|
-import net.sf.jasperreports.export.SimpleOutputStreamExporterOutput;
|
|
|
-import net.sf.jasperreports.export.SimplePdfReportConfiguration;
|
|
|
-import net.sf.jasperreports.export.SimpleWriterExporterOutput;
|
|
|
-import net.sf.jasperreports.export.WriterExporterOutput;
|
|
|
+import net.sf.jasperreports.export.*;
|
|
|
+import org.apache.commons.io.output.FileWriterWithEncoding;
|
|
|
+import org.dom4j.*;
|
|
|
+import org.dom4j.io.SAXReader;
|
|
|
+import org.dom4j.io.XMLWriter;
|
|
|
+import org.dom4j.tree.DefaultElement;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import javax.sql.DataSource;
|
|
|
+import java.io.*;
|
|
|
+import java.sql.*;
|
|
|
+import java.util.*;
|
|
|
+import java.util.regex.Matcher;
|
|
|
+import java.util.regex.Pattern;
|
|
|
|
|
|
/**
|
|
|
* 报表打印
|
|
|
@@ -178,9 +137,12 @@ public class PrintServiceImpl implements PrintService {
|
|
|
logger.info("dataSource.getConnection done..." + userName);
|
|
|
|
|
|
String jasperFilePath = maybeCompileJrxmlFile(jrxmlFilePath, false, otherParameters, connection);
|
|
|
+ if(StringUtils.isEmpty(jasperFilePath)){
|
|
|
+ throw new IllegalStateException("编译报表模板失败: " + jrxmlFilePath);
|
|
|
+ }
|
|
|
|
|
|
Map<String, Object> result = new HashMap<>();
|
|
|
- byte[] data = null;
|
|
|
+ byte[] data;
|
|
|
// 从数据库获取数据填充报表
|
|
|
JasperPrint jasperPrint = null;
|
|
|
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
|