|
@ -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 { |
|
|