{% extends "base.html.twig" %}
{% block headerStyles %}
{{ parent() }}
<link href="{{ asset('assets/plugins/datetimepicker/css/classic.css')}}" rel="stylesheet" />
<link href="{{ asset('assets/plugins/datetimepicker/css/classic.time.css') }}" rel="stylesheet" />
<link href="{{ asset('assets/plugins/datetimepicker/css/classic.date.css') }}" rel="stylesheet" />
{% endblock %}
{% block content %}
<div class="page-content">
<div class="page-breadcrumb d-none d-sm-flex align-items-center mb-3">
<div class="breadcrumb-title pe-3">Cerrar Caja</div>
<form action="{{ path("tpv_cierre_caja") }}" method="GET" class="ms-auto" id="fecha_form">
<div class=" d-sm-flex align-items-center ms-auto">
<div class="form-group pe-3">
<input type="text" name="fecha" id="fecha" value="{{ fecha }}" class="form-control" />
</div>
</div>
</form>
<div class="ms-auto">
<a href="{{ path('tpv_ventas_dia') }}?dia={{ fecha }}" class="btn btn-primary" ><i class="bx bx-file"></i> Ver ventas del día por productos</a>
</div>
</div>
<div class="row row-cols-1 row-cols-md-2 row-cols-xl-5">
<div class="col">
<div class="card radius-10 border-start border-0 border-3 border-info">
<div class="card-body">
<div class="d-flex align-items-center">
<div>
<p class="mb-0 text-secondary">Total Venta</p>
<h4 class="my-1 text-info">{{ (total_venta_real ) |number_format(2,",",".") }}</h4>
<!--small>Venta real: {{ total_ventas |number_format(2,",",".") }}</small-->
</div>
<div class="widgets-icons-2 rounded-circle bg-gradient-scooter text-white ms-auto"><i class='bx bxs-cart'></i>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="card radius-10 border-start border-0 border-3 border-danger">
<div class="card-body">
<div class="d-flex align-items-center">
<div>
<p class="mb-0 text-secondary">Ticket medio</p>
<h4 class="my-1 text-danger">{{ ticket_medio |number_format(2,",",".") }}</h4>
</div>
<div class="widgets-icons-2 rounded-circle bg-gradient-bloody text-white ms-auto"><i class='bx bx-line-chart'></i>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="card radius-10 border-start border-0 border-3 border-success">
<div class="card-body">
<div class="d-flex align-items-center">
<div>
<p class="mb-0 text-secondary">Total en efectivo</p>
<h4 class="my-1 text-success">{{ efectivo |number_format(2,",",".") }}</h4>
</div>
<div class="widgets-icons-2 rounded-circle bg-gradient-ohhappiness text-white ms-auto"><i class='bx bxs-coin' ></i>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="card radius-10 border-start border-0 border-3 border-warning">
<div class="card-body">
<div class="d-flex align-items-center">
<div>
<p class="mb-0 text-secondary">Total en tarjeta</p>
<h4 class="my-1 text-warning">{{ tarjeta |number_format(2,",",".") }}</h4>
</div>
<div class="widgets-icons-2 rounded-circle bg-gradient-blooker text-white ms-auto"><i class='bx bxs-credit-card'></i>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="card radius-10 border-start border-0 border-3 border-danger">
<div class="card-body">
<div class="d-flex align-items-center">
<div>
<p class="mb-0 text-secondary">Total Transferencia</p>
<h4 class="my-1 text-danger">{{ transferencia |number_format(2,",",".") }}</h4>
</div>
<div class="widgets-icons-2 rounded-circle bg-gradient-bloody text-white ms-auto"><i class='bx bx-transfer-alt'></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="card">
<div class="card-body">
<table class="table mb-0">
<thead>
<tr>
<th scope="col" class="cabecera_filtrada" data-filter="id" style="width:100px">ID</th>
<th scope="col" class="cabecera_filtrada" data-filter="date">Fecha</th>
<th scope="col">Cliente</th>
<th scope="col">Vendido por</th>
<th scope="col" class="cabecera_filtrada" data-filter="subtotal">Subtotal</th>
<th scope="col" class="cabecera_filtrada" data-filter="ivaValue">Iva</th>
<th scope="col" class="cabecera_filtrada" data-filter="total">Total</th>
<th scope="col" class="cabecera_filtrada" data-filter="total">Pagado</th>
<th scope="col">Estado</th>
<th scope="col">Detalles</th>
</tr>
</thead>
<tbody>
{% for venta in ventas %}
<tr>
<th scope="row">{{ venta.getId() }}</th>
<td>{{ venta.getDate() | date ("d/m/Y") }}</td>
<td>{{ venta.getClientId() | getClienteName() }}</td>
<td>{{ venta.getUserId() | getUserName() }}</td>
<td>{{ venta.getSubtotal() | number_format(2,",",".") }}</td>
<td>{{ venta.getIvaValue() | number_format(2,",",".") }}</td>
<td>{{ venta.getTotal() | number_format(2,",",".") }}</td>
<td>{{ venta.getPayed() | number_format(2,",",".") }}</td>
<td>{{ (venta.getStatus() | getStatusLabel()) | raw }}</td>
<td>
<button onclick="viewTicket({{venta.getId()}})" class="btn btn-outline-primary" ><i class="bx bx-file"></i></button>
<button onclick="printTicket({{venta.getId()}})" class="btn btn-outline-primary" ><i class="bx bx-printer"></i></button>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="row">
<div class="card">
<div class="card-body">
<form action="" method="post">
<div class="row">
<input type="hidden" name="fecha_cierre" value="{{ fecha }}"/>
<div class="col-md-3">
<h3>Total caja: {{ (total_venta_real ) |number_format(2,",",".") }} </h3>
</div>
<div class="col-md-3">
<input type="number" step="any" placeholder="Cantidad en caja" name="retirada" id="retirada" class="form-control"/>
</div>
<div class="col-md-3">
<input type="number" step="any" placeholder="Descuadre" name="descuadre" id="descuadre" class="form-control"/>
</div>
<div class="col-md-3">
<button type="submit" class="btn btn-primary">Cerrar caja</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
{% endblock %}
{% block footerScripts %}
<script src="{{ asset('assets/plugins/datetimepicker/js/picker.js')}}"></script>
<script src="{{ asset('assets/plugins/datetimepicker/js/picker.time.js')}}"></script>
<script src="{{ asset('assets/plugins/datetimepicker/js/picker.date.js')}}"></script>
<script src="{{ asset('assets/plugins/bootstrap-material-datetimepicker/js/moment.min.js')}}"></script>
<script src="{{ asset('assets/plugins/bootstrap-material-datetimepicker/js/bootstrap-material-datetimepicker.min.js')}}"></script>
{{ parent() }}
<script>
$('#fecha').pickadate({
monthsFull: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Setiembre', 'Octubre', 'Noviembre', 'Diciembre'],
monthsShort: ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Set', 'Oct', 'Nov', 'Dic'],
weekdaysFull: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'],
weekdaysShort: ['Dom', 'Lun', 'Mar', 'Mie', 'Jue', 'Vie', 'Sab'],
today: 'Hoy',
clear: 'Limpiar',
close: 'Cerrar',
format: 'dd-mm-yyyy',
firstDay:1,
selectMonths: true,
selectYears: true,
});
$("#fecha").on("change",function(){
$("#fecha_form").submit();
});
$("#retirada").on("change",function(){
var caja = $(this).val();
$("#descuadre").val({{efectivo}} - (caja - {{caja_open.getTotalApertura()}}));
});
function viewTicket(id){
$.ajax({
url:'{{path("printTicket")}}',
type:'POST',
async:false,
data: {id:id },
success:function(html){
var mywindow = window.open('', 'PRINT', 'height=400,width=600');
mywindow.document.write(html);
mywindow.document.close();
mywindow.focus();
//mywindow.print();
//mywindow.close();
}
});
}
function printTicket(id){
$.ajax({
url:'{{path("printTicket")}}',
type:'POST',
async:false,
data: {id:id },
success:function(html){
var mywindow = window.open('', 'PRINT', 'height=400,width=600');
mywindow.document.write(html);
mywindow.document.close();
mywindow.focus();
mywindow.print();
//mywindow.close();
}
});
}
</script>
{% endblock %}