Browse Source

模板验证

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

Loading…
Cancel
Save