Files
geedge-jira/attachment/31544/template.ftl

308 lines
46 KiB
Plaintext
Raw Normal View History

2025-09-14 22:00:20 +00:00
<html>
<head>
<style> .bandWidth { width: 101%; padding: 10px 0px 10px 55px; background: #32739c; margin-left: -10px; margin-bottom: 40px;} .bandWidth h2 { color: #fff; }
.profile { width: 500px; height: 100px; border: 1px solid #cccccc; border-radius: 2px; border-collapse: collapse; margin: 0 auto; text-align: center; margin-left: 5px; margin-bottom: 5px; font-size: 10;}
.Traffic { display: flex; width: 560px; margin-bottom: 5px; padding-left: 5px; float: left;}
.margin-bottom30 { margin-bottom: 20px; margin-top: 20px;}
.line {
height: 169px;
width: 1px;
background: #ccc;
margin-top: -25px;
}
.leftForm { width: 280px; padding-left: 20px; padding-right: 10px; font-size: 10; }.Traffic span { color: #32739c; } .rightForm{ padding-left: 75px; float: left; }.rightForm span { color: #32739c; }.item__content{margin-top: -25;}.title {
height: 20px;
width: 100%;
background: #eee;
}.clear:after{display:block;content:'';clear:both;}
body
{
font-family: Noto Sans SC;
}
h2
{
font-family: Noto Sans SC;
font-size: 14px;
}
td
{
font-family: Noto Sans SC;
}
label
{
font-family: Noto Sans SC;
}
span
{
font-family: Noto Sans SC;
}
</style>
<style> .box {
background-color: rgb(255, 208, 0);
background-image: url("data:image/png;base64,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
background-size: 100% 100%;
background-repeat: no-repeat;
position: absolute;
padding: 0px;
width: 595px;
height: 842px;
top: 000;
left: 0;
overflow:hidden;
}
</style>
<style>
.a {
width: 500px;
height:300px ;
position: static;
padding-top: 310px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 57px;
left: 300px;
top: 200px;
font-size: 12;
font-family: Noto Sans SC;
}
</style>
<style>
.h {
width: 535px;
height:12px ;
position: static;
padding-top: 40px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
</style>
<style>
.footer {
width: 535px;
height:12px ;
position: absolute;
padding-top: 780px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- echarts.js -->
<script src="${JSPath}"></script>
</head>
<body>
<div style="width:575px;height:830px" >
</div>
<div id="test" class="box" >
<div class="a" id = "44">
<div><span style="line-height: 40px;font-size: 34;color: #31739C;font-weight:bold;">${sysName}</span></div>
<div><span style="white-space:nowrap;line-height: 100px;font-size: 34;display:block;overflow: hidden !important;text-overflow: ellipsis !important;">${jobName}</span></div>
<div><span style="line-height: 20px;color: #474d47;">Create Time: ${opTime} </span></div>
<div><span style="line-height: 20px;color: #474d47;">Data Range: ${start} - ${end} </span></div>
<div><span style="line-height: 20px;color: #474d47;">Running Time: ${durationTime} s</span><span style="line-height: 20px;color: #474d47;"> Processed Rows: ${rows}</span></div>
</div>
</div>
<div style="height:800px;width:575px">
<div style="width:575px" class="footer">
<hr style="background: #CCCCCC ;width:95%;height: 1px;border: none;padding-bottom: 0px;">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 400px;padding-top: 0px;" ><span style="font-weight:bold;color: #CCCCCC ;line-height: 0px;font-size: 10;padding-left: 90px;">Page 1 of ${Page}</span></div>
</div>
<span style="padding-top: 70px;text-align:center;display:block;font-size: 16;padding-bottom: 40px;">Table of Contents </span>
<div style="width:575px;clear: both;height: 16px;margin-bottom: 8px;padding-left: 40px;">
<div class="" style=" float: left; position: relative; height: 15px; width: 470px; border-bottom: 1px #000 dashed;">
<span style="text-align: left;position: absolute;line-height: 16px;background: #fff;height: 16px;display:inline-block;font-size: 10;">Traffic Statistics</span></div>
<div style=" float: right; line-height: 16px;padding-right: 90px;font-size: 10;">2</div>
<#if div?contains('empty')>
<#else>
<div class="" style=" float: left; position: relative; height: 15px; width: 470px; border-bottom: 1px #000 dashed;">
<#if div.YName?length gt 80>
<span style="white-space:nowrap; text-align: left;line-height: 16px;background: #fff;height: 16px;display:block;overflow: hidden !important;text-overflow: ellipsis !important;font-size: 10;">${(div.YName)!''}</span></div>
<#else>
<span style="text-align: left;position: absolute;line-height: 16px;background: #fff;height: 16px;display:block;overflow: hidden !important;text-overflow: ellipsis !important;font-size: 10;">${(div.YName)!''}</span></div>
</#if>
<div style=" float: right; line-height: 16px;padding-right: 90px;font-size: 10;">2</div>
</#if>
<#list divList as lineTemplate>
<#if lineTemplate.YName!=''>
<div class="" style=" float: left; position: relative; height: 15px; width: 470px; border-bottom: 1px #000 dashed;">
<#if lineTemplate.YName?length gt 80>
<span style="white-space:nowrap; text-align: left;line-height: 16px;background: #fff;height: 16px;display:block;overflow: hidden !important;text-overflow: ellipsis !important;font-size: 10;">${(lineTemplate.YName)!''}</span></div>
<#else>
<span style="text-align: left;position: absolute;line-height: 16px;background: #fff;height: 16px;display:block;overflow: hidden !important;text-overflow: ellipsis !important;font-size: 10;">${(lineTemplate.YName)!''}</span></div>
</#if>
<div style=" float: right; line-height: 16px;padding-right: 90px;font-size: 10;">${lineTemplate.currentPage}</div>
</#if>
</#list>
</div>
</div>
<div style ='page-break-before:always;'></div>
<div style="height:800px;width:575px">
<div style="width:575px" class="footer">
<hr style="background: #CCCCCC ;width:95%;height: 1px;border: none;padding-bottom: 0px;">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 400px;padding-top: 0px;" ><span style="font-weight:bold;color: #CCCCCC ;line-height: 0px;font-size: 10;padding-left: 90px;">Page 2 of ${Page}</span></div>
</div>
<div style="width:530px" class="clear">
<div style="width:575px" class="h">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 100px;padding-top: 0px;" ><span style="font-weight:bold;color: #31739C;line-height: 0px;font-size: 12;padding-left: 18px;float:right">${sysName}</span></div>
<hr style="background: #31739C;width:95%;height: 1px;border: none;padding-bottom: 0px;">
</div>
<h2 class="margin-bottom30" style="padding-left: 25px;">Traffic Statistics</h2>
<div class="Traffic">
<div class="leftForm" style="width:230px" >
<div>
<label style="width: 180px;">Total DeviceNum</label>
<div class="item__content" style="margin-left: 150px;">
<span style="line-height: 32px;">${device_num}</span>
</div>
</div>
<div>
<label style="width: 180px;">Total Hit Sessions</label>
<div class="item__content" style="margin-left: 150px;">
<span style="line-height: 32px;">${totalHitSessions} </span>
</div>
</div>
<div>
<label style="width: 180px;">Total Bytes Transferred</label>
<div class="item__content" style="margin-left: 150px;">
<span style="line-height: 32px;">${totalBytes}</span>
</div>
</div>
<div>
<label style="width: 180px;">Total Packets Transferred</label>
<div class="item__content" style="margin-left: 150px;">
<span style="line-height: 32px;">${totalPackets}</span>
</div>
</div>
<div>
<label style="width: 180px;">Total New Sessions</label>
<div class="item__content" style="margin-left: 150px;">
<span style="line-height: 32px;">${totalNewSessions}</span>
</div>
</div>
<div>
<label style="width: 180px;">Average Live Sessions</label>
<div class="item__content" style="margin-left: 150px;">
<span style="line-height: 32px;">${maxLiveSessions}</span>
</div>
</div>
</div>
<div class="line"></div>
<div class="leftForm">
<div>
<label style="width: 180px;">Total Closed Sessions</label>
<div class="item__content" style="margin-left: 210px;">
<span style="line-height: 32px;">${totalCloseSessions}</span>
</div>
</div>
<div>
<label style="width: 180px;">Average New Sessions Per Second</label>
<div class="item__content" style="margin-left: 210px;">
<span style="line-height: 32px;">${avgNewSessions}</span>
</div>
</div>
<div>
<label style="width: 180px;">Average Bits Per Second</label>
<div class="item__content" style="margin-left: 210px;">
<span style="line-height: 32px;">${avgBytes}</span>
</div>
</div>
<div>
<label style="width: 180px;">Average Packets Per Second</label>
<div class="item__content" style="margin-left: 210px;">
<span style="line-height: 32px;">${avgPackets}</span>
</div>
</div>
</div>
</div>
</div>
<#if div?contains('empty')>
<#else>
<h2 class="margin-bottom30" style="white-space:nowrap;padding-left: 25px;display:block;overflow: hidden !important;text-overflow: ellipsis !important;">${(div.YName)!''}</h2>
${(div.data)!''}
</#if>
</div>
<#assign x=0>
<#assign a=2>
<#list divList as lineTemplate>
<#if (a>1)>
<#assign a=0>
<#assign x=x+1>
<div style ='page-break-before:always;'></div>
<div style="height:800px;width:575px">
<div style="width:575px" class="footer">
<hr style="background: #CCCCCC ;width:95%;height: 1px;border: none;padding-bottom: 0px;">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 400px;padding-top: 0px;" ><span style="font-weight:bold;color: #CCCCCC ;line-height: 0px;font-size: 10;padding-left: 90px;">Page ${x+2} of ${Page}</span></div>
</div>
<div style="width:575px" class="h">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 100px;padding-top: 0px;" ><span style="font-weight:bold;color: #31739C;line-height: 0px;font-size: 12;padding-left: 18px;float:right">${sysName}</span></div>
<hr style="background: #31739C;width:95%;height: 1px;border: none;padding-bottom: 0px;">
</div>
<#else>
<#if lineTemplate.type?contains('2')>
<#assign a=0>
<#assign x=x+1>
</div>
<div style ='page-break-before:always;'></div>
<div style="height:800px;width:575px">
<div style="width:575px" class="footer">
<hr style="background: #CCCCCC ;width:95%;height: 1px;border: none;padding-bottom: 0px;">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 400px;padding-top: 0px;" ><span style="font-weight:bold;color: #CCCCCC ;line-height: 0px;font-size: 10;padding-left: 90px;">Page ${x+2} of ${Page}</span></div>
</div>
<div style="width:575px" class="h">
<div style="padding-right: 0px;padding-bottom: 0px;padding-left: 100px;padding-top: 0px;" ><span style="font-weight:bold;color: #31739C;line-height: 0px;font-size: 12;padding-left: 18px;float:right">${sysName}</span></div>
<hr style="background: #31739C;width:95%;height: 1px;border: none;padding-bottom: 0px;">
</div>
</#if>
</#if>
<#assign a=a+1>
<h2 class="margin-bottom30" style="white-space:nowrap;padding-left: 25px;display:block;overflow: hidden !important;text-overflow: ellipsis !important;">${(lineTemplate.YName)!''}</h2>
${(lineTemplate.data)!''}
<#if lineTemplate.type?contains('1')>
<#if (a>1)>
</div>
<#assign a=2>
</#if>
<#else>
</div>
<#assign a=2>
</#if>
</#list>
</body>
</html>