187 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			187 lines
		
	
	
		
			5.4 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/ledgerCount/ledgerCount.css" />
 | 
						|
    <link rel="preload" href="https://unpkg.com/@antv/g2plot@latest/dist/g2plot.min.js" as="script" />
 | 
						|
    <link rel="preload" href="{{resPath}}/font/tttgbnumber.ttf" as="font">
 | 
						|
    <link rel="preload" href="{{pluResPath}}img/other/原神.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">{{yearText}}原石统计</h2>
 | 
						|
        <img class="genshin_logo" src="{{pluResPath}}img/other/原神.png" />
 | 
						|
      </div>
 | 
						|
      <div class="data_box">
 | 
						|
        <div class="tab_lable">数据总览</div>
 | 
						|
        <div class="data_line">
 | 
						|
          <div class="data_line_item">
 | 
						|
            <div class="num">{{allPrimogemsShow}}</div>
 | 
						|
            <div class="lable">总原石</div>
 | 
						|
          </div>
 | 
						|
          <div class="data_line_item">
 | 
						|
            <div class="num">{{allGacha}}抽</div>
 | 
						|
            <div class="lable">总抽数</div>
 | 
						|
          </div>
 | 
						|
          <div class="data_line_item">
 | 
						|
            <div class="num">{{maxPrimogems.month}}月</div>
 | 
						|
            <div class="lable">原石最多</div>
 | 
						|
          </div>
 | 
						|
          <div class="data_line_item">
 | 
						|
            <div class="num">{{maxPrimogems.value}}</div>
 | 
						|
            <div class="lable">{{maxPrimogems.month}}月原石</div>
 | 
						|
          </div>
 | 
						|
        </div>
 | 
						|
        <div class="data_line">
 | 
						|
          <div class="data_line_item">
 | 
						|
            <div class="num">{{allMora}}</div>
 | 
						|
            <div class="lable">总摩拉</div>
 | 
						|
          </div>
 | 
						|
          <div class="data_line_item">
 | 
						|
            <div class="num">{{maxMora.month}}月</div>
 | 
						|
            <div class="lable">摩拉最多</div>
 | 
						|
          </div>
 | 
						|
          <div class="data_line_item">
 | 
						|
            {{if group_by.length>0 }}
 | 
						|
            <div class="num">{{group_by[0].num}}</div>
 | 
						|
            <div class="lable">{{group_by[0].action}}</div>
 | 
						|
            {{/if}}
 | 
						|
          </div>
 | 
						|
          <div class="data_line_item">
 | 
						|
            {{if group_by.length>0 }}
 | 
						|
            <div class="num">{{group_by[1].num}}</div>
 | 
						|
            <div class="lable">{{group_by[1].action}}</div>
 | 
						|
            {{/if}}
 | 
						|
          </div>
 | 
						|
        </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>
 | 
						|
      {{if hasMore }}
 | 
						|
      <div class="hasMore">*该数据只显示最近12个月</div>
 | 
						|
      {{/if}}
 | 
						|
      <div class="logo">Created By Yunzai-Bot</div>
 | 
						|
    </div>
 | 
						|
  </body>
 | 
						|
 | 
						|
  <script type="text/javascript" src="https://unpkg.com/@antv/g2plot@latest/dist/g2plot.min.js"></script>
 | 
						|
  <script>
 | 
						|
    const { Column, Pie } = G2Plot;
 | 
						|
 | 
						|
    const primogemsMonth = JSON.parse(`{{@ primogemsMonth}}`);
 | 
						|
    const primogemsMax = {{maxPrimogems.value}};
 | 
						|
    const stackedColumnPlot = new Column("chartContainer", {
 | 
						|
      data: primogemsMonth,
 | 
						|
      isGroup: true,
 | 
						|
      xField: "month",
 | 
						|
      yField: "value",
 | 
						|
      seriesField: "name",
 | 
						|
      animation: false,
 | 
						|
      renderer: "svg",
 | 
						|
      padding: [40, 10, 30, 52],
 | 
						|
      label: {
 | 
						|
        position: "top",
 | 
						|
        style: {
 | 
						|
          fontFamily: "tttgbnumber",
 | 
						|
        },
 | 
						|
        offsetY: 10,
 | 
						|
      },
 | 
						|
      xAxis: {
 | 
						|
        label: {
 | 
						|
          autoHide: false,
 | 
						|
          formatter: (v) => {
 | 
						|
            return v + "月";
 | 
						|
          },
 | 
						|
          style: {
 | 
						|
            fontFamily: "tttgbnumber",
 | 
						|
            fontSize: 14,
 | 
						|
          },
 | 
						|
        },
 | 
						|
      },
 | 
						|
      yAxis: {
 | 
						|
        label: {
 | 
						|
          style: {
 | 
						|
            fontFamily: "tttgbnumber",
 | 
						|
            fontSize: 14,
 | 
						|
          },
 | 
						|
        },
 | 
						|
      },
 | 
						|
    });
 | 
						|
    stackedColumnPlot.render();
 | 
						|
 | 
						|
    const countdata = JSON.parse(`{{@ pieData}}`);
 | 
						|
    const piePlot = new Pie("chartContainer2", {
 | 
						|
      renderer: "svg",
 | 
						|
      animation: false,
 | 
						|
      data: countdata,
 | 
						|
      appendPadding: 10,
 | 
						|
      angleField: "num",
 | 
						|
      colorField: "action",
 | 
						|
      radius: 1,
 | 
						|
      innerRadius: 0.7,
 | 
						|
      // appendPadding: 20,
 | 
						|
      color: JSON.parse(`{{@ color}}`),
 | 
						|
      meta: {
 | 
						|
        // num: {
 | 
						|
        //   formatter: (v) => `${v}`,
 | 
						|
        // },
 | 
						|
      },
 | 
						|
      label: {
 | 
						|
        type: "inner",
 | 
						|
        offset: "-50%",
 | 
						|
        autoRotate: false,
 | 
						|
        style: {
 | 
						|
          textAlign: "center",
 | 
						|
          fontFamily: "tttgbnumber",
 | 
						|
        },
 | 
						|
        formatter: ({ percent }) => {
 | 
						|
          percent = (percent * 100).toFixed(0);
 | 
						|
          return percent >= 2 ? `${percent}%` : "";
 | 
						|
        },
 | 
						|
      },
 | 
						|
      statistic: {
 | 
						|
        title: {
 | 
						|
          offsetY: -8,
 | 
						|
          content: "总计",
 | 
						|
        },
 | 
						|
        content: {
 | 
						|
          style: {
 | 
						|
            fontFamily: "tttgbnumber",
 | 
						|
          },
 | 
						|
        },
 | 
						|
      },
 | 
						|
      legend: {
 | 
						|
        offsetX:-16,
 | 
						|
        itemValue: {
 | 
						|
          formatter: (text, item) => {
 | 
						|
            const items = countdata.filter((d) => d.action === item.value)[0];
 | 
						|
            return items.num;
 | 
						|
          },
 | 
						|
          style: {
 | 
						|
            opacity: 0.65,
 | 
						|
            fontFamily: "tttgbnumber",
 | 
						|
            "fontSize": 16,
 | 
						|
          },
 | 
						|
        },
 | 
						|
        itemName:{
 | 
						|
          style: {
 | 
						|
            "fontSize": 16,
 | 
						|
          },
 | 
						|
        }
 | 
						|
      },
 | 
						|
    });
 | 
						|
    piePlot.render();
 | 
						|
  </script>
 | 
						|
</html>
 |