Files
astrbot_plugin_jx3/templates/pages/zili.html
T
2026-09-04 18:29:49 +08:00

102 lines
4.1 KiB
HTML

{# template-title: 资历查询 #}
{% macro progress_card(css_class, name, completed_points, total_points, completed_count, achievement_count) %}
{% set percent = (completed_points * 100 / total_points) if total_points else 0 %}
<div class="{{ css_class }}">
<div class="{{ 'summary-top' if css_class == 'summary' else 'item-top' }}">
<div class="{{ 'summary-name' if css_class == 'summary' else 'item-name' }}">{{ name }}</div>
<div class="{{ 'summary-percent' if css_class == 'summary' else 'item-percent' }}">{{ "%.2f"|format(percent) }}%</div>
</div>
<div class="score">
{{ completed_points }} / {{ total_points }} 点
· {{ completed_count }} / {{ achievement_count }} 项
</div>
<div class="progress">
<div class="progress-fill" style="width: {{ percent }}%;"></div>
</div>
</div>
{% endmacro %}
{% set page_title = (subclass ~ '总览') if subclass else '资历总览' %}
{% set selected_items = data.total if subclass else {} %}
{% set summary = namespace(pieces_total=0, pieces_speed=0, seniority_total=0, seniority_speed=0) %}
{% if subclass %}
{% for stats in selected_items.values() %}
{% set summary.pieces_total = summary.pieces_total + stats.pieces.total %}
{% set summary.pieces_speed = summary.pieces_speed + stats.pieces.speed %}
{% set summary.seniority_total = summary.seniority_total + stats.seniority.total %}
{% set summary.seniority_speed = summary.seniority_speed + stats.seniority.speed %}
{% endfor %}
{% else %}
{% for category_items in data.total.values() %}
{% for stats in category_items.values() %}
{% set summary.pieces_total = summary.pieces_total + stats.pieces.total %}
{% set summary.pieces_speed = summary.pieces_speed + stats.pieces.speed %}
{% endfor %}
{% endfor %}
{% set summary.seniority_total = data.totalScore %}
{% set summary.seniority_speed = data.score %}
{% endif %}
<div class="container">
<div class="header">
<div class="title-row">
<h1>{{ page_title }}</h1>
<div class="role">
{% if icons.sect.get(forceName) %}
<img class="force-icon" src="{{ icons.sect[forceName] }}" alt="{{ forceName }}">
{% endif %}
<span>{{ roleName }}</span>
</div>
</div>
<div class="meta">
{{ zoneName }} · {{ serverName }} · {{ forceName }} · {{ campName }} · 帮会:{{ tongName or "无" }}<br>
数据来源:JX3API
</div>
</div>
{{ progress_card(
'summary',
page_title,
summary.seniority_speed,
summary.seniority_total,
summary.pieces_speed,
summary.pieces_total
) }}
<div class="list">
{% if subclass %}
{% for item_name, stats in selected_items.items() %}
{{ progress_card(
'item',
item_name,
stats.seniority.speed,
stats.seniority.total,
stats.pieces.speed,
stats.pieces.total
) }}
{% endfor %}
{% else %}
{% for category_name, category_items in data.total.items() %}
{% set item = namespace(pieces_total=0, pieces_speed=0, seniority_total=0, seniority_speed=0) %}
{% for stats in category_items.values() %}
{% set item.pieces_total = item.pieces_total + stats.pieces.total %}
{% set item.pieces_speed = item.pieces_speed + stats.pieces.speed %}
{% set item.seniority_total = item.seniority_total + stats.seniority.total %}
{% set item.seniority_speed = item.seniority_speed + stats.seniority.speed %}
{% endfor %}
{{ progress_card(
'item',
category_name ~ '总览',
item.seniority_speed,
item.seniority_total,
item.pieces_speed,
item.pieces_total
) }}
{% endfor %}
{% endif %}
</div>
</div>