Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@ _✨ 一个基于 AstrBot 的智能群聊分析插件,支持 **QQ (OneBot)**
<p><b>ATRI</b></p>
<img src="https://fastly.jsdelivr.net/gh/SXP-Simon/astrbot_plugin_qq_group_daily_analysis@main/assets/ATRI-demo.jpg" alt="ATRI" width="100%">
</td>
<td align="center" width="33.3%" valign="top">
<p><b>BlueArchive</b></p>
<img src="https://fastly.jsdelivr.net/gh/VanillaNahida/astrbot_plugin_qq_group_daily_analysis@main/assets/BlueArchive-demo.jpg" alt="BlueArchive" width="100%">
</td>
<td align="center" width="33.3%" valign="top">
<p><b>Simple</b></p>
<img src="https://fastly.jsdelivr.net/gh/SXP-Simon/astrbot_plugin_qq_group_daily_analysis@main/assets/format-demo.jpg" alt="simple" width="100%">
Expand Down
1 change: 1 addition & 0 deletions _conf_schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@
"description": "报告模板",
"options": [
"ATRI",
"BlueArchive",
"scrapbook",
"retro_futurism",
"HatsuneMiku",
Expand Down
Binary file added assets/BlueArchive-demo.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<div class="chart-section-horizontal">
{% for item in chart_data %}
{% set bar_percentage = item.percentage | float %}
{% if bar_percentage < 0 %}
{% set bar_percentage = 0 %}
{% elif bar_percentage > 100 %}
{% set bar_percentage = 100 %}
{% endif %}

{% set bar_bg = 'var(--ba-blue)' %}
{% set bar_height = '4px' %}
{% set bar_opacity = '1' %}

{% if item.count == 0 %}
{% set bar_bg = 'var(--ba-text-muted)' %}
{% set bar_height = '4px' %}
{% set bar_opacity = '0.15' %}
{% elif bar_percentage >= 70 %}
{% set bar_bg = 'var(--ba-accent-orange)' %}
{% set bar_height = bar_percentage ~ '%' %}
{% elif bar_percentage >= 30 %}
{% set bar_bg = 'var(--ba-accent-green)' %}
{% set bar_height = bar_percentage ~ '%' %}
{% else %}
{% set bar_bg = 'var(--ba-blue)' %}
{% set bar_height = bar_percentage ~ '%' %}
{% endif %}

<div class="chart-column">
{% if item.count > 0 %}
<div class="chart-value-top">{{ item.count }}</div>
{% endif %}

{% set style_str = 'height: ' ~ bar_height ~ '; background: ' ~ bar_bg ~ '; opacity: ' ~ bar_opacity ~ ';' %}
<div class="chart-bar-vertical" style="{{ style_str }}"></div>

<div class="chart-label-xaxis">{{ "%02d" | format(item.hour) }}</div>
</div>
{% endfor %}
</div>
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<div class="quality-item">
<div class="quality-header">
<div class="theme-title-badge">{{ title }}</div>
<div class="time-range">{{ subtitle }}</div>
</div>

<div class="dimension-bar-container">
<div class="dimension-bar">
{% set colors = ['#3593f3', '#58c3e5', '#7c6ff7', '#f06292', '#ff9800', '#66bb6a', '#ffc107', '#26c6da'] %}
{% for dim in dimensions %}
{% set safe_percentage = dim.percentage|float %}
{% if safe_percentage < 0 %}
{% set safe_percentage = 0 %}
{% elif safe_percentage > 100 %}
{% set safe_percentage = 100 %}
{% endif %}
{% if safe_percentage > 0 %}
<div class="dimension-segment"
style="width: {{ safe_percentage }}%; background-color: {{ colors[loop.index0 % colors|length] }};"
title="{{ dim.comment }}">
<span class="segment-label"
style="display: inline-block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%;">
{{ dim.name }}
</span>
</div>
{% endif %}
{% endfor %}
</div>
</div>

<div class="dimension-comments-grid">
{% set colors = ['#3593f3', '#58c3e5', '#7c6ff7', '#f06292', '#ff9800', '#66bb6a', '#ffc107', '#26c6da'] %}
{% for dim in dimensions %}
{% set safe_percentage = dim.percentage|float %}
{% if safe_percentage < 0 %}
{% set safe_percentage = 0 %}
{% elif safe_percentage > 100 %}
{% set safe_percentage = 100 %}
{% endif %}
{% if safe_percentage > 0 %}
<div class="dim-sticker" style="border-color: {{ colors[loop.index0 % colors|length] }};">
<div style="margin-bottom: 4px;">
<strong class="dim-sticker-title" style="color: {{ colors[loop.index0 % colors|length] }}; border-color: {{ colors[loop.index0 % colors|length] }}; margin-bottom: 2px; display: block;">{{ dim.name }}</strong>
<span style="font-size: 0.82rem; font-weight: 700; color: {{ colors[loop.index0 % colors|length] }}; display: block; margin-bottom: 4px;">{{ '%.1f'|format(safe_percentage) }}%</span>
</div>
<span>{{ dim.comment }}</span>
</div>
{% endif %}
{% endfor %}
</div>

<div class="character-summary-section">
<div class="character-container">
<img class="character-img"
src="https://img.dkdun.cn/v1/2026/17/314653a2aa301144.png"
alt="Assistant">
</div>
<div class="speech-bubble">
<div class="summary-text">{{ summary }}</div>
</div>
</div>
</div>
Loading