67a0e674ca
Marine maintenance management: work orders with photos, ISM/SWP procedures, MSDS, inventory, RFQ/purchases, vessel history, bilingual PDF reports. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
44 lines
1.9 KiB
HTML
44 lines
1.9 KiB
HTML
{% extends 'base.html' %}
|
|
{% block title %}MSDS — Fichas Técnicas{% endblock %}
|
|
{% block page_title %}Fichas de Seguridad (MSDS){% endblock %}
|
|
{% block topbar_actions %}
|
|
<a href="{{ url_for('msds_new') }}" class="btn btn-primary">+ Nueva MSDS</a>
|
|
<a href="{{ url_for('ism_index') }}" class="btn btn-secondary">← ISM</a>
|
|
{% endblock %}
|
|
{% block content %}
|
|
<div class="card">
|
|
<div class="table-wrap">
|
|
<table>
|
|
<thead><tr><th>Producto</th><th>Fabricante</th><th>Clase GHS</th><th>Versión</th><th>Repuesto vinculado</th><th>PDF</th><th></th></tr></thead>
|
|
<tbody>
|
|
{% for m in msds_list %}
|
|
<tr>
|
|
<td><strong>{{ m.product_name }}</strong></td>
|
|
<td class="text-gray">{{ m.manufacturer or '—' }}</td>
|
|
<td>
|
|
{% if m.hazard_class %}
|
|
<span class="badge" style="background:rgba(230,57,70,0.15);color:var(--danger)">{{ m.hazard_class }}</span>
|
|
{% else %}—{% endif %}
|
|
</td>
|
|
<td><span class="badge badge-open" style="font-size:11px">{{ m.version }}</span></td>
|
|
<td class="text-gray" style="font-size:12px">{{ m.part_name or '—' }}</td>
|
|
<td>
|
|
{% if m.pdf_filename %}
|
|
<a href="/static/uploads/docs/{{ m.pdf_filename }}" target="_blank" class="btn btn-sm btn-primary">📄</a>
|
|
{% else %}—{% endif %}
|
|
</td>
|
|
<td>
|
|
<a href="{{ url_for('msds_edit', mid=m.id) }}" class="btn btn-sm btn-secondary">✏️</a>
|
|
</td>
|
|
</tr>
|
|
{% else %}
|
|
<tr><td colspan="7" class="text-gray" style="text-align:center;padding:30px">
|
|
Sin fichas MSDS. <a href="{{ url_for('msds_new') }}" style="color:var(--cyan)">Agregar primera</a>
|
|
</td></tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|