@@ -37,6 +37,7 @@ import com.njcn.event.pojo.po.EventDetailNew;
import com.njcn.event.pojo.po.Eventass ;
import com.njcn.event.pojo.po.Eventass ;
import com.njcn.event.pojo.vo.* ;
import com.njcn.event.pojo.vo.* ;
import com.njcn.event.service.majornetwork.EventAnalysisService ;
import com.njcn.event.service.majornetwork.EventAnalysisService ;
import com.njcn.event.service.majornetwork.EventReportService ;
import com.njcn.event.service.majornetwork.ReportService ;
import com.njcn.event.service.majornetwork.ReportService ;
import com.njcn.event.utils.EchartsUtil ;
import com.njcn.event.utils.EchartsUtil ;
import com.njcn.event.utils.FreemarkerUtil ;
import com.njcn.event.utils.FreemarkerUtil ;
@@ -109,6 +110,7 @@ public class ReportServiceImpl implements ReportService {
private final RestTemplate restTemplate ;
private final RestTemplate restTemplate ;
private final EventReportService eventReportService ;
//调用暂降密度接口
//调用暂降密度接口
private final EventAnalysisService eventAnalysisService ;
private final EventAnalysisService eventAnalysisService ;
@@ -1042,254 +1044,274 @@ public class ReportServiceImpl implements ReportService {
p . setAlignment ( ParagraphAlignment . LEFT ) ;
p . setAlignment ( ParagraphAlignment . LEFT ) ;
createTitle ( doc , " 4. 总汇信息 " , " 标题 1 " , 0 , 15 ) ;
createTitle ( doc , " 4. 总汇信息 " , " 标题 1 " , 0 , 15 ) ;
//查询参数
StatisticsParam param = new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTime ( ) , exportParam . getFlag ( ) ) ;
//获取暂降原因字典
List < DictData > reasonData = dicDataFeignClient . getDicDataByTypeName ( DicDataTypeEnum . EVENT_REASON . getName ( ) ) . getData ( ) ;
//获取暂降类型字典
List < DictData > typeData = dicDataFeignClient . getDicDataByTypeName ( DicDataTypeEnum . EVENT_TYPE . getName ( ) ) . getData ( ) ;
//influxdb查询结果( pqs_eventdetail表)
List < EventDetail > info = info ( param ) ;
//记录数
//记录数
int i = 1 ;
int i = 1 ;
//监测点信息
//1. 监测点信息
if ( exportParam . isXq ( ) ) {
if ( exportParam . isXq ( ) ) {
createTitle ( doc , " 4. " + i + " 监测点信息 " , " 标题 2 " , 200 , 15 ) ;
createTitle ( doc , " 4. " + i + " 监测点信息 " , " 标题 2 " , 200 , 15 ) ;
XWPFTable table = createTable ( doc ) ;
XWPFTable table = createTable ( doc ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
HttpResult < LineDetailDataVO > lineDetailData = lineFeignClient . getLineDetailData ( exportParam . getLineId ( ) ) ;
HttpResult < LineDetailDataVO > lineDetailData = lineFeignClient . getLineDetailData ( exportParam . getLineId ( ) ) ;
if ( ObjectUtil . isNull ( lineDetailData ) ) {
if ( ObjectUtil . isNull ( lineDetailData ) ) {
throw new BusinessException ( EventResponseEnum . NOT_FOUND ) ;
throw new BusinessException ( EventResponseEnum . NOT_FOUND ) ;
}
}
insertRow ( doc , table , centerParagraph , true , " 项目 " , " 描述 " ) ;
insertRow ( doc , table , centerParagraph , true , " 项目 " , " 描述 " ) ;
insertRow ( doc , table , centerParagraph , false , " 监测点名称 " , lineDetailData . getData ( ) . getLineName ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " 监测点名称 " , lineDetailData . getData ( ) . getLineName ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " 电压等级 " , lineDetailData . getData ( ) . getScale ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " 电压等级 " , lineDetailData . getData ( ) . getScale ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " PT变比 " , lineDetailData . getData ( ) . getPt ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " PT变比 " , lineDetailData . getData ( ) . getPt ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " CT变比 " , lineDetailData . getData ( ) . getCt ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " CT变比 " , lineDetailData . getData ( ) . getCt ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " 协议容量 " , lineDetailData . getData ( ) . getDealCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 协议容量 " , lineDetailData . getData ( ) . getDealCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 基准容量 " , lineDetailData . getData ( ) . getStandardCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 基准容量 " , lineDetailData . getData ( ) . getStandardCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 设备容量 " , lineDetailData . getData ( ) . getDevCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 设备容量 " , lineDetailData . getData ( ) . getDevCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 最小短路容量 " , lineDetailData . getData ( ) . getShortCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 最小短路容量 " , lineDetailData . getData ( ) . getShortCapacity ( ) + " " ) ;
insertRow ( doc , table , centerParagraph , false , " 接线方式 " , lineDetailData . getData ( ) . getPtType ( ) ) ;
insertRow ( doc , table , centerParagraph , false , " 接线方式 " , lineDetailData . getData ( ) . getPtType ( ) ) ;
i + + ;
i + + ;
}
}
//暂降事件列表
//2.暂降事件 暂降事件列表和暂降点图
if ( exportParam . isLb ( ) ) {
//2.1.判断列表和点图是否是要导出
createTitle ( doc , " 4. " + i + " 暂降事件列表 " , " 标题 2 " , 200 , 15 ) ;
if ( exportParam . isLb ( ) | | exportParam . isSjdF47 ( ) | | exportParam . isSjdITIC ( ) ) {
XWPFTable table = createTable ( doc ) ;
// List<EventDetail> plot = eventAnalysisService.getPlot(param) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
List < EventDetail > plot = eventReportService . getPlot ( info , reasonData , typeData ) ;
List < EventDetail > plot = eventAnalysisService . getPlot ( new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTime ( ) , exportParam . getFlag ( ) ) ) ;
//暂降事件列表
insertRow ( doc , table , centerParagraph , true , " 序号 " , " 暂降发生时刻 " , " 暂降赋值(%) " , " 持续时间(s) " , " 暂降类型 " , " 暂降原因 " , " 严重度 " ) ;
if ( exportParam . isLb ( ) ) {
for ( int j = 0 ; j < plot . size ( ) ; j + + ) {
createTitle ( doc , " 4. " + i + " 暂降事件列表 " , " 标题 2 " , 200 , 15 ) ;
EventDetail eventDetail = plot . get ( j ) ;
XWPFTable table = createTable ( doc ) ;
long l = eventDetail . getTimeId ( ) . toEpochMilli ( ) ;
Date date1 = new Date ( l ) ;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat ( " yyyy-MM-dd HH:mm:ss.SSS " ) ;
String s = simpleDateFormat . format ( date1 ) ;
insertRow ( doc , table , centerParagraph , false , j + 1 + " " , s , eventDetail . getEventValue ( ) + " " , eventDetail . getPersistTime ( ) / 1000 . 0 + " " , eventDetail . getEventType ( ) , eventDetail . getEventReason ( ) , eventDetail . getSeverity ( ) + " " ) ;
}
i + + ;
}
//暂降事件点图
if ( exportParam . isSjdF47 ( ) | | exportParam . isSjdITIC ( ) ) {
List < EventDetail > detailList = eventAnalysisService . getPlot ( new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTime ( ) , exportParam . getFlag ( ) ) ) ;
createTitle ( doc , " 4. " + i + " 暂降事件点图 " , " 标题 2 " , 200 , 15 ) ;
int two = 1 ;
if ( exportParam . isSjdITIC ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " ITIC 曲线 " , " 标题 3 " , 400 , 15 ) ;
ArrayList < List < Double > > list = new ArrayList < > ( ) ;
for ( EventDetail eventDetail : detailList ) {
ArrayList < Double > doubles = new ArrayList < > ( ) ;
doubles . add ( Double . parseDouble ( eventDetail . getPersistTime ( ) / 1000 + " " ) ) ;
doubles . add ( Double . parseDouble ( String . valueOf ( eventDetail . getEventValue ( ) * 100 ) ) ) ;
list . add ( doubles ) ;
}
String itic = getITIC ( list ) ;
createPic ( doc , itic , " ITIC曲线 " ) ;
two + + ;
}
if ( exportParam . isSjdF47 ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " F47 曲线 " , " 标题 3 " , 400 , 15 ) ;
ArrayList < List < Double > > list = new ArrayList < > ( ) ;
for ( EventDetail eventDetail : detailList ) {
ArrayList < Double > doubles = new ArrayList < > ( ) ;
doubles . add ( Double . parseDouble ( eventDetail . getPersistTime ( ) / 1000 + " " ) ) ;
doubles . add ( Double . parseDouble ( String . valueOf ( eventDetail . getEventValue ( ) * 100 ) ) ) ;
list . add ( doubles ) ;
}
String f47 = getF47 ( list ) ;
createPic ( doc , f47 , " SEMI F47曲线 " ) ;
two + + ;
}
i + + ;
}
//暂降密度
if ( exportParam . isMdbg ( ) | | exportParam . isMdtx ( ) ) {
createTitle ( doc , " 4. " + i + " 暂降密度 " , " 标题 2 " , 200 , 15 ) ;
int two = 1 ;
if ( exportParam . isMdtx ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 暂降密度点图 " , " 标题 3 " , 400 , 15 ) ;
two + + ;
}
if ( exportParam . isMdbg ( ) ) {
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
createTit le( doc , " 4. " + i + " . " + two + " DISDIP 表格:国际发配电联盟(UNIPEDE )" , " 标题 3 " , 400 , 15 ) ;
insertRow ( doc , tab le, centerParagraph , true , " 序号 " , " 暂降发生时刻 " , " 暂降赋值(%) " , " 持续时间(s )" , " 暂降类型 " , " 暂降原因 " , " 严重度 " ) ;
List < DISDIPVO > eventDisdip = eventAnalysisService . eventDisdip ( new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTim e( ) , exportParam . getFlag ( ) ) ) ;
for ( int j = 0 ; j < plot . siz e( ) ; j + + ) {
EventDetail eventDetail = plot . get ( j ) ;
long l = eventDetail . getTimeId ( ) . toEpochMilli ( ) ;
Date date1 = new Date ( l ) ;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat ( " yyyy-MM-dd HH:mm:ss.SSS " ) ;
String s = simpleDateFormat . format ( date1 ) ;
insertRow ( doc , table , centerParagraph , false , j + 1 + " " , s , eventDetail . getEventValue ( ) + " " , eventDetail . getPersistTime ( ) / 1000 . 0 + " " , eventDetail . getEventType ( ) , eventDetail . getEventReason ( ) , eventDetail . getSeverity ( ) + " " ) ;
}
i + + ;
}
//暂降事件点图
if ( exportParam . isSjdF47 ( ) | | exportParam . isSjdITIC ( ) ) {
ArrayList < List < Double > > ass = getAss ( plot ) ;
createTitle ( doc , " 4. " + i + " 暂降事件点图 " , " 标题 2 " , 200 , 15 ) ;
int two = 1 ;
if ( exportParam . isSjdITIC ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " ITIC 曲线 " , " 标题 3 " , 400 , 15 ) ;
String itic = getITIC ( ass ) ;
createPic ( doc , itic , " ITIC曲线 " ) ;
two + + ;
}
if ( exportParam . isSjdF47 ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " F47 曲线 " , " 标题 3 " , 400 , 15 ) ;
String f47 = getF47 ( ass ) ;
createPic ( doc , f47 , " SEMI F47曲线 " ) ;
two + + ;
}
i + + ;
}
}
//3.暂降密度
if ( exportParam . isMdbg ( ) | | exportParam . isMdtx ( ) ) {
createTitle ( doc , " 4. " + i + " 暂降密度 " , " 标题 2 " , 200 , 15 ) ;
int two = 1 ;
if ( exportParam . isMdtx ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 暂降密度点图 " , " 标题 3 " , 400 , 15 ) ;
two + + ;
}
if ( exportParam . isMdbg ( ) ) {
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
createTitle ( doc , " 4. " + i + " . " + two + " DISDIP 表格:国际发配电联盟(UNIPEDE) " , " 标题 3 " , 400 , 15 ) ;
// List<DISDIPVO> eventDisdip = eventAnalysisService.eventDisdip(new StatisticsParam(exportParam.getLineId(), exportParam.getSearchBeginTime(), exportParam.getSearchEndTime(),exportParam.getFlag()));
List < DISDIPVO > eventDisdip = eventReportService . eventDisdip ( info ) ;
XWPFTable table1 = createTable ( doc ) ;
XWPFTable table1 = createTable ( doc ) ;
insertRow ( doc , table1 , centerParagraph , true , " 剩余电压 " , " 20ms " , " 100ms " , " 500ms " , " 1s " , " 3s " , " 20s " , " 60s " , " 180s " ) ;
insertRow ( doc , table1 , centerParagraph , true , " 剩余电压 " , " 20ms " , " 100ms " , " 500ms " , " 1s " , " 3s " , " 20s " , " 60s " , " 180s " ) ;
for ( int j = 0 ; j < eventDisdip . size ( ) ; j + + ) {
for ( int j = 0 ; j < eventDisdip . size ( ) ; j + + ) {
DISDIPVO disdipvo = eventDisdip . get ( j ) ;
DISDIPVO disdipvo = eventDisdip . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , false , disdipvo . getName ( ) , disdipvo . getTwentyMs ( ) , disdipvo . getOneHundredMs ( ) , disdipvo . getFiveHundredMs ( ) , disdipvo . getOneS ( ) , disdipvo . getThreeS ( ) , disdipvo . getTwentyS ( ) , disdipvo . getSixtyS ( ) , disdipvo . getOneEightyS ( ) ) ;
insertRow ( doc , table1 , centerParagraph , false , disdipvo . getName ( ) , disdipvo . getTwentyMs ( ) , disdipvo . getOneHundredMs ( ) , disdipvo . getFiveHundredMs ( ) , disdipvo . getOneS ( ) , disdipvo . getThreeS ( ) , disdipvo . getTwentyS ( ) , disdipvo . getSixtyS ( ) , disdipvo . getOneEightyS ( ) ) ;
}
}
two + + ;
two + + ;
createTitle ( doc , " 4. " + i + " . " + two + " IEC 61000-4-11:(用电终端的电压暂降抗度) " , " 标题 3 " , 400 , 15 ) ;
createTitle ( doc , " 4. " + i + " . " + two + " IEC 61000-4-11:(用电终端的电压暂降抗度) " , " 标题 3 " , 400 , 15 ) ;
List< IEC411VO> iec411VOS = eventAnalysisService. IEC411( new StatisticsParam( exportParam. getLineId( ) , exportParam. getSearchBeginTime( ) , exportParam. getSearchEndTime( ) , exportParam. getFlag( ) ) ) ;
// List< IEC411VO> iec411VOS = eventAnalysisService. IEC411(new StatisticsParam( exportParam. getLineId(), exportParam. getSearchBeginTime(), exportParam. getSearchEndTime(), exportParam. getFlag())) ;
List < IEC411VO > iec411VOS = eventReportService . IEC411 ( info ) ;
XWPFTable table2 = createTable ( doc ) ;
XWPFTable table2 = createTable ( doc ) ;
insertRow ( doc , table2 , centerParagraph , true , " 剩余电压 " , " 10~20ms " , " 20~100ms " , " 0.1~0.2s " , " 0.2~0.5s " , " 0.5~1s " , " >1s " ) ;
insertRow ( doc , table2 , centerParagraph , true , " 剩余电压 " , " 10~20ms " , " 20~100ms " , " 0.1~0.2s " , " 0.2~0.5s " , " 0.5~1s " , " >1s " ) ;
for ( int j = 0 ; j < iec411VOS . size ( ) ; j + + ) {
for ( int j = 0 ; j < iec411VOS . size ( ) ; j + + ) {
IEC411VO iec411VO = iec411VOS . get ( j ) ;
IEC411VO iec411VO = iec411VOS . get ( j ) ;
insertRow ( doc , table2 , centerParagraph , false , iec411VO . getName ( ) , iec411VO . getTenTwentyMs ( ) , iec411VO . getTwentyOneHundredMs ( ) , iec411VO . getZeroPiontOneTwoS ( ) , iec411VO . getZeroPiontTwoFiveS ( ) , iec411VO . getZeroPiontFive1S ( ) , iec411VO . getGreater1S ( ) ) ;
insertRow ( doc , table2 , centerParagraph , false , iec411VO . getName ( ) , iec411VO . getTenTwentyMs ( ) , iec411VO . getTwentyOneHundredMs ( ) , iec411VO . getZeroPiontOneTwoS ( ) , iec411VO . getZeroPiontTwoFiveS ( ) , iec411VO . getZeroPiontFive1S ( ) , iec411VO . getGreater1S ( ) ) ;
}
}
two + + ;
two + + ;
createTitle ( doc , " 4. " + i + " . " + two + " IEC 61000-2-8:(公共电网电压暂降测量统计) " , " 标题 3 " , 400 , 15 ) ;
createTitle ( doc , " 4. " + i + " . " + two + " IEC 61000-2-8:(公共电网电压暂降测量统计) " , " 标题 3 " , 400 , 15 ) ;
List< IEC28VO> iec28VOS = eventAnalysisService . IEC28 ( new StatisticsParam( exportParam. getLineId( ) , exportParam. getSearchBeginTime( ) , exportParam. getSearchEndTime( ) , exportParam. getFlag( ) ) ) ;
// List< IEC28VO> iec28VOS = eventAnalysisService.IEC28(new StatisticsParam( exportParam. getLineId(), exportParam. getSearchBeginTime(), exportParam. getSearchEndTime(), exportParam. getFlag())) ;
List < IEC28VO > iec28VOS = eventReportService . IEC28 ( info ) ;
XWPFTable table3 = createTable ( doc ) ;
XWPFTable table3 = createTable ( doc ) ;
insertRow ( doc , table3 , centerParagraph , true , " 剩余电压 " , " 0.02~0.1s " , " 0.1~0.25s " , " 0.25~0.5s " , " 0.5s~1s " , " 1~3s " , " 3~20s " , " 20~60s " , " 60~180s " ) ;
insertRow ( doc , table3 , centerParagraph , true , " 剩余电压 " , " 0.02~0.1s " , " 0.1~0.25s " , " 0.25~0.5s " , " 0.5s~1s " , " 1~3s " , " 3~20s " , " 20~60s " , " 60~180s " ) ;
for ( int j = 0 ; j < iec28VOS . size ( ) ; j + + ) {
for ( int j = 0 ; j < iec28VOS . size ( ) ; j + + ) {
IEC28VO iec28VO = iec28VOS . get ( j ) ;
IEC28VO iec28VO = iec28VOS . get ( j ) ;
insertRow ( doc , table3 , centerParagraph , false , iec28VO . getName ( ) , iec28VO . getQ ( ) , iec28VO . getW ( ) , iec28VO . getE ( ) , iec28VO . getR ( ) , iec28VO . getT ( ) , iec28VO . getY ( ) , iec28VO . getU ( ) , iec28VO . getI ( ) ) ;
insertRow ( doc , table3 , centerParagraph , false , iec28VO . getName ( ) , iec28VO . getQ ( ) , iec28VO . getW ( ) , iec28VO . getE ( ) , iec28VO . getR ( ) , iec28VO . getT ( ) , iec28VO . getY ( ) , iec28VO . getU ( ) , iec28VO . getI ( ) ) ;
}
}
two + + ;
two + + ;
}
}
i + + ;
i + + ;
}
}
//暂降幅值概率分布
//4. 暂降幅值概率分布
if ( exportParam . isGlfbfz ( ) | | exportParam . isGlfbsj ( ) ) {
if ( exportParam . isGlfbfz ( ) | | exportParam . isGlfbsj ( ) ) {
createTitle ( doc , " 4. " + i + " 暂降幅值概率分布图 " , " 标题 2 " , 200 , 15 ) ;
createTitle ( doc , " 4. " + i + " 暂降幅值概率分布图 " , " 标题 2 " , 200 , 15 ) ;
ProbabilityVO probabilityVO = eventAnalysisService. getProbabilityDistribution( new StatisticsParam( exportParam. getLineId( ) , exportParam. getSearchBeginTime( ) , exportParam. getSearchEndTime( ) , exportParam. getFlag( ) ) ) ;
// ProbabilityVO probabilityVO = eventAnalysisService. getProbabilityDistribution(new StatisticsParam( exportParam. getLineId(), exportParam. getSearchBeginTime(), exportParam. getSearchEndTime(), exportParam. getFlag())) ;
ProbabilityVO probabilityVO = eventReportService . getProbabilityDistribution ( info ) ;
int two = 1 ;
int two = 1 ;
if ( exportParam . isGlfbfz ( ) ) {
if ( exportParam . isGlfbfz ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 暂降幅值的概率分函数 " , " 标题 3 " , 400 , 15 ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 暂降幅值的概率分函数 " , " 标题 3 " , 400 , 15 ) ;
List < String > ybardata = probabilityVO . getPereventvalue ( ) ;
List < String > ybardata = probabilityVO . getPereventvalue ( ) ;
List < String > ylinedata = probabilityVO . getEventvalue ( ) ;
List < String > ylinedata = probabilityVO . getEventvalue ( ) ;
String fz = getFZ ( ylinedata , ybardata ) ;
String fz = getFZ ( ylinedata , ybardata ) ;
createPic ( doc , fz , " 暂降幅值的概率分布函数 " ) ;
createPic ( doc , fz , " 暂降幅值的概率分布函数 " ) ;
two + + ;
two + + ;
}
}
if ( exportParam . isGlfbsj ( ) ) {
if ( exportParam . isGlfbsj ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 持续时间的概率分函数 " , " 标题 3 " , 400 , 15 ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 持续时间的概率分函数 " , " 标题 3 " , 400 , 15 ) ;
List < String > ybardata = probabilityVO . getPersisttime ( ) ;
List < String > ybardata = probabilityVO . getPersisttime ( ) ;
List < String > ylinedata = probabilityVO . getSisttime ( ) ;
List < String > ylinedata = probabilityVO . getSisttime ( ) ;
String sj = getSJ ( ylinedata , ybardata ) ;
String sj = getSJ ( ylinedata , ybardata ) ;
createPic ( doc , sj , " 持续时间的概率分布函数 " ) ;
createPic ( doc , sj , " 持续时间的概率分布函数 " ) ;
two + + ;
two + + ;
}
}
i + + ;
i + + ;
}
}
//月份统计
if ( exportParam . isTjbg ( ) | | exportParam . isTjtx ( ) ) {
createTitle ( doc , " 4. " + i + " 月份统计 " , " 标题 2 " , 200 , 15 ) ;
//5.月份统计
if ( exportParam . isTjbg ( ) | | exportParam . isTjtx ( ) ) {
createTitle ( doc , " 4. " + i + " 月份统计 " , " 标题 2 " , 200 , 15 ) ;
int two = 1 ;
int two = 1 ;
List < TimeVO > reasonTypeTime = eventAnalysisService . getReasonTypeTime ( new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTime ( ) , exportParam . getFlag ( ) ) ) ;
List < TimeVO > reasonTypeTime = eventAnalysisService . getReasonTypeTime ( param ) ;
if ( exportParam . isTjtx ( ) ) {
//暂时时间端按月查询不能查询
createTitle ( doc , " 4. " + i + " . " + two + " 月份统计图 " , " 标题 3 " , 400 , 15 ) ;
// List<TimeVO> reasonTypeTime = eventReportService.getReasonTypeTime(param,null) ;
if ( exportParam . isTjtx ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 月份统计图 " , " 标题 3 " , 400 , 15 ) ;
List < Integer > count = new ArrayList < > ( ) ;
List < Integer > count = new ArrayList < > ( ) ;
List < String > name = new ArrayList < > ( ) ;
List < String > name = new ArrayList < > ( ) ;
if ( exportParam . getFlag ( ) = = 0 ) {
if ( exportParam . getFlag ( ) = = 0 ) {
for ( TimeVO timeVO : reasonTypeTime ) {
for ( TimeVO timeVO : reasonTypeTime ) {
name . add ( timeVO . getMonth ( ) + " " ) ;
name . add ( timeVO . getMonth ( ) + " " ) ;
count . add ( Integer . parseInt ( timeVO . getTimes ( ) ) ) ;
count . add ( Integer . parseInt ( timeVO . getTimes ( ) ) ) ;
}
}
} else {
} else {
for ( TimeVO timeVO : reasonTypeTime ) {
for ( TimeVO timeVO : reasonTypeTime ) {
name . add ( timeVO . getDay ( ) + " " ) ;
name . add ( timeVO . getDay ( ) + " " ) ;
count . add ( Integer . parseInt ( timeVO . getTimes ( ) ) ) ;
count . add ( Integer . parseInt ( timeVO . getTimes ( ) ) ) ;
}
}
}
}
String yftj = getYFTJ ( name , count , reasonTypeTime . get ( 0 ) . getYear ( ) , exportParam . getFlag ( ) ) ;
String yftj = getYFTJ ( name , count , reasonTypeTime . get ( 0 ) . getYear ( ) , exportParam . getFlag ( ) ) ;
createPic ( doc , yftj , " 月份统计图 " ) ;
createPic ( doc , yftj , " 月份统计图 " ) ;
two + + ;
two + + ;
}
}
if ( exportParam . isTjbg ( ) ) {
if ( exportParam . isTjbg ( ) ) {
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 时间统计表格 " , " 标题 3 " , 400 , 15 ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 时间统计表格 " , " 标题 3 " , 400 , 15 ) ;
XWPFTable table1 = createTable ( doc ) ;
XWPFTable table1 = createTable ( doc ) ;
if ( exportParam . getFlag ( ) = = 0 ) {
if ( exportParam . getFlag ( ) = = 0 ) {
insertRow ( doc , table1 , centerParagraph , true , " 时间(月) " , " 电压暂降次数 " ) ;
insertRow ( doc , table1 , centerParagraph , true , " 时间(月) " , " 电压暂降次数 " ) ;
} else {
} else {
insertRow ( doc , table1 , centerParagraph , true , " 时间(天) " , " 电压暂降次数 " ) ;
insertRow ( doc , table1 , centerParagraph , true , " 时间(天) " , " 电压暂降次数 " ) ;
}
}
if ( exportParam . getFlag ( ) = = 0 ) {
if ( exportParam . getFlag ( ) = = 0 ) {
for ( int j = 0 ; j < reasonTypeTime . size ( ) ; j + + ) {
for ( int j = 0 ; j < reasonTypeTime . size ( ) ; j + + ) {
TimeVO timeVO = reasonTypeTime . get ( j ) ;
TimeVO timeVO = reasonTypeTime . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , false , timeVO . getMonth ( ) , timeVO . getTimes ( ) ) ;
insertRow ( doc , table1 , centerParagraph , false , timeVO . getMonth ( ) , timeVO . getTimes ( ) ) ;
}
}
} else {
} else {
for ( int j = 0 ; j < reasonTypeTime . size ( ) ; j + + ) {
for ( int j = 0 ; j < reasonTypeTime . size ( ) ; j + + ) {
TimeVO timeVO = reasonTypeTime . get ( j ) ;
TimeVO timeVO = reasonTypeTime . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , false , timeVO . getDay ( ) , timeVO . getTimes ( ) ) ;
insertRow ( doc , table1 , centerParagraph , false , timeVO . getDay ( ) , timeVO . getTimes ( ) ) ;
}
}
}
}
two + + ;
two + + ;
}
}
i + + ;
i + + ;
}
}
//原因统计
if ( exportParam . isYybg ( ) | | exportParam . isYytx ( ) ) {
createTitle ( doc , " 4. " + i + " 原因统计 " , " 标题 2 " , 200 , 15 ) ;
//6.原因统计
StatisticVO statistic = eventAnalysisService . getStatistic ( new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTime ( ) , exportParam . getFlag ( ) ) ) ;
//6.1整合提出查询语句
int two = 1 ;
Boolean fly = exportParam . isYybg ( ) | | exportParam . isYytx ( ) | | exportParam . isLxbg ( ) | | exportParam . isLxtx ( ) ;
if ( exportParam . isYytx ( ) ) {
if ( fly ) {
createTitle ( doc , " 4. " + i + " . " + two + " 原因统计图 " , " 标题 3 " , 400 , 15 ) ;
StatisticVO statistic = eventReportService . getStatistic ( info , reasonData , typeData ) ;
List < String > xdata = new ArrayList < > ( ) ;
if ( exportParam . isYybg ( ) | | exportParam . isYytx ( ) ) {
List < ReasonsVO > reason = statistic . getReason ( ) ;
createTitle ( doc , " 4. " + i + " 原因统计 " , " 标题 2 " , 200 , 15 ) ;
for ( ReasonsVO reasonsVO : reason ) {
// StatisticVO statistic = eventAnalysisService.getStatistic(new StatisticsParam(exportParam.getLineId(), exportParam.getSearchBeginTime(), exportParam.getSearchEndTime(),exportParam.getFlag()));
xdata . add ( reasonsVO . getReason ( ) ) ;
int two = 1 ;
}
if ( exportParam . isYytx ( ) ) {
String tr = getR ( xdata , reason , " bar9.ftl " ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 原因统计图 " , " 标题 3 " , 400 , 15 ) ;
createPic ( doc , tr , " 暂降原因图 " ) ;
List < String > xdata = new ArrayList < > ( ) ;
two + + ;
List < ReasonsVO > reason = statistic . getReason ( ) ;
}
for ( ReasonsVO reasonsVO : reason ) {
if ( exportParam . isYybg ( ) ) {
xdata . add ( reasonsVO . getReason ( ) ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 原因统计表格 " , " 标题 3 " , 400 , 15 ) ;
XWPFTable table1 = createTable ( doc ) ;
insertRow ( doc , table1 , centerParagraph , true , " 暂降原因 " , " 电压暂降次数 " ) ;
List < ReasonsVO > reason = statistic . getReason ( ) ;
for ( int j = 0 ; j < reason . size ( ) ; j + + ) {
ReasonsVO reasonsVO = reason . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , false , reasonsVO . getReason ( ) , reasonsVO . getTimes ( ) + " " ) ;
}
two + + ;
}
i + + ;
}
//类型统计
if ( exportParam . isLxbg ( ) | | exportParam . isLxtx ( ) ) {
createTitle ( doc , " 4. " + i + " 类型统计 " , " 标题 2 " , 200 , 15 ) ;
StatisticVO statistic = eventAnalysisService . getStatistic ( new StatisticsParam ( exportParam . getLineId ( ) , exportParam . getSearchBeginTime ( ) , exportParam . getSearchEndTime ( ) , exportParam . getFlag ( ) ) ) ;
int two = 1 ;
if ( exportParam . isLxtx ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 类型统计图 " , " 标题 3 " , 400 , 15 ) ;
List < String > xdata = new ArrayList < > ( ) ;
List < TypesVO > types = statistic . getTypes ( ) ;
for ( TypesVO type : types ) {
if ( type . getTimes ( ) > 0 ) {
xdata . add ( type . getType ( ) ) ;
}
}
String tr = getR ( xdata , reason , " bar9.ftl " ) ;
createPic ( doc , tr , " 暂降原因图 " ) ;
two + + ;
}
}
String tr = getT ( xdata , types , " bar8.ftl " ) ;
if ( exportParam . isYybg ( ) ) {
createPic ( doc , tr , " 暂降类型图 " ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
two + + ;
createTitle ( doc , " 4. " + i + " . " + two + " 原因统计表格 " , " 标题 3 " , 400 , 15 ) ;
}
XWPFTable table1 = createTable ( doc ) ;
if ( exportParam . isLxbg ( ) ) {
insertRow ( doc , table1 , centerParagraph , true , " 暂降原因 " , " 电压暂降次数 " ) ;
createTitle ( doc , " 4. " + i + " . " + two + " 类型统计表格 " , " 标题 3 " , 400 , 15 ) ;
List < ReasonsVO > reason = statistic . getReason ( ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
for ( int j = 0 ; j < reason . size ( ) ; j + + ) {
XWPFTable table1 = c reateTable ( doc ) ;
ReasonsVO reasonsVO = reason . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , true , " 暂降原因 " , " 电压暂降次数 " ) ;
insertRow ( doc , table1 , centerParagraph , false , reasonsVO . getReason ( ) , reasonsVO . getTimes ( ) + " " ) ;
List < TypesVO > types = statistic . getTypes ( ) ;
}
for ( int j = 0 ; j < types . size ( ) ; j + + ) {
two + + ;
TypesVO typesVO = types . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , false , typesVO . getType ( ) , typesVO . getTimes ( ) + " " ) ;
}
}
two + + ;
i + + ;
}
//7.类型统计
if ( exportParam . isLxbg ( ) | | exportParam . isLxtx ( ) ) {
createTitle ( doc , " 4. " + i + " 类型统计 " , " 标题 2 " , 200 , 15 ) ;
// StatisticVO statistic = eventAnalysisService.getStatistic(new StatisticsParam(exportParam.getLineId(), exportParam.getSearchBeginTime(), exportParam.getSearchEndTime(),exportParam.getFlag()));
int two = 1 ;
if ( exportParam . isLxtx ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 类型统计图 " , " 标题 3 " , 400 , 15 ) ;
List < String > xdata = new ArrayList < > ( ) ;
List < TypesVO > types = statistic . getTypes ( ) ;
for ( TypesVO type : types ) {
if ( type . getTimes ( ) > 0 ) {
xdata . add ( type . getType ( ) ) ;
}
}
String tr = getT ( xdata , types , " bar8.ftl " ) ;
createPic ( doc , tr , " 暂降类型图 " ) ;
two + + ;
}
if ( exportParam . isLxbg ( ) ) {
createTitle ( doc , " 4. " + i + " . " + two + " 类型统计表格 " , " 标题 3 " , 400 , 15 ) ;
XWPFParagraph centerParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFTable table1 = createTable ( doc ) ;
insertRow ( doc , table1 , centerParagraph , true , " 暂降原因 " , " 电压暂降次数 " ) ;
List < TypesVO > types = statistic . getTypes ( ) ;
for ( int j = 0 ; j < types . size ( ) ; j + + ) {
TypesVO typesVO = types . get ( j ) ;
insertRow ( doc , table1 , centerParagraph , false , typesVO . getType ( ) , typesVO . getTimes ( ) + " " ) ;
}
two + + ;
}
i + + ;
}
}
i + + ;
}
}
ServletOutputStream outputStream = response . getOutputStream ( ) ;
ServletOutputStream outputStream = response . getOutputStream ( ) ;
String fileName = URLEncoder . encode ( exportParam . getLineName ( ) + " .docx " , " UTF-8 " ) ;
String fileName = URLEncoder . encode ( exportParam . getLineName ( ) + " .docx " , " UTF-8 " ) ;
response . setHeader ( " Content-Disposition " , " attachment; filename= \" " + fileName + " \" " ) ;
response . setHeader ( " Content-Disposition " , " attachment; filename= \" " + fileName + " \" " ) ;
@@ -1298,7 +1320,46 @@ public class ReportServiceImpl implements ReportService {
outputStream . close ( ) ;
outputStream . close ( ) ;
}
}
public String getStr ( String barName , Map < String , Object > map ) throws TemplateException , IOException {
/**
* 监测点暂降事件点图赋值
* @param plot
* @return
*/
private ArrayList < List < Double > > getAss ( List < EventDetail > plot ) {
ArrayList < List < Double > > list = new ArrayList < > ( ) ;
for ( EventDetail eventDetail : plot ) {
ArrayList < Double > doubles = new ArrayList < > ( ) ;
doubles . add ( Double . parseDouble ( eventDetail . getPersistTime ( ) / 1000 + " " ) ) ;
doubles . add ( Double . parseDouble ( String . valueOf ( eventDetail . getEventValue ( ) * 100 ) ) ) ;
list . add ( doubles ) ;
}
return list ;
}
/**
* influxdb查询结果集
* @param statisticsParam
* @return
*/
private List < EventDetail > info ( StatisticsParam statisticsParam ) {
//构建sql语句
StringBuffer stringResult = new StringBuffer ( ) ;
stringResult . append ( Param . SELECT ) . append ( Param . EVENT_DETAIL ) . append ( Param . WHERE )
. append ( " time >= ' " ) . append ( DateUtil . beginOfDay ( DateUtil . parse ( statisticsParam . getStartTime ( ) ) ) + " ' " )
. append ( " and time <= ' " ) . append ( DateUtil . beginOfDay ( DateUtil . parse ( statisticsParam . getEndTime ( ) ) ) + " ' " )
. append ( " and line_id = ' " ) . append ( statisticsParam . getLineIndex ( ) + " ' " )
. append ( " and wave_type = 5 " ) . append ( Param . TZ_ASIA_SHANGHAI ) ;
//结果集映射到对象中
System . out . println ( stringResult ) ;
QueryResult query = influxDbUtils . query ( stringResult . toString ( ) ) ;
InfluxDBResultMapper influxDBResultMapper = new InfluxDBResultMapper ( ) ;
return influxDBResultMapper . toPOJO ( query , EventDetail . class ) ;
}
public String getStr ( String barName , Map < String , Object > map ) throws TemplateException , IOException {
String s = FreemarkerUtil . generateString ( barName , " com/njcn/event/template " , map ) ;
String s = FreemarkerUtil . generateString ( barName , " com/njcn/event/template " , map ) ;
return EchartsUtil . generateEchartsBase64 ( s , " 8910 " ) ;
return EchartsUtil . generateEchartsBase64 ( s , " 8910 " ) ;
}
}
@@ -2496,7 +2557,7 @@ public class ReportServiceImpl implements ReportService {
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . CENTER ) ;
p . setAlignment ( ParagraphAlignment . CENTER ) ;
XWPFRun r1 = p . createRun ( ) ; //创建段落文本
XWPFRun r1 = p . createRun ( ) ; //创建段落文本
r1 . setText ( " 电压 " + typeName + " 事件区域报告 " ) ;
r1 . setText ( " 电压 " + typeName + " 事件区域报告 " ) ;
r1 . setBold ( true ) ; //设置为粗体
r1 . setBold ( true ) ; //设置为粗体
r1 . setFontSize ( 36 ) ; //字体大小
r1 . setFontSize ( 36 ) ; //字体大小
r1 . addBreak ( ) ;
r1 . addBreak ( ) ;
@@ -2528,7 +2589,7 @@ public class ReportServiceImpl implements ReportService {
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . CENTER ) ;
p . setAlignment ( ParagraphAlignment . CENTER ) ;
XWPFRun r3 = p . createRun ( ) ; //创建段落文本
XWPFRun r3 = p . createRun ( ) ; //创建段落文本
r3 . setText ( " 电压 " + typeName + " 事件区域报告 " ) ;
r3 . setText ( " 电压 " + typeName + " 事件区域报告 " ) ;
r3 . setFontSize ( 24 ) ; //字体大小
r3 . setFontSize ( 24 ) ; //字体大小
@@ -2539,7 +2600,7 @@ public class ReportServiceImpl implements ReportService {
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r5 = p . createRun ( ) ; //创建段落文本
XWPFRun r5 = p . createRun ( ) ; //创建段落文本
r5 . setText ( " 中国电网总共有 " + size + " 个监测点。中国电网在所选择时间段 " + areaReportParam . getSearchBeginTime ( ) + " 至 " + areaReportParam . getSearchEndTime ( ) +
r5 . setText ( " 中国电网总共有 " + size + " 个监测点。中国电网在所选择时间段 " + areaReportParam . getSearchBeginTime ( ) + " 至 " + areaReportParam . getSearchEndTime ( ) +
" 累计监测到 " + typeName + " 事件 " + eventCount + " 条,本报告按照监测点分布, " + typeName + " 事件统计, " + typeName + " 事件点图, " + typeName + " 热力图, " + typeName + " 密度图, " + typeName + " 概率分布图,事件关联统计, " + typeName + " 类型统计, " + typeName + " 原因统计等方面进行数据分析。 " ) ;
" 累计监测到 " + typeName + " 事件 " + eventCount + " 条,本报告按照监测点分布, " + typeName + " 事件统计, " + typeName + " 事件点图, " + typeName + " 热力图, " + typeName + " 密度图, " + typeName + " 概率分布图,事件关联统计, " + typeName + " 类型统计, " + typeName + " 原因统计等方面进行数据分析。 " ) ;
r5 . setFontSize ( 11 ) ; //字体大小
r5 . setFontSize ( 11 ) ; //字体大小
@@ -3178,17 +3239,17 @@ public class ReportServiceImpl implements ReportService {
oneCount5 = oneCount ;
oneCount5 = oneCount ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 事件列表 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 事件列表 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " 中国电网在所选择的分析时间段内累计监测 " + typeName + " 记录 " + eventCount + " 条, " + topVoltageList . get ( 0 ) + " 、 " + topVoltageList . get ( 1 ) + " " + typeName + " 事件居多, " +
r12 . setText ( " 中国电网在所选择的分析时间段内累计监测 " + typeName + " 记录 " + eventCount + " 条, " + topVoltageList . get ( 0 ) + " 、 " + topVoltageList . get ( 1 ) + " " + typeName + " 事件居多, " +
" 第 " + dayOfMonth + " " + table + " " + typeName + " 事件居多,具体见下表(图): " ) ;
" 第 " + dayOfMonth + " " + table + " " + typeName + " 事件居多,具体见下表(图): " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 事件表格 " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 事件表格 " , " 标题 3 " , 400 , 11 ) ;
twoCount2 = twoCount ;
twoCount2 = twoCount ;
@@ -3197,7 +3258,7 @@ public class ReportServiceImpl implements ReportService {
XWPFParagraph monitorInfoExcelParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph monitorInfoExcelParagraph = WordUtils . getCenterParagraph ( doc ) ;
// 表格第一行
// 表格第一行
insertRow ( doc , monitorInfo , monitorInfoExcelParagraph , true , " 区域 " , " 电压 " + typeName + " 次数 " ) ;
insertRow ( doc , monitorInfo , monitorInfoExcelParagraph , true , " 区域 " , " 电压 " + typeName + " 次数 " ) ;
//塞入数据
//塞入数据
@@ -3210,7 +3271,7 @@ public class ReportServiceImpl implements ReportService {
XWPFParagraph monitorInfoExcelParagraph1 = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph monitorInfoExcelParagraph1 = WordUtils . getCenterParagraph ( doc ) ;
// 表格第一行
// 表格第一行
insertRow ( doc , monitorInfo1 , monitorInfoExcelParagraph1 , true , " 电压等级 " , " 电压 " + typeName + " 次数 " ) ;
insertRow ( doc , monitorInfo1 , monitorInfoExcelParagraph1 , true , " 电压等级 " , " 电压 " + typeName + " 次数 " ) ;
//塞入数据
//塞入数据
@@ -3223,7 +3284,7 @@ public class ReportServiceImpl implements ReportService {
XWPFParagraph monitorInfoExcelParagraph2 = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph monitorInfoExcelParagraph2 = WordUtils . getCenterParagraph ( doc ) ;
// 表格第一行
// 表格第一行
insertRow ( doc , monitorInfo2 , monitorInfoExcelParagraph2 , true , " " + table + " " , " 电压 " + typeName + " 次数 " ) ;
insertRow ( doc , monitorInfo2 , monitorInfoExcelParagraph2 , true , " " + table + " " , " 电压 " + typeName + " 次数 " ) ;
//塞入数据
//塞入数据
@@ -3782,7 +3843,7 @@ public class ReportServiceImpl implements ReportService {
*/
*/
if ( areaReportParam . isEventCountTable ( ) ) {
if ( areaReportParam . isEventCountTable ( ) ) {
twoCount2 + + ;
twoCount2 + + ;
createTitle ( doc , " 4. " + oneCount5 + " . " + twoCount2 + " " + typeName + " 事件图形 " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount5 + " . " + twoCount2 + " " + typeName + " 事件图形 " , " 标题 3 " , 400 , 11 ) ;
//创建部门与监测点次数的map集合
//创建部门与监测点次数的map集合
@@ -3807,7 +3868,7 @@ public class ReportServiceImpl implements ReportService {
}
}
String qytj = getQYTJ ( xdata , ydata ) ;
String qytj = getQYTJ ( xdata , ydata ) ;
createPic ( doc , qytj , " " + typeName + " 事件图形 " ) ;
createPic ( doc , qytj , " " + typeName + " 事件图形 " ) ;
//月份统计
//月份统计
@@ -3828,7 +3889,8 @@ public class ReportServiceImpl implements ReportService {
tableList . add ( table ) ;
tableList . add ( table ) ;
String yftj = getYFTJ1 ( xdata1 , ydata1 , ydata2 , year , tableList ) ;
String yftj = getYFTJ1 ( xdata1 , ydata1 , ydata2 , year , tableList ) ;
createPic ( doc , yftj , " " + typeName + " 事件图形 " ) ;
createPic ( doc , yftj , " " + typeName + " 事件图形 " ) ;
//创建部门与监测点次数的map集合
//创建部门与监测点次数的map集合
@@ -3852,7 +3914,7 @@ public class ReportServiceImpl implements ReportService {
ydata3 . add ( Integer . parseInt ( reportCountParam . getCount ( ) ) ) ;
ydata3 . add ( Integer . parseInt ( reportCountParam . getCount ( ) ) ) ;
}
}
String dydj = getDYDJ ( xdata3 , ydata3 ) ;
String dydj = getDYDJ ( xdata3 , ydata3 ) ;
createPic ( doc , dydj , " " + typeName + " 事件图形 " ) ;
createPic ( doc , dydj , " " + typeName + " 事件图形 " ) ;
/**
/**
@@ -3864,17 +3926,17 @@ public class ReportServiceImpl implements ReportService {
int twoCount = 1 ;
int twoCount = 1 ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 事件列表 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 事件列表 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " 中国电网在所选择的分析时间段内累计监测 " + typeName + " 记录 " + eventCount + " 条, " + topVoltageList . get ( 0 ) + " 、 " + topVoltageList . get ( 1 ) + " " + typeName + " 事件居多, " +
r12 . setText ( " 中国电网在所选择的分析时间段内累计监测 " + typeName + " 记录 " + eventCount + " 条, " + topVoltageList . get ( 0 ) + " 、 " + topVoltageList . get ( 1 ) + " " + typeName + " 事件居多, " +
" 第 " + dayOfMonth + " " + table + " " + typeName + " 事件居多,具体见下表(图): " ) ;
" 第 " + dayOfMonth + " " + table + " " + typeName + " 事件居多,具体见下表(图): " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 事件图形 " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 事件图形 " , " 标题 3 " , 400 , 11 ) ;
//创建部门与监测点次数的map集合
//创建部门与监测点次数的map集合
@@ -3899,7 +3961,7 @@ public class ReportServiceImpl implements ReportService {
}
}
String qytj = getQYTJ ( xdata , ydata ) ;
String qytj = getQYTJ ( xdata , ydata ) ;
createPic ( doc , qytj , " " + typeName + " 事件图形 " ) ;
createPic ( doc , qytj , " " + typeName + " 事件图形 " ) ;
//月份统计
//月份统计
@@ -3920,7 +3982,8 @@ public class ReportServiceImpl implements ReportService {
tableList . add ( table ) ;
tableList . add ( table ) ;
String yftj = getYFTJ1 ( xdata1 , ydata1 , ydata2 , year , tableList ) ;
String yftj = getYFTJ1 ( xdata1 , ydata1 , ydata2 , year , tableList ) ;
createPic ( doc , yftj , " " + typeName + " 事件图形 " ) ;
createPic ( doc , yftj , " " + typeName + " 事件图形 " ) ;
//创建部门与监测点次数的map集合
//创建部门与监测点次数的map集合
@@ -3946,7 +4009,7 @@ public class ReportServiceImpl implements ReportService {
String dydj = getDYDJ ( xdata3 , ydata3 ) ;
String dydj = getDYDJ ( xdata3 , ydata3 ) ;
createPic ( doc , dydj , " " + typeName + " 事件图形 " ) ;
createPic ( doc , dydj , " " + typeName + " 事件图形 " ) ;
//序号计数进行++
//序号计数进行++
@@ -5337,13 +5400,13 @@ public class ReportServiceImpl implements ReportService {
//同步给暂降密度图
//同步给暂降密度图
oneCount4 = oneCount ;
oneCount4 = oneCount ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 密度 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 密度 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " " + typeName + " 密度统计可以从幅值和持续时间两个维度直接地反映 " + typeName + " 事件发生情况,主要反应事件的发生次数, " +
r12 . setText ( " " + typeName + " 密度统计可以从幅值和持续时间两个维度直接地反映 " + typeName + " 事件发生情况,主要反应事件的发生次数, " +
" 中国电网在所选择的分析时间内 " + typeName + " 事件主要集中在幅值为 " + resultList . get ( 0 ) + " ,持续时间为 " + resultList . get ( 2 ) + " [根据 IEC 61000-2-8:(公共电网电压 " + typeName + " 测量统计)算出 " + typeName + " 事件发生最多的区间],具体见表(图): " ) ;
" 中国电网在所选择的分析时间内 " + typeName + " 事件主要集中在幅值为 " + resultList . get ( 0 ) + " ,持续时间为 " + resultList . get ( 2 ) + " [根据 IEC 61000-2-8:(公共电网电压 " + typeName + " 测量统计)算出 " + typeName + " 事件发生最多的区间],具体见表(图): " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
@@ -5367,7 +5430,7 @@ public class ReportServiceImpl implements ReportService {
twoCount + + ;
twoCount + + ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " IEC 61000-4-11:(用电终端的电压 " + typeName + " 抗度) " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " IEC 61000-4-11:(用电终端的电压 " + typeName + " 抗度) " , " 标题 3 " , 400 , 11 ) ;
//第二张表
//第二张表
XWPFTable monitorInfo1 = createTable ( doc ) ;
XWPFTable monitorInfo1 = createTable ( doc ) ;
@@ -5386,7 +5449,7 @@ public class ReportServiceImpl implements ReportService {
twoCount + + ;
twoCount + + ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " IEC 61000-2-8:(公共电网电压 " + typeName + " 测量统计) " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " IEC 61000-2-8:(公共电网电压 " + typeName + " 测量统计) " , " 标题 3 " , 400 , 11 ) ;
//第二张表
//第二张表
XWPFTable monitorInfo2 = createTable ( doc ) ;
XWPFTable monitorInfo2 = createTable ( doc ) ;
@@ -6789,24 +6852,24 @@ public class ReportServiceImpl implements ReportService {
twoCount1 + + ;
twoCount1 + + ;
//如果幅值图存在与幅值的序号保持同步
//如果幅值图存在与幅值的序号保持同步
createTitle ( doc , " 4. " + oneCount4 + " . " + twoCount1 + " " + typeName + " 密度图 " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount4 + " . " + twoCount1 + " " + typeName + " 密度图 " , " 标题 3 " , 400 , 11 ) ;
//代码
//代码
} else {
} else {
int twoCount = 1 ;
int twoCount = 1 ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 密度 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 密度 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " " + typeName + " 密度统计可以从幅值和持续时间两个维度直接地反映 " + typeName + " 事件发生情况,主要反应事件的发生次数, " +
r12 . setText ( " " + typeName + " 密度统计可以从幅值和持续时间两个维度直接地反映 " + typeName + " 事件发生情况,主要反应事件的发生次数, " +
" 中国电网在所选择的分析时间内 " + typeName + " 事件主要集中在幅值为 " + resultList . get ( 0 ) + " ,持续时间为 " + resultList . get ( 2 ) + " [根据 IEC 61000-2-8:(公共电网电压 " + typeName + " 测量统计)算出 " + typeName + " 事件发生最多的区间],具体见表(图): " ) ;
" 中国电网在所选择的分析时间内 " + typeName + " 事件主要集中在幅值为 " + resultList . get ( 0 ) + " ,持续时间为 " + resultList . get ( 2 ) + " [根据 IEC 61000-2-8:(公共电网电压 " + typeName + " 测量统计)算出 " + typeName + " 事件发生最多的区间],具体见表(图): " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 密度图 " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 密度图 " , " 标题 3 " , 400 , 11 ) ;
//代码
//代码
@@ -6866,12 +6929,12 @@ public class ReportServiceImpl implements ReportService {
oneCount3 = oneCount ;
oneCount3 = oneCount ;
createTitle ( doc , " 4. " + oneCount3 + " " + typeName + " 事件点图 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount3 + " " + typeName + " 事件点图 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " " + typeName + " 事件点图统计分成ITIC曲线和F47曲线展示。 " ) ;
r12 . setText ( " " + typeName + " 事件点图统计分成ITIC曲线和F47曲线展示。 " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
@@ -6880,7 +6943,7 @@ public class ReportServiceImpl implements ReportService {
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r13 = p . createRun ( ) ; //创建段落文本
XWPFRun r13 = p . createRun ( ) ; //创建段落文本
r13 . setText ( " ITIC曲线中可容忍 " + typeName + " 记录为: " + result . get ( 0 ) + " 条;不可容忍 " + typeName + " 记录为: " + result . get ( 1 ) + " 条,具体见下表(图): " ) ;
r13 . setText ( " ITIC曲线中可容忍 " + typeName + " 记录为: " + result . get ( 0 ) + " 条;不可容忍 " + typeName + " 记录为: " + result . get ( 1 ) + " 条,具体见下表(图): " ) ;
r13 . setFontSize ( 11 ) ; //字体大小
r13 . setFontSize ( 11 ) ; //字体大小
@@ -6950,7 +7013,7 @@ public class ReportServiceImpl implements ReportService {
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r13 = p . createRun ( ) ; //创建段落文本
XWPFRun r13 = p . createRun ( ) ; //创建段落文本
r13 . setText ( " F47曲线中可容忍 " + typeName + " 记录为: " + result . get ( 0 ) + " 条;不可容忍 " + typeName + " 记录为: " + result . get ( 1 ) + " 条,具体见下表(图): " ) ;
r13 . setText ( " F47曲线中可容忍 " + typeName + " 记录为: " + result . get ( 0 ) + " 条;不可容忍 " + typeName + " 记录为: " + result . get ( 1 ) + " 条,具体见下表(图): " ) ;
r13 . setFontSize ( 11 ) ; //字体大小
r13 . setFontSize ( 11 ) ; //字体大小
@@ -6966,12 +7029,12 @@ public class ReportServiceImpl implements ReportService {
oneCount3 = oneCount ;
oneCount3 = oneCount ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 事件点图 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " " + typeName + " 事件点图 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " " + typeName + " 事件点图统计分成ITIC曲线和F47曲线展示。 " ) ;
r12 . setText ( " " + typeName + " 事件点图统计分成ITIC曲线和F47曲线展示。 " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
@@ -6980,7 +7043,7 @@ public class ReportServiceImpl implements ReportService {
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r13 = p . createRun ( ) ; //创建段落文本
XWPFRun r13 = p . createRun ( ) ; //创建段落文本
r13 . setText ( " F47曲线中可容忍 " + typeName + " 降记录为: " + result . get ( 0 ) + " 条;不可容忍 " + typeName + " 记录为: " + result . get ( 1 ) + " 条,具体见下表(图): " ) ;
r13 . setText ( " F47曲线中可容忍 " + typeName + " 降记录为: " + result . get ( 0 ) + " 条;不可容忍 " + typeName + " 记录为: " + result . get ( 1 ) + " 条,具体见下表(图): " ) ;
r13 . setFontSize ( 11 ) ; //字体大小
r13 . setFontSize ( 11 ) ; //字体大小
@@ -7102,23 +7165,23 @@ public class ReportServiceImpl implements ReportService {
oneCount2 = oneCount ;
oneCount2 = oneCount ;
createTitle ( doc , " 4. " + oneCount2 + " " + typeName + " 幅值概率分布图 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount2 + " " + typeName + " 幅值概率分布图 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " " + typeName + " 概率分布图分成 " + typeName + " 幅值概率分布和持续时间概率分布图,中国电网在所选择的分析时间内 " + typeName + " 事件从幅值概率分布统计主要集中在幅值为 " + amplitudeResult . get ( 0 ) + " ~ " + amplitudeResult . get ( 1 ) + " 之间, " +
r12 . setText ( " " + typeName + " 概率分布图分成 " + typeName + " 幅值概率分布和持续时间概率分布图,中国电网在所选择的分析时间内 " + typeName + " 事件从幅值概率分布统计主要集中在幅值为 " + amplitudeResult . get ( 0 ) + " ~ " + amplitudeResult . get ( 1 ) + " 之间, " +
" 从持续时间统计主要集中在持续时间为 " + amplitudeResult1 . get ( 0 ) + " ~ " + amplitudeResult1 . get ( 1 ) + " [持续时间排序,选择 " + typeName + " 记录发生最多的区域],如下表(图): " ) ;
" 从持续时间统计主要集中在持续时间为 " + amplitudeResult1 . get ( 0 ) + " ~ " + amplitudeResult1 . get ( 1 ) + " [持续时间排序,选择 " + typeName + " 记录发生最多的区域],如下表(图): " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 幅值的概率分布函数 " , " 标题 3 " , 400 , 11 ) ;
createTitle ( doc , " 4. " + oneCount + " . " + twoCount + " " + typeName + " 幅值的概率分布函数 " , " 标题 3 " , 400 , 11 ) ;
List < String > ybardata = probabilityDistributionArea . getPereventvalue ( ) ;
List < String > ybardata = probabilityDistributionArea . getPereventvalue ( ) ;
List < String > ylinedata = probabilityDistributionArea . getEventvalue ( ) ;
List < String > ylinedata = probabilityDistributionArea . getEventvalue ( ) ;
String fz = getFZ ( ylinedata , ybardata ) ;
String fz = getFZ ( ylinedata , ybardata ) ;
createPic ( doc , fz , " " + typeName + " 幅值的概率分布函数 " ) ;
createPic ( doc , fz , " " + typeName + " 幅值的概率分布函数 " ) ;
//序号计数进行++
//序号计数进行++
@@ -7248,13 +7311,13 @@ public class ReportServiceImpl implements ReportService {
} else {
} else {
createTitle ( doc , " 4. " + oneCount2 + " " + typeName + " 幅值概率分布图 " , " 标题 2 " , 200 , 11 ) ;
createTitle ( doc , " 4. " + oneCount2 + " " + typeName + " 幅值概率分布图 " , " 标题 2 " , 200 , 11 ) ;
p = doc . createParagraph ( ) ; // 新建一个段落
p = doc . createParagraph ( ) ; // 新建一个段落
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
r12 . setText ( " " + typeName + " 概率分布图分成 " + typeName + " 幅值概率分布和持续时间概率分布图,中国电网在所选择的分析时间内 " + typeName + " 事件从幅值概率分布统计主要集中在幅值为 " + amplitudeResult . get ( 0 ) + " ~ " + amplitudeResult . get ( 1 ) + " 之间, " +
r12 . setText ( " " + typeName + " 概率分布图分成 " + typeName + " 幅值概率分布和持续时间概率分布图,中国电网在所选择的分析时间内 " + typeName + " 事件从幅值概率分布统计主要集中在幅值为 " + amplitudeResult . get ( 0 ) + " ~ " + amplitudeResult . get ( 1 ) + " 之间, " +
" 从持续时间统计主要集中在持续时间为 " + amplitudeResult1 . get ( 0 ) + " ~ " + amplitudeResult1 . get ( 1 ) + " [持续时间排序,选择 " + typeName + " 记录发生最多的区域],如下表(图): " ) ;
" 从持续时间统计主要集中在持续时间为 " + amplitudeResult1 . get ( 0 ) + " ~ " + amplitudeResult1 . get ( 1 ) + " [持续时间排序,选择 " + typeName + " 记录发生最多的区域],如下表(图): " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
@@ -7361,7 +7424,7 @@ public class ReportServiceImpl implements ReportService {
p . setAlignment ( ParagraphAlignment . BOTH ) ;
p . setAlignment ( ParagraphAlignment . BOTH ) ;
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
XWPFRun r12 = p . createRun ( ) ; //创建段落文本
//归一化需要高级算法,先字符串代替
//归一化需要高级算法,先字符串代替
r12 . setText ( " 中国电网在所选择的分析时间段内累计监测 " + typeName + " 记录 " + resultCount . get ( " count " ) + " 条,归一化统计后共 " + resultCount1 + " [此为归一化后的暂态事件结果]条,,具体如下图所示: " ) ;
r12 . setText ( " 中国电网在所选择的分析时间段内累计监测 " + typeName + " 记录 " + resultCount . get ( " count " ) + " 条,归一化统计后共 " + resultCount1 + " [此为归一化后的暂态事件结果]条,,具体如下图所示: " ) ;
r12 . setFontSize ( 11 ) ; //字体大小
r12 . setFontSize ( 11 ) ; //字体大小
@@ -7519,7 +7582,7 @@ public class ReportServiceImpl implements ReportService {
XWPFParagraph monitorInfoExcelParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph monitorInfoExcelParagraph = WordUtils . getCenterParagraph ( doc ) ;
// 表格第一行
// 表格第一行
insertRow ( doc , monitorInfo , monitorInfoExcelParagraph , true , " 暂态类型 " , " 电压 " + typeName + " 次数 " ) ;
insertRow ( doc , monitorInfo , monitorInfoExcelParagraph , true , " 暂态类型 " , " 电压 " + typeName + " 次数 " ) ;
//塞入数据
//塞入数据
@@ -7672,7 +7735,7 @@ public class ReportServiceImpl implements ReportService {
String tr = getR ( xdata , reason , " bar9.ftl " ) ;
String tr = getR ( xdata , reason , " bar9.ftl " ) ;
createPic ( doc , tr , " " + typeName + " 原因图 " ) ;
createPic ( doc , tr , " " + typeName + " 原因图 " ) ;
} else {
} else {
@@ -7711,7 +7774,7 @@ public class ReportServiceImpl implements ReportService {
String tr = getR ( xdata , reason , " bar9.ftl " ) ;
String tr = getR ( xdata , reason , " bar9.ftl " ) ;
createPic ( doc , tr , " " + typeName + " 原因图 " ) ;
createPic ( doc , tr , " " + typeName + " 原因图 " ) ;
//序号计数进行++
//序号计数进行++
oneCount + + ;
oneCount + + ;
@@ -7852,7 +7915,7 @@ public class ReportServiceImpl implements ReportService {
XWPFParagraph monitorInfoExcelParagraph = WordUtils . getCenterParagraph ( doc ) ;
XWPFParagraph monitorInfoExcelParagraph = WordUtils . getCenterParagraph ( doc ) ;
// 表格第一行
// 表格第一行
insertRow ( doc , monitorInfo , monitorInfoExcelParagraph , true , " 暂态类型 " , " 电压 " + typeName + " 次数 " ) ;
insertRow ( doc , monitorInfo , monitorInfoExcelParagraph , true , " 暂态类型 " , " 电压 " + typeName + " 次数 " ) ;
//塞入数据
//塞入数据
@@ -8002,7 +8065,7 @@ public class ReportServiceImpl implements ReportService {
}
}
String tr = getT ( xdata , types , " bar8.ftl " ) ;
String tr = getT ( xdata , types , " bar8.ftl " ) ;
createPic ( doc , tr , " " + typeName + " 类型图 " ) ;
createPic ( doc , tr , " " + typeName + " 类型图 " ) ;
} else {
} else {
//创建表题计数
//创建表题计数
@@ -8037,7 +8100,7 @@ public class ReportServiceImpl implements ReportService {
}
}
String tr = getT ( xdata , types , " bar8.ftl " ) ;
String tr = getT ( xdata , types , " bar8.ftl " ) ;
createPic ( doc , tr , " " + typeName + " 类型图 " ) ;
createPic ( doc , tr , " " + typeName + " 类型图 " ) ;
//序号计数进行++
//序号计数进行++
oneCount + + ;
oneCount + + ;