añadiendo envios

This commit is contained in:
2023-12-14 21:46:36 +01:00
parent 7a27bf56a7
commit d4f92263bf
6 changed files with 181 additions and 17 deletions

View File

@ -144,6 +144,19 @@ return [
'serviciosDefault' => 'Default services',
'envios' => 'Shipments',
'cantidad' => 'Quantity',
'att' => 'Attn.',
'email' => 'Email',
'direccion' => 'Address',
'cp' => 'Zip Code',
'municipio' => 'Town',
'provincia' => 'City',
'ccaa' => 'Region',
'telefono' => 'Phone',
'validation' => [
'decimal' => 'The {field} field must contain a decimal number.',
'integer' => 'The {field} field must contain an integer.',

View File

@ -178,7 +178,19 @@ return [
'insertar' => 'Insertar',
'no_disponible' => 'No disponible',
// Envios
'envios' => 'Envios',
'cantidad' => 'Cantidad',
'att' => 'Att.',
'email' => 'Email',
'direccion' => 'Direccion',
'cp' => 'CP',
'municipio' => 'Municipio',
'provincia' => 'Provincia',
'ccaa' => 'CCAA',
'telefono' => 'Teléfono',
'validation' => [
'decimal' => 'El campo {field} debe contener un número decimal.',
'integer' => 'El campo {field} debe contener un número entero.',

View File

@ -0,0 +1,133 @@
<div class="accordion mt-3" id="accordionDatosLibro">
<div class="card accordion-item active">
<h2 class="accordion-header" id="headingOne">
<button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#accordionDatosLibroTip" aria-expanded="false" aria-controls="accordionDatosLibroTip">
<h4><?= lang("Presupuestos.envios") ?></h4>
</button>
</h2>
<table id="tableOfDireccionesEnvio" class="table dt-responsive dataTable" style="width: 100%;">
<thead>
<tr>
<th><?= lang('Presupuestos.cantidad') ?></th>
<th><?= lang('Presupuestos.peso') ?></th>
<th><?= lang('Presupuestos.att') ?></th>
<th><?= lang('Presupuestos.email') ?></th>
<th><?= lang('Presupuestos.direccion') ?></th>
<th><?= lang('Presupuestos.paisiD') ?></th>
<th><?= lang('Presupuestos.ccaa') ?></th>
<th><?= lang('Presupuestos.provincia') ?></th>
<th><?= lang('Presupuestos.municipio') ?></th>
<th><?= lang('Presupuestos.cp') ?></th>
<th><?= lang('Presupuestos.telefono') ?></th>
<th><?= lang('Presupuestos.precio') ?></th>
<th></th>
<th class="text-nowrap"><?= lang('Basic.global.Action') ?></th>
</tr>
</thead>
<tbody>
</tbody>
</table>
<div id="accordionDatosLibroTip" class="accordion-collapse collapse show" data-bs-parent="#accordionDatosLibro">
<div class="accordion-body">
</div> <!-- //.accordion-body -->
</div> <!-- //.accordion-collapse -->
</div> <!-- //.accordion-item -->
</div> <!-- //.accordion -->
<!------------------------------------------->
<!-- Código JS comportamiento general pag. -->
<!------------------------------------------->
<?= $this->section("additionalInlineJs") ?>
const lastColNr = $('#tableOfDireccionesEnvio').find("tr:first th").length - 1;
const actionBtns = function(data) {
return `
<span class="edit"><a href="javascript:void(0);"><i class="ti ti-pencil ti-sm btn-edit mx-2" data-id="${data.id}"></i></a></span>
<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete mx-2" data-id="${data.id}" data-bs-toggle="modal" data-bs-target="#confirm2delete"></i></a>
<span class="cancel"></span>
`;
};
var tableEnvios = $('#tableOfDireccionesEnvio').DataTable( {
draw:4,
serverSide: true,
processing: true,
autoWidth: true,
responsive: true,
order: [[ 0, "asc" ], [ 1, "asc" ]],
pageLength: 10,
lengthChange: false,
searching: false,
paging: true,
info: false,
dom: '<"mt-4"><"float-end"B><"float-start"l><t><"mt-4 mb-3"p>',
ajax : $.fn.dataTable.pipeline( {
url: '<?= route_to('dataTableOfPresupuestosenvios') ?>',
data: function ( d ) {
d.presupuesto_id = id;
},
method: 'POST',
headers: {'X-Requested-With': 'XMLHttpRequest'},
async: true,
}),
columns: [
{ 'data': 'cantidad' },
{ 'data': 'peso' },
{ 'data': 'att' },
{ 'data': 'email' },
{ 'data': 'direccion' },
{ 'data': 'paisId' },
{ 'data': 'ccaaId' },
{ 'data': 'provinciaId' },
{ 'data': 'municipioId' },
{ 'data': 'cp' },
{ 'data': 'telefono' },
{ 'data': 'precio' },
{ 'data': 'margen' },
{
data: actionBtns,
className: 'row-edit dt-center'
}
],
columnDefs: [
{
orderable: false,
searchable: false,
targets: [lastColNr]
},
{"orderData": [ 0, 1 ], "targets": 0 },
],
language: {
url: "//cdn.datatables.net/plug-ins/1.13.4/i18n/<?= config('Basics')->i18n ?>.json"
},
/*buttons: [ {
className: 'btn btn-primary float-end me-sm-3 me-1',
extend: "createInline",
editor: editor3,
formOptions: {
submitTrigger: -1,
submitHtml: '<a href="javascript:void(0);"><i class="ti ti-device-floppy"></i></a>'
},
action: function ( e, dt, node, config ) {
if(selected_tirada_id == -1){
popErrorAlert("<?= lang('TarifaEncuadernacionLineas.validation.error_seleccion_tiradas') ?>");
}
else{
formOptions= {
submitTrigger: -1,
submitHtml: '<a href="javascript:void(0);"><i class="ti ti-device-floppy"></i></a>'
};
editor3.inlineCreate(config.position, formOptions);
}
},
} ]*/
} );
<?= $this->endSection() ?>

View File

@ -320,8 +320,10 @@ $('#papelFormatoPersonalizado').on("click",function(){
}
});
var ancho_libro = getDimensionLibro().ancho;
var alto_libro = getDimensionLibro().alto;
<?php if(str_contains($formAction,'edit')): ?>
var ancho_libro = getDimensionLibro().ancho;
var alto_libro = getDimensionLibro().alto;
<?php endif; ?>
$('#papelFormatoId').on('select2:select', function (e){
ancho_libro = getDimensionLibro().ancho;

View File

@ -30,32 +30,35 @@
<dd id="margenImpresion" class="col-2 py-1 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Coste servicios</dt>
<dd id="totalServicios" class="col-6 text-end">NaN €</dd>
<dd id="totalServicios" class="col-6 text-end py-1">NaN €</dd>
<dt class="col-6 fw-normal text-end">Margen servicios</dt>
<dd id="margenServicios" class="col-6 text-end">NaN €</dd>
<dd id="margenServicios" class="col-6 text-end py-1">NaN €</dd>
<dt class="col-6 fw-normal text-end">Costes</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Margen</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Descuento</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Precio unidad</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Coste de envío</dt>
<dd class="col-6 text-end">NaN €</dd>
<dd class="col-6 text-end py-1">NaN €</dd>
<dt class="col-6 fw-normal text-end">Margen envío</dt>
<dd class="col-6 text-end py-1">NaN €</dd>
<hr class="mx-n4">
<dt class="col-6 fw-normal text-end">Total Costes</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Total Margen</dt>
<dd class="col-6 text-end">NaN €</dd>
</dl>
<hr class="mx-n4">
<dl class="row mb-0">
<dt class="col-6 fw-normal text-end">Total impresión</dt>
<dt class="col-6 fw-normal text-end">Total</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Descuento</dt>
<dd class="col-6 text-end">NaN €</dd>
<dt class="col-6 text-end">Total presupuesto</dt>
<dd class="col-6 fw-semibold text-end mb-0">NaN €</dd>
<dd class="col-6 fw-semibold text-end">NaN €</dd>
<dt class="col-6 fw-normal text-end">Precio unidad</dt>
<dd class="col-6 text-end mb-0">NaN €</dd>
</dl>
</div>
<div class="d-grid float-end mb-4">

View File

@ -24,6 +24,7 @@
<?= view("themes/backend/vuexy/form/presupuestos/cosidotapablanda/_lineasPresupuestoItems") ?>
<?= view("themes/backend/vuexy/form/presupuestos/cosidotapablanda/_previewItems") ?>
<?= view("themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosServiciosItems") ?>
<?= view("themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosEnvios") ?>
<?= view("themes/backend/vuexy/form/presupuestos/cosidotapablanda/_comentariosItems") ?>
<?= view("themes/backend/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestoItems") ?>
<?php else: ?>