{% from '_macros.html' import td_eur, td_source, td_source_short, casilla_badge, cell_amount, pluralize, note_block, casilla_warnings_block, section_h2, empty_state %}
{{ section_h2(casilla, 'Staking/rewards crypto') }}
{{ note_block(casilla) }}
{{ casilla_warnings_block(casilla) }}
En caso de que se quiera declarar como rendimientos del capital mobiliario, pulsa sobre la casilla {{ casilla_badge(33) }}
e introduce un único valor con el total reportado en el resumen, o un valor por activo si declaras cada uno por separado.
{% if casilla.desglose %}
Resumen por activo
| Activo |
Nº operaciones |
Rendimiento íntegro |
{% for item in casilla.desglose %}
| {{ item.extras.get('activo', '') }} |
{{ item.extras.get('num_operaciones', '') }} |
{{ td_eur(item.importe_eur, sign=False) }}
{% endfor %}
| Total |
{{ casilla.extras.total_ops }} |
{{ cell_amount(casilla.valor, casilla=33, button='copy') }} |
{% if casilla.extras.rewards %}
Detalle de operaciones
{% set ns = namespace(files=[], labels=[]) %}
{% for r in casilla.extras.rewards %}{% if r.source and r.source.file not in ns.files %}{% set ns.files = ns.files + [r.source.file] %}{% set ns.labels = ns.labels + [r.source.file_label] %}{% endif %}{% endfor %}
{% set single_src = ns.labels|length <= 1 %}
Staking/Rewards
{% if ns.labels %}{{ ns.labels|join(' · ') }}{% endif %}
{{ casilla.extras.rewards|length }} {{ pluralize(casilla.extras.rewards|length, 'operación', 'operaciones') }}
| # |
Activo |
Fecha |
Cantidad |
Importe EUR |
Tipo |
Descripción |
Origen |
{% for r in casilla.extras.rewards %}
| {{ loop.index }} |
{{ r.asset }} |
{{ r.date.strftime('%d/%m/%Y') }} |
{{ r.quantity|format_qty }} |
{{ r.price_eur|format_num }} € |
{{ r.reward_type }} |
{{ r.description }} |
{{ td_source_short(r.source, multi=not single_src) }}
{% endfor %}
{% endif %}
{% else %}
{{ empty_state('No hay staking/rewards crypto en este ejercicio.') }}
{% endif %}