You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
135 lines
6.9 KiB
135 lines
6.9 KiB
{% extends 'base.html' %}
|
|
|
|
{% block content %}
|
|
<div class="container mt-5">
|
|
<div class="row justify-content-center">
|
|
<div class="col-md-8">
|
|
<div class="card shadow-lg rounded-4">
|
|
<div class="card-header bg-info text-white text-center">
|
|
<h3 class="mb-0">Registrar Nuevo Movimiento</h3>
|
|
</div>
|
|
<div class="card-body p-4">
|
|
<form method="POST">
|
|
{% csrf_token %}
|
|
<input type="hidden" name="cuentas" value="{{ cuenta.id }}"> <!-- Captura automática -->
|
|
|
|
<!-- Errores globales -->
|
|
{% if form.errors %}
|
|
<div class="alert alert-danger">
|
|
<ul>
|
|
{% for field in form %}
|
|
{% for error in field.errors %}
|
|
<li>{{ error }}</li>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- Cuenta (solo lectura) -->
|
|
<div class="mb-3">
|
|
<label class="form-label fw-semibold">Cuenta</label>
|
|
<input type="text" class="form-control" value="{{ cuenta.cuenta }} (Saldo: {{ cuenta.saldo }})" disabled>
|
|
</div>
|
|
|
|
<!-- Campos del formulario -->
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="id_tipo_movimiento" class="form-label fw-semibold">Tipo de Movimiento</label>
|
|
{{ form.tipo_movimiento }}
|
|
{% if form.tipo_movimiento.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.tipo_movimiento.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="id_saldo" class="form-label fw-semibold">Monto</label>
|
|
{{ form.saldo }}
|
|
{% if form.saldo.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.saldo.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="id_observacion" class="form-label fw-semibold">Observación</label>
|
|
{{ form.observacion }}
|
|
{% if form.observacion.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.observacion.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="id_n_factura" class="form-label fw-semibold"># de Factura</label>
|
|
{{ form.n_factura }}
|
|
{% if form.n_factura.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.n_factura.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="id_fecha_factura" class="form-label fw-semibold">Fecha de Factura</label>
|
|
{{ form.fecha_factura }}
|
|
{% if form.fecha_factura.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.fecha_factura.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="proveedor" class="form-label fw-semibold">Proveedor</label>
|
|
{{ form.proveedor }}
|
|
{% if form.proveedor.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.proveedor.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="id_responsable_cuenta" class="form-label fw-semibold">Responsable</label>
|
|
{{ form.responsable_cuenta }}
|
|
{% if form.responsable_cuenta.errors %}
|
|
<div class="alert alert-danger mt-2">
|
|
{% for error in form.responsable_cuenta.errors %}
|
|
<p>{{ error }}</p>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Botones -->
|
|
<div class="d-flex justify-content-end mt-4 gap-2">
|
|
<a href="{% url 'lista_movimientos' cuenta.id %}" class="btn btn-secondary">Cancelar</a>
|
|
<button type="submit" class="btn btn-success">Guardar</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
{% endblock %} |