Browse Source

模板验证

develop
wangsixiang 8 months ago
parent
commit
82bc5de23e
  1. 81
      zc-business/src/main/java/com/zc/business/service/impl/DcSdhsEventServiceImpl.java

81
zc-business/src/main/java/com/zc/business/service/impl/DcSdhsEventServiceImpl.java

@ -426,6 +426,7 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
// }else { // }else {
// title="事故路段分布图-济南方向"; // title="事故路段分布图-济南方向";
// } // }
if (map != null && map.size() != UniversalEnum.ZERO.getNumber()){
PoiUtil.createHeading2(doc, title); PoiUtil.createHeading2(doc, title);
XWPFTable table = doc.createTable(map.size()+1,2); XWPFTable table = doc.createTable(map.size()+1,2);
//列宽自动分割 //列宽自动分割
@ -470,6 +471,10 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
}catch (Exception e){ }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
} }
}else {
addDescription(doc, UniversalEnum.NO_DATA_AVAILABLE.getValue());
}
} }
//事故类型分析导出 //事故类型分析导出
@Override @Override
@ -482,8 +487,9 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
// }else { // }else {
// title="事件类型分布图-济南方向"; // title="事件类型分布图-济南方向";
// } // }
if (map != null && map.size() != UniversalEnum.ZERO.getNumber()) {
PoiUtil.createHeading2(doc, title); PoiUtil.createHeading2(doc, title);
XWPFTable table = doc.createTable(map.size()+1,2); XWPFTable table = doc.createTable(map.size() + 1, 2);
//列宽自动分割 //列宽自动分割
CTTblWidth infoTableWidth = table.getCTTbl().addNewTblPr().addNewTblW(); CTTblWidth infoTableWidth = table.getCTTbl().addNewTblPr().addNewTblW();
infoTableWidth.setType(STTblWidth.DXA); infoTableWidth.setType(STTblWidth.DXA);
@ -494,11 +500,11 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
List<Map.Entry<String, Integer>> entries = new ArrayList<>(map.entrySet()); List<Map.Entry<String, Integer>> entries = new ArrayList<>(map.entrySet());
//excel //excel
for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++){ for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++) {
setTableFonts(table.getRow(i+1).getCell(0), entries.get(i).getKey()); setTableFonts(table.getRow(i + 1).getCell(0), entries.get(i).getKey());
setTableFonts(table.getRow(i+1).getCell(1), entries.get(i).getValue().toString()); setTableFonts(table.getRow(i + 1).getCell(1), entries.get(i).getValue().toString());
} }
try{ try {
// 复制Word模板 // 复制Word模板
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(UniversalEnum.TYPE_ANALYSIS.getValue()); InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(UniversalEnum.TYPE_ANALYSIS.getValue());
XWPFDocument copiedTemplate = new XWPFDocument(inputStream); XWPFDocument copiedTemplate = new XWPFDocument(inputStream);
@ -511,30 +517,34 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
//系列信息 //系列信息
String[] singleBarSeriesNames = {"事件类型"}; String[] singleBarSeriesNames = {"事件类型"};
//分类信息 //分类信息
for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++){ for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++) {
sheet.getRow(i+UniversalEnum.ONE.getNumber()).getCell(UniversalEnum.ZERO.getNumber()).setCellValue(entries.get(i).getKey()); sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(UniversalEnum.ZERO.getNumber()).setCellValue(entries.get(i).getKey());
sheet.getRow(i+UniversalEnum.ONE.getNumber()).getCell(UniversalEnum.ONE.getNumber()).setCellValue(Long.parseLong(entries.get(i).getValue().toString())); sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(UniversalEnum.ONE.getNumber()).setCellValue(Long.parseLong(entries.get(i).getValue().toString()));
} }
for (int i = sheet.getLastRowNum(); i > entries.size();i--){ for (int i = sheet.getLastRowNum(); i > entries.size(); i--) {
sheet.removeRow(sheet.getRow(i)); sheet.removeRow(sheet.getRow(i));
} }
PoiUtil.wordExportChar(chart, title, singleBarSeriesNames,sheet ); PoiUtil.wordExportChar(chart, title, singleBarSeriesNames, sheet);
// 追加到同一个Word文档中 // 追加到同一个Word文档中
mergeChart(chart,doc); mergeChart(chart, doc);
// 关闭复制的模板文档 // 关闭复制的模板文档
copiedTemplate.close(); copiedTemplate.close();
}catch (Exception e){ } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
}else {
addDescription(doc, UniversalEnum.NO_DATA_AVAILABLE.getValue());
}
} }
//事故拥堵时间导出 //事故拥堵时间导出
@Override @Override
public void accidentCongestedTimeExport(XWPFDocument doc, DcSdhsEventQuery dcSdhsEventQuery) { public void accidentCongestedTimeExport(XWPFDocument doc, DcSdhsEventQuery dcSdhsEventQuery) {
Map<String, String> map =accidentCongestedTime(dcSdhsEventQuery); Map<String, String> map =accidentCongestedTime(dcSdhsEventQuery);
String title="事故拥堵时长分布图"; String title="事故拥堵时长分布图";
if (map != null && map.size() != UniversalEnum.ZERO.getNumber()) {
PoiUtil.createHeading2(doc, title); PoiUtil.createHeading2(doc, title);
XWPFTable table = doc.createTable(map.size()+1,2); XWPFTable table = doc.createTable(map.size() + 1, 2);
//列宽自动分割 //列宽自动分割
CTTblWidth infoTableWidth = table.getCTTbl().addNewTblPr().addNewTblW(); CTTblWidth infoTableWidth = table.getCTTbl().addNewTblPr().addNewTblW();
infoTableWidth.setType(STTblWidth.DXA); infoTableWidth.setType(STTblWidth.DXA);
@ -545,11 +555,11 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
List<Map.Entry<String, String>> entries = new ArrayList<>(map.entrySet()); List<Map.Entry<String, String>> entries = new ArrayList<>(map.entrySet());
//excel //excel
for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++){ for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++) {
setTableFonts(table.getRow(i+1).getCell(0), entries.get(i).getKey()); setTableFonts(table.getRow(i + 1).getCell(0), entries.get(i).getKey());
setTableFonts(table.getRow(i+1).getCell(1), entries.get(i).getValue().toString()); setTableFonts(table.getRow(i + 1).getCell(1), entries.get(i).getValue().toString());
} }
try{ try {
// 复制Word模板 // 复制Word模板
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(UniversalEnum.CONGESTION_TIME.getValue()); InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(UniversalEnum.CONGESTION_TIME.getValue());
XWPFDocument copiedTemplate = new XWPFDocument(inputStream); XWPFDocument copiedTemplate = new XWPFDocument(inputStream);
@ -562,30 +572,34 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
//系列信息 //系列信息
String[] singleBarSeriesNames = {"事故拥堵时长"}; String[] singleBarSeriesNames = {"事故拥堵时长"};
//分类信息 //分类信息
for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++){ for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++) {
sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(0).setCellValue(entries.get(i).getKey()); sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(0).setCellValue(entries.get(i).getKey());
sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(1).setCellValue(Double.valueOf(entries.get(i).getValue())); sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(1).setCellValue(Double.valueOf(entries.get(i).getValue()));
} }
for (int i = sheet.getLastRowNum(); i > entries.size();i--){ for (int i = sheet.getLastRowNum(); i > entries.size(); i--) {
sheet.removeRow(sheet.getRow(i)); sheet.removeRow(sheet.getRow(i));
} }
PoiUtil.wordExportChar(chart, title, singleBarSeriesNames,sheet ); PoiUtil.wordExportChar(chart, title, singleBarSeriesNames, sheet);
// 追加到同一个Word文档中 // 追加到同一个Word文档中
mergeChart(chart,doc); mergeChart(chart, doc);
// 关闭复制的模板文档 // 关闭复制的模板文档
copiedTemplate.close(); copiedTemplate.close();
}catch (Exception e){ } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
}else {
addDescription(doc, UniversalEnum.NO_DATA_AVAILABLE.getValue());
}
} }
//事故拥堵地点导出 //事故拥堵地点导出
@Override @Override
public void accidentCongestedLocationExport(XWPFDocument doc, DcSdhsEventQuery dcSdhsEventQuery) { public void accidentCongestedLocationExport(XWPFDocument doc, DcSdhsEventQuery dcSdhsEventQuery) {
Map<String, Integer> map =accidentCongestedLocation(dcSdhsEventQuery); Map<String, Integer> map =accidentCongestedLocation(dcSdhsEventQuery);
String title="事故拥堵地点分布图"; String title="事故拥堵地点分布图";
if (map != null && map.size() != UniversalEnum.ZERO.getNumber()) {
PoiUtil.createHeading2(doc, title); PoiUtil.createHeading2(doc, title);
XWPFTable table = doc.createTable(map.size()+1,2); XWPFTable table = doc.createTable(map.size() + 1, 2);
//列宽自动分割 //列宽自动分割
CTTblWidth infoTableWidth = table.getCTTbl().addNewTblPr().addNewTblW(); CTTblWidth infoTableWidth = table.getCTTbl().addNewTblPr().addNewTblW();
infoTableWidth.setType(STTblWidth.DXA); infoTableWidth.setType(STTblWidth.DXA);
@ -596,11 +610,11 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
List<Map.Entry<String, Integer>> entries = new ArrayList<>(map.entrySet()); List<Map.Entry<String, Integer>> entries = new ArrayList<>(map.entrySet());
//excel //excel
for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++){ for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++) {
setTableFonts(table.getRow(i+1).getCell(0), entries.get(i).getKey()); setTableFonts(table.getRow(i + 1).getCell(0), entries.get(i).getKey());
setTableFonts(table.getRow(i+1).getCell(1), entries.get(i).getValue().toString()); setTableFonts(table.getRow(i + 1).getCell(1), entries.get(i).getValue().toString());
} }
try{ try {
// 复制Word模板 // 复制Word模板
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(UniversalEnum.CONGESTED_LOCATION.getValue()); InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(UniversalEnum.CONGESTED_LOCATION.getValue());
XWPFDocument copiedTemplate = new XWPFDocument(inputStream); XWPFDocument copiedTemplate = new XWPFDocument(inputStream);
@ -613,22 +627,25 @@ public class DcSdhsEventServiceImpl implements IDcSdhsEventService {
//系列信息 //系列信息
String[] singleBarSeriesNames = {"事故拥堵地点"}; String[] singleBarSeriesNames = {"事故拥堵地点"};
//分类信息 //分类信息
for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++){ for (int i = UniversalEnum.ZERO.getNumber(); i < entries.size(); i++) {
sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(0).setCellValue(entries.get(i).getKey()); sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(0).setCellValue(entries.get(i).getKey());
sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(1).setCellValue(entries.get(i).getValue()); sheet.getRow(i + UniversalEnum.ONE.getNumber()).getCell(1).setCellValue(entries.get(i).getValue());
} }
for (int i = sheet.getLastRowNum(); i > entries.size();i--){ for (int i = sheet.getLastRowNum(); i > entries.size(); i--) {
sheet.removeRow(sheet.getRow(i)); sheet.removeRow(sheet.getRow(i));
} }
PoiUtil.wordExportChar(chart, title, singleBarSeriesNames,sheet ); PoiUtil.wordExportChar(chart, title, singleBarSeriesNames, sheet);
// 追加到同一个Word文档中 // 追加到同一个Word文档中
mergeChart(chart,doc); mergeChart(chart, doc);
// 关闭复制的模板文档 // 关闭复制的模板文档
copiedTemplate.close(); copiedTemplate.close();
}catch (Exception e){ } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
}else {
addDescription(doc, UniversalEnum.NO_DATA_AVAILABLE.getValue());
}
} }
/*public AjaxResult importData(MultipartFile file) throws IOException { /*public AjaxResult importData(MultipartFile file) throws IOException {

Loading…
Cancel
Save