151 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
		
		
			
		
	
	
			151 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
|  | <!DOCTYPE html> | ||
|  | <html> | ||
|  | 
 | ||
|  | <head> | ||
|  |   <meta http-equiv="content-type" content="text/html;charset=utf-8" /> | ||
|  |   <link rel="shortcut icon" href="#" /> | ||
|  |   <link rel="stylesheet" type="text/css" href="{{pluResPath}}html/payLog/payLog.css" /> | ||
|  |   <link rel="preload" href="{{resPath}}font/tttgbnumber.ttf" as="font"> | ||
|  |   <link rel="preload" href="{{pluResPath}}img/namecard/{{headImg}}.png" as="image"> | ||
|  |   {{@headStyle}} | ||
|  | </head> | ||
|  | 
 | ||
|  | <body> | ||
|  |   <div class="container" id="container"> | ||
|  |     <div class="head_box"> | ||
|  |       <div class="id_text">ID: {{uid}}</div> | ||
|  |       <h2 class="day_text">充值统计</h2> | ||
|  |       <img class="genshin_logo" src="{{pluResPath}}img/other/原神.png" /> | ||
|  |     </div> | ||
|  |     <div class="data_box"> | ||
|  |       <div class="tab_lable">数据总览</div> | ||
|  |       <div class="data_line"> | ||
|  |         {{each topData.slice(0,4) data}} | ||
|  |         <div class="data_line_item"> | ||
|  |           <div class="num">{{data.value}}</div> | ||
|  |           <div class="lable">{{data.title}}</div> | ||
|  |         </div> | ||
|  |         {{/each}} | ||
|  |       </div> | ||
|  |       <div class="data_line"> | ||
|  |         {{each topData.slice(4,8) data}} | ||
|  |         <div class="data_line_item"> | ||
|  |           <div class="num">{{data.value}}</div> | ||
|  |           <div class="lable">{{data.title}}</div> | ||
|  |         </div> | ||
|  |         {{/each}} | ||
|  |       </div> | ||
|  |       <div class="data_line"> | ||
|  |         {{each topData.slice(8,12) data}} | ||
|  |         <div class="data_line_item"> | ||
|  |           <div class="num">{{data.value}}</div> | ||
|  |           <div class="lable">{{data.title}}</div> | ||
|  |         </div> | ||
|  |         {{/each}} | ||
|  |       </div> | ||
|  |     </div> | ||
|  |     <div class="data_box"> | ||
|  |       <div class="tab_lable">月份统计</div> | ||
|  |       <div id="chartContainer"></div> | ||
|  |     </div> | ||
|  |     <div class="data_box"> | ||
|  |       <div class="tab_lable">详细统计</div> | ||
|  |       <div id="chartContainer2"></div> | ||
|  |     </div> | ||
|  |     <div class="logo">Created By {{yzName}} & seven-plugin</div> | ||
|  |   </div> | ||
|  | </body> | ||
|  | 
 | ||
|  | <script src="{{pluResPath}}html/payLog/echarts.min.js"></script> | ||
|  | 
 | ||
|  | <script> | ||
|  |   const barData = JSON.parse(`{{@ barData}}`); | ||
|  |   var myChart1 = echarts.init(document.querySelector('#chartContainer'), null, { renderer: 'svg' }); | ||
|  |   const xData = barData.map(v => v.type) | ||
|  |   const yData = barData.map(v => v.sales) | ||
|  |   // 指定图表的配置项和数据 | ||
|  |   const option = { | ||
|  |     animation: false, | ||
|  |     xAxis: { | ||
|  |       type: 'category', | ||
|  |       data: xData | ||
|  |     }, | ||
|  |     legend: { | ||
|  |       x:'left', | ||
|  |       y:'top', | ||
|  |       show: true, | ||
|  |       data: [{ name: '金额' }] | ||
|  |     }, | ||
|  |     yAxis: { | ||
|  |       type: 'value' | ||
|  |     }, | ||
|  |     series: [ | ||
|  |       { | ||
|  |         name:'金额', | ||
|  |         data: yData, | ||
|  |         type: 'bar', | ||
|  |         itemStyle: { | ||
|  |           normal: { | ||
|  |             label: { | ||
|  |               position: 'top', | ||
|  |               show: true, | ||
|  |               textStyle: { | ||
|  |                 color: '#1e1f20', | ||
|  |                 fontSize: 14, | ||
|  |                 fontFamily: "tttgbnumber", | ||
|  |               } | ||
|  |             }, | ||
|  |             color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{ | ||
|  |               offset: 0, | ||
|  |               color: "#1268f3" | ||
|  |             }, { | ||
|  |               offset: 0.6, | ||
|  |               color: "#08a4fa" | ||
|  |             }, { | ||
|  |               offset: 1, | ||
|  |               color: "#01ccfe" | ||
|  |             }], false) | ||
|  |           }, | ||
|  | 
 | ||
|  |         }, | ||
|  |       } | ||
|  |     ] | ||
|  |   }; | ||
|  |   myChart1.setOption(option); | ||
|  | 
 | ||
|  |   const pieData = JSON.parse(`{{@ pieData}}`); | ||
|  |   const myChart2 = echarts.init(document.querySelector('#chartContainer2'), null, { renderer: 'svg' }); | ||
|  |   const option2 = { | ||
|  |     animation: false, | ||
|  |     title: { | ||
|  |       text: '{{topData[0].value}}', | ||
|  |       subtext: '总充值', | ||
|  |       left: 'right' | ||
|  |     }, | ||
|  |     legend: { | ||
|  |       orient: 'horizontal', | ||
|  |       bottom: 'left' | ||
|  |     }, | ||
|  |     series: [ | ||
|  |       { | ||
|  |         name: 'Access From', | ||
|  |         type: 'pie', | ||
|  |         radius: '50%', | ||
|  |         itemStyle: { | ||
|  |           normal: { | ||
|  |             label: { | ||
|  |               show: true, | ||
|  |               fontFamily: "tttgbnumber", | ||
|  |               formatter: '{b}:¥{c} ({d}%)' | ||
|  |             }, | ||
|  |             labelLine: { show: true } | ||
|  |           } | ||
|  |         }, | ||
|  |         data: pieData, | ||
|  |       } | ||
|  |     ] | ||
|  |   }; | ||
|  |   myChart2.setOption(option2); | ||
|  | </script> | ||
|  | 
 | ||
|  | </html> |