mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
muchos cambios (y no los papeles)
This commit is contained in:
@ -296,7 +296,6 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
$faja = $reqData['faja'] ?? [];
|
||||
$excluirRotativa = $reqData['excluirRotativa'] ?? 0;
|
||||
$excluirRotativa = intval($excluirRotativa);
|
||||
$ivaReducido = intval($reqData['ivaReducido']) ?? 0;
|
||||
|
||||
$direcciones = $reqData['direcciones'] ?? [];
|
||||
|
||||
@ -401,7 +400,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
$coste_direccion = $this->getCosteEnvio(
|
||||
$direccion['id'],
|
||||
$return_data['peso'][$i],
|
||||
!$primer_envio? intval($tirada[$i]) : $direccion['unidades'],
|
||||
!$primer_envio ? intval($tirada[$i]) : $direccion['unidades'],
|
||||
$direccion['entregaPalets'] == 'true' ? 1 : 0
|
||||
)[0];
|
||||
|
||||
@ -654,6 +653,11 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
$isHq = intval($reqData['isHq']) ?? 0;
|
||||
|
||||
$prototipo = intval($reqData['prototipo']) ?? 0;
|
||||
$ferro = intval($reqData['ferro']) ?? 0;
|
||||
$ferroDigital = intval($reqData['ferroDigital']) ?? 0;
|
||||
$marcapaginas = intval($reqData['marcapaginas']) ?? 0;
|
||||
$retractilado = intval($reqData['retractilado']) ?? 0;
|
||||
$retractilado5 = intval($reqData['retractilado5']) ?? 0;
|
||||
|
||||
$interior = $reqData['interior'] ?? [];
|
||||
$cubierta = $reqData['cubierta'] ?? [];
|
||||
@ -857,6 +861,11 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
}
|
||||
|
||||
$datos_presupuesto['prototipo'] = $prototipo;
|
||||
$datos_presupuesto['ferro'] = $ferro;
|
||||
$datos_presupuesto['ferro_digital'] = $ferroDigital;
|
||||
$datos_presupuesto['marcapaginas'] = $marcapaginas;
|
||||
$datos_presupuesto['retractilado'] = $retractilado;
|
||||
$datos_presupuesto['retractilado5'] = $retractilado5;
|
||||
|
||||
$id = $model_presupuesto->insertarPresupuestoCliente(
|
||||
$id,
|
||||
@ -970,6 +979,11 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
|
||||
$data['datosGenerales']['tipo'] = $this->getTipoLibro($presupuesto->tipo_impresion_id ?? null);
|
||||
$data['datosGenerales']['prototipo'] = $presupuesto->prototipo;
|
||||
$data['datosGenerales']['ferro'] = $presupuesto->ferro;
|
||||
$data['datosGenerales']['ferroDigital'] = $presupuesto->ferro_digital;
|
||||
$data['datosGenerales']['marcapaginas'] = $presupuesto->marcapaginas;
|
||||
$data['datosGenerales']['retractilado'] = $presupuesto->retractilado;
|
||||
$data['datosGenerales']['retractilado5'] = $presupuesto->retractilado5;
|
||||
|
||||
$datos_papel = $this->obtenerDatosPapel($presupuesto->id);
|
||||
$data['interior'] = $datos_papel['interior'] ? $datos_papel['interior'] : [];
|
||||
@ -1832,13 +1846,19 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
*/
|
||||
$serviciosAutomaticos = [];
|
||||
$servicios = [];
|
||||
if ($datos_entrada['cubierta']['acabadosCubierta']['retractilado'] === 'true')
|
||||
if ($datos_entrada['servicios']['retractilado']) // acabado
|
||||
array_push($servicios, 3);
|
||||
if ($datos_entrada['servicios']['prototipo'])
|
||||
if ($datos_entrada['servicios']['retractilado5']) // acabado
|
||||
array_push($servicios, 98);
|
||||
if ($datos_entrada['servicios']['prototipo']) // extra
|
||||
array_push($servicios, 9);
|
||||
if ($datos_entrada['servicios']['ferro']) // extra
|
||||
array_push($servicios, 30);
|
||||
/*if ($datos_entrada['servicios']['ferroDigital'])
|
||||
array_push($servicios, 29);*/ // Es gratis
|
||||
foreach ($servicios as $servicio) {
|
||||
|
||||
if (intval($servicio) == 3) {
|
||||
if (intval($servicio) == 3 || intval($servicio) == 98) {
|
||||
// Servicios acabado
|
||||
$resultado = PresupuestoCLienteService::getServiciosAcabados([
|
||||
'tarifa_id' => $servicio,
|
||||
@ -1853,7 +1873,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
$errorModel->insertError(
|
||||
$datos_entrada['id'],
|
||||
auth()->user()->id,
|
||||
'No se puede obtener servicio con id 3',
|
||||
'No se puede obtener servicio con id ' . ((string)$servicio),
|
||||
$input_data
|
||||
);
|
||||
$return_data = [
|
||||
@ -1869,8 +1889,8 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
$totalServicios += floatval($resultado[0]->total);
|
||||
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
|
||||
}
|
||||
} else if (intval($servicio) == 9) {
|
||||
// Prototipo
|
||||
} else if (intval($servicio) == 9 || intval($servicio) == 30 || intval($servicio) == 29) {
|
||||
// Extra
|
||||
$resultado = PresupuestoCLienteService::getServiciosExtra([
|
||||
'tarifa_id' => $servicio,
|
||||
]);
|
||||
@ -1881,7 +1901,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
||||
$errorModel->insertError(
|
||||
$datos_entrada['id'],
|
||||
auth()->user()->id,
|
||||
'No se puede obtener servicio con id 9',
|
||||
'No se puede obtener servicio con id ' . ((string)$servicio),
|
||||
$input_data
|
||||
);
|
||||
$return_data = [
|
||||
|
||||
@ -404,11 +404,13 @@ class PresupuestoModel extends \App\Models\BaseModel
|
||||
'cliente_id' => $data['clienteId'],
|
||||
'tipo_impresion_id' => $data['tipo_impresion_id'],
|
||||
'pais_id' => 1,
|
||||
'retractilado' => in_array("RETR", $data['cubierta']['acabadosCubierta']) ? 1 : 0,
|
||||
'retractilado5' => in_array(5, $data['servicios']) ? 1 : 0,
|
||||
'retractilado' => $data['retractilado'] ? 1 : 0,
|
||||
'retractilado5' => $data['retractilado5'] ? 1 : 0,
|
||||
'guardas' => in_array(62, $data['servicios']) ? 1 : 0,
|
||||
'faja_color' => in_array(16, $data['servicios']) ? 1 : 0,
|
||||
'ferro' => in_array(24, $data['servicios']) ? 1 : 0,
|
||||
'ferro' => $data['ferro'] ? 1 : 0,
|
||||
'ferro_digital' => $data['ferro_digital'] ? 1 : 0,
|
||||
'marcapaginas' => $data['marcapaginas'] ? 1 : 0,
|
||||
'prototipo' => $data['prototipo'] ? 1 : 0,
|
||||
'papel_formato_id' => is_null($papel_formato_id) ? 0 : $papel_formato_id->id,
|
||||
'papel_formato_personalizado' => !$papel_formato_id ? 1 : 0,
|
||||
|
||||
@ -278,14 +278,26 @@
|
||||
language: {
|
||||
url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json"
|
||||
},
|
||||
buttons: [ {
|
||||
className: 'btn btn-primary me-sm-3 me-1',
|
||||
extend: "createInline",
|
||||
editor: editor,
|
||||
formOptions: {
|
||||
submitTrigger: -1,
|
||||
submitHtml: '<a href="javascript:void(0);"><i class="ti ti-device-floppy"></i></a>'
|
||||
}
|
||||
buttons: [
|
||||
{
|
||||
extend: 'collection',
|
||||
text: 'Exportar',
|
||||
buttons:[
|
||||
'copy', 'csv', 'excel', 'print', {
|
||||
extend: 'pdfHtml5',
|
||||
orientation: 'landscape',
|
||||
pageSize: 'A4'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
className: 'btn btn-primary me-sm-3 me-1',
|
||||
extend: "createInline",
|
||||
editor: editor,
|
||||
formOptions: {
|
||||
submitTrigger: -1,
|
||||
submitHtml: '<a href="javascript:void(0);"><i class="ti ti-device-floppy"></i></a>'
|
||||
}
|
||||
} ]
|
||||
} );
|
||||
|
||||
|
||||
@ -684,7 +684,7 @@ async function calcularPresupuesto() {
|
||||
|
||||
datos = Object.assign(datos, window.token_ajax)
|
||||
|
||||
$('#divTiradasPrecio').empty();
|
||||
$('.divTiradasPrecio').empty();
|
||||
$('#loader').show();
|
||||
|
||||
$.ajax({
|
||||
@ -741,7 +741,7 @@ async function calcularPresupuesto() {
|
||||
|
||||
$('#loader').hide();
|
||||
|
||||
$('#divTiradasPrecio').empty();
|
||||
$('.divTiradasPrecio').empty();
|
||||
|
||||
if(!error){
|
||||
|
||||
@ -768,7 +768,7 @@ async function calcularPresupuesto() {
|
||||
html += '</a>';
|
||||
html += '</div>';
|
||||
|
||||
$('#divTiradasPrecio').append(html);
|
||||
$('.divTiradasPrecio').append(html);
|
||||
}
|
||||
}
|
||||
|
||||
@ -783,7 +783,7 @@ async function calcularPresupuesto() {
|
||||
},
|
||||
error: function (error) {
|
||||
$('#loader').hide();
|
||||
$('#divTiradasPrecio').empty();
|
||||
$('.divTiradasPrecio').empty();
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -49,13 +49,12 @@
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-sm-5 mb-3 d-flex flex-column align-items-center <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor'))? " d-none" : "" ?>" >
|
||||
<label <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor'))? " hidden" : "" ?>
|
||||
id="label_clienteId" for="clienteId" class="form-label">
|
||||
<div
|
||||
class="col-sm-5 mb-3 d-flex flex-column align-items-center <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')) ? " d-none" : "" ?>">
|
||||
<label <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')) ? " hidden" : "" ?> id="label_clienteId" for="clienteId" class="form-label">
|
||||
Cliente*
|
||||
</label>
|
||||
<select <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor'))? " hidden" : "" ?>
|
||||
id="clienteId" name="cliente_id" class="form-control select2bs2 calcular-presupuesto"
|
||||
<select <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')) ? " hidden" : "" ?> id="clienteId" name="cliente_id" class="form-control select2bs2 calcular-presupuesto"
|
||||
style="width: 100%;">
|
||||
<?php if (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')): ?>
|
||||
<option value="<?= $clienteId ?>" selected>cliente</option>
|
||||
@ -64,13 +63,12 @@
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-sm-5 mb-3 d-flex flex-column align-items-center <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor'))? " d-none" : "" ?>" >
|
||||
<div
|
||||
class="col-sm-5 mb-3 d-flex flex-column align-items-center <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')) ? " d-none" : "" ?>">
|
||||
<div class="form-check form-switch mb-2">
|
||||
<input <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor'))? " hidden" : "" ?>
|
||||
class="calcular-presupuesto form-check-input" type="checkbox" id="excluirRotativa"
|
||||
<input <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')) ? " hidden" : "" ?> class="calcular-presupuesto form-check-input" type="checkbox" id="excluirRotativa"
|
||||
name="excluir_rotativa" value="1">
|
||||
<label <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor'))? " hidden" : "" ?>
|
||||
class="form-check-label" for="excluirRotativa">Excluir rotativa</label>
|
||||
<label <?= (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente-editor')) ? " hidden" : "" ?> class="form-check-label" for="excluirRotativa">Excluir rotativa</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -271,10 +269,36 @@
|
||||
</div>
|
||||
|
||||
<div class="row col-sm-9 mb-3 d-flex flex-column align-items-left">
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="prototipo" name="prototipo"
|
||||
value="1">
|
||||
<label class="form-check-label" for="prototipo">Prototipo</label>
|
||||
<div class="row" >
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="prototipo" name="prototipo"
|
||||
value="1">
|
||||
<label class="form-check-label" for="prototipo">Prototipo</label>
|
||||
</div>
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="ferro" name="ferro" value="1">
|
||||
<label class="form-check-label" for="ferro">Ferro</label>
|
||||
</div>
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="ferroDigital"
|
||||
name="ferro_digital" value="1">
|
||||
<label class="form-check-label" for="ferro">Ferro digital</label>
|
||||
</div>
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="marcapaginas"
|
||||
name="marcapaginas" value="1">
|
||||
<label class="form-check-label" for="ferro">Marcapáginas</label>
|
||||
</div>
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="retractilado"
|
||||
name="retractilado" value="1">
|
||||
<label class="form-check-label" for="ferro">Retractilado</label>
|
||||
</div>
|
||||
<div class="col-sm-3 form-check form-switch mb-2">
|
||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="retractilado5"
|
||||
name="retractilado5" value="1">
|
||||
<label class="form-check-label" for="ferro">Retractilado de 5</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -45,160 +45,10 @@
|
||||
</div>
|
||||
<div class="offcanvas-body">
|
||||
|
||||
<div class="bs-stepper-header">
|
||||
|
||||
<div <?= ($state == 2) ? 'hidden' : '' ?> class="step active titulos-menu" data-target="#datos-generales">
|
||||
<button type="button" class="step-trigger" aria-selected="false" disabled="disabled">
|
||||
<span class="bs-stepper-circle"><i class="ti ti-info-circle ti-sm"></i></span>
|
||||
<span class="bs-stepper-label">
|
||||
<span class="bs-stepper-title">Datos generales</span>
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div <?= ($state == 2) ? 'hidden' : '' ?> class="step titulos-menu" data-target="#interior-libro">
|
||||
<button type="button" class="step-trigger" aria-selected="false" disabled="disabled">
|
||||
<span class="bs-stepper-circle"><i class="ti ti-book ti-sm"></i></span>
|
||||
<span class="bs-stepper-label">
|
||||
<span class="bs-stepper-title">Interior</span>
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div <?= ($state == 2) ? 'hidden' : '' ?> class="step titulos-menu" data-target="#cubierta-libro">
|
||||
<button type="button" class="step-trigger" aria-selected="false" disabled="disabled">
|
||||
<span class="bs-stepper-circle"><i class="ti ti-books ti-sm"></i></span>
|
||||
<span class="bs-stepper-label">
|
||||
<span class="bs-stepper-title">Cubierta</span>
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div <?= ($state == 2) ? 'hidden' : '' ?> class="step titulos-menu" data-target="#direcciones-libro">
|
||||
<button type="button" class="step-trigger" aria-selected="false" disabled="disabled">
|
||||
<span class="bs-stepper-circle"><i class="ti ti-map-pins ti-sm"></i></span>
|
||||
<span class="bs-stepper-label">
|
||||
<span class="bs-stepper-title">Direcciones</span>
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div id="menu_resumen_button" class="step titulos-menu" data-target="#resumen-libro">
|
||||
<button type="button" class="step-trigger" aria-selected="false" disabled="disabled">
|
||||
<span class="bs-stepper-circle"><i class="ti ti-checkbox ti-sm"></i></span>
|
||||
<span class="bs-stepper-label">
|
||||
<span class="bs-stepper-title">Resumen del presupuesto</span>
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="line"></div>
|
||||
|
||||
<div id='resumenLateral' class="container align-items-center">
|
||||
|
||||
|
||||
<div class="rl-datos-generales rl-item d-none">
|
||||
<div class="row">Libro</div>
|
||||
<div class="row">
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_tipo" class="list-group-item list-group-timeline-primary texto-resumen-lateral">Rustica
|
||||
Fresado</li>
|
||||
<li id="rl_tipo_cubierta" class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Tapa
|
||||
dura</li>
|
||||
<li id="rl_tamanio" class="list-group-item list-group-timeline-primary texto-resumen-lateral">170.0
|
||||
x
|
||||
240.0</li>
|
||||
<li id="rl_tiradas" class="list-group-item list-group-timeline-primary texto-resumen-lateral">10,
|
||||
50,
|
||||
100, 200</li>
|
||||
<li id="rl_paginas" class="list-group-item list-group-timeline-primary texto-resumen-lateral">340
|
||||
páginas</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rl-interior rl-item d-none">
|
||||
<div class="row">Interior</div>
|
||||
<div class="row">
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_tipo_interior" class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Blanco y
|
||||
negro estándar</li>
|
||||
<li id="rl_papel_interior"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Offset
|
||||
blanco 90 gr.</li>
|
||||
<li id="rl_papel_interior_color"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">Offset
|
||||
blanco 90 gr.</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rl-cubierta rl-item d-none">
|
||||
<div class="row">Cubierta</div>
|
||||
<div class="row">
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_papel_cubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Estucado
|
||||
Mate
|
||||
300 gr.</li>
|
||||
<li id="rl_caras_cubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Impresa
|
||||
1
|
||||
cara</li>
|
||||
<li id="rl_acabado_cubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Plastificado brillo</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rl-sobrecubierta rl-item d-none">
|
||||
<div class="row">Sobrecubierta</div>
|
||||
<div class="row">
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_no_sobrecubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
No</li>
|
||||
<li id="rl_papel_sobrecubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">Estucado mate 170 gr
|
||||
</li>
|
||||
<li id="rl_tamanio_sobrecubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
60mm</li>
|
||||
<li id="rl_acabado_sobrecubierta"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral">
|
||||
Plastificado brillo</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rl-servicios-extra rl-item d-none">
|
||||
<div class="row">Servicios extra</div>
|
||||
<div class="row">
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_prototipo"
|
||||
class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Prototipo</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id='divTiradasPrecio'></div>
|
||||
|
||||
|
||||
</div> <!--//.bs-stepper-header -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="bs-stepper-header d-none d-md-flex">
|
||||
<div class="bs-stepper-header col-3">
|
||||
|
||||
<div <?= ($state == 2) ? 'hidden' : '' ?> class="step active titulos-menu" data-target="#datos-generales">
|
||||
<button type="button" class="step-trigger" aria-selected="false" disabled="disabled">
|
||||
@ -332,13 +182,33 @@
|
||||
<li id="rl_prototipo" class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Prototipo</li>
|
||||
</ul>
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_ferro" class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Ferro</li>
|
||||
</ul>
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_ferroDigital" class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Ferro digital</li>
|
||||
</ul>
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_marcapaginas" class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Marcapáginas</li>
|
||||
</ul>
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_retractilado" class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Retractilado</li>
|
||||
</ul>
|
||||
<ul class="list-group list-group-timeline">
|
||||
<li id="rl_retractilado5" class="list-group-item list-group-timeline-primary texto-resumen-lateral d-none">
|
||||
Retractilado de 5</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id='divTiradasPrecio'></div>
|
||||
<div class='divTiradasPrecio'></div>
|
||||
|
||||
</div> <!--//.bs-stepper-header -->
|
||||
|
||||
|
||||
@ -777,7 +777,7 @@ function convertirTiempo(horas){
|
||||
// se convierte a formato hh:mm:ss
|
||||
const h = Math.floor(seconds / 3600);
|
||||
const minutos = Math.floor((seconds % 3600) / 60);
|
||||
const segundos = seconds % 60;
|
||||
const segundos = round(seconds % 60, 0);
|
||||
return h + ':' + minutos + ':' + segundos;
|
||||
}
|
||||
else{
|
||||
|
||||
@ -1,3 +0,0 @@
|
||||
[ZoneTransfer]
|
||||
ZoneId=3
|
||||
ReferrerUrl=C:\Users\jjime\Downloads\safekat-dev-presu_cliente_v2.zip
|
||||
@ -1,3 +0,0 @@
|
||||
[ZoneTransfer]
|
||||
ZoneId=3
|
||||
ReferrerUrl=C:\Users\jjime\Downloads\safekat-dev-presu_cliente_v2.zip
|
||||
@ -55,6 +55,11 @@ class DatosGenerales {
|
||||
this.ivaReducido = this.domItem.find("#ivaReducido");
|
||||
this.excluirRotativa = this.domItem.find("#excluirRotativa");
|
||||
this.prototipo = this.domItem.find("#prototipo");
|
||||
this.ferro = this.domItem.find("#ferro");
|
||||
this.ferroDigital = this.domItem.find("#ferroDigital");
|
||||
this.marcapaginas = this.domItem.find("#marcapaginas");
|
||||
this.retractilado = this.domItem.find("#retractilado");
|
||||
this.retractilado5 = this.domItem.find("#retractilado5");
|
||||
|
||||
this.rl_datos_generales = $(".rl-datos-generales");
|
||||
this.rl_tipo = $("#rl_tipo");
|
||||
@ -65,6 +70,11 @@ class DatosGenerales {
|
||||
|
||||
this.rl_servicios_extra = $(".rl-servicios-extra");
|
||||
this.rl_prototipo = $("#rl_prototipo");
|
||||
this.rl_ferro = $("#rl_ferro");
|
||||
this.rl_ferroDigital = $("#rl_ferroDigital");
|
||||
this.rl_marcapaginas = $("#rl_marcapaginas");
|
||||
this.rl_retractilado = $("#rl_retractilado");
|
||||
this.rl_retractilado5 = $("#rl_retractilado5");
|
||||
|
||||
this.initValidation();
|
||||
}
|
||||
@ -93,6 +103,9 @@ class DatosGenerales {
|
||||
this.altoPersonalizado.on("change", this.#checkValue.bind(this));
|
||||
|
||||
this.titulo.on('change', () => { $(".titulo").html(this.titulo.val()); });
|
||||
|
||||
this.retractilado.on('change', this.#eventRetractilado.bind(this));
|
||||
this.retractilado5.on('change', this.#eventRetractilado.bind(this));
|
||||
}
|
||||
|
||||
initValidation() {
|
||||
@ -466,6 +479,47 @@ class DatosGenerales {
|
||||
else{
|
||||
this.rl_prototipo.addClass('d-none');
|
||||
}
|
||||
|
||||
if(this.ferro.is(':checked')){
|
||||
this.rl_ferro.removeClass("d-none");
|
||||
menu_off = false;
|
||||
}
|
||||
else{
|
||||
this.rl_ferro.addClass('d-none');
|
||||
}
|
||||
|
||||
if(this.ferroDigital.is(':checked')){
|
||||
this.rl_ferroDigital.removeClass("d-none");
|
||||
menu_off = false;
|
||||
}
|
||||
else{
|
||||
this.rl_ferroDigital.addClass('d-none');
|
||||
}
|
||||
|
||||
if(this.marcapaginas.is(':checked')){
|
||||
this.rl_marcapaginas.removeClass("d-none");
|
||||
menu_off = false;
|
||||
}
|
||||
else{
|
||||
this.rl_marcapaginas.addClass('d-none');
|
||||
}
|
||||
|
||||
if(this.retractilado.is(':checked')){
|
||||
this.rl_retractilado.removeClass("d-none");
|
||||
menu_off = false;
|
||||
}
|
||||
else{
|
||||
this.rl_retractilado.addClass('d-none');
|
||||
}
|
||||
|
||||
if(this.retractilado5.is(':checked')){
|
||||
this.rl_retractilado5.removeClass("d-none");
|
||||
menu_off = false;
|
||||
}
|
||||
else{
|
||||
this.rl_retractilado5.addClass('d-none');
|
||||
}
|
||||
|
||||
if(!menu_off){
|
||||
this.rl_servicios_extra.removeClass('d-none');
|
||||
}
|
||||
@ -534,6 +588,12 @@ class DatosGenerales {
|
||||
}
|
||||
|
||||
this.prototipo.prop('checked', datos.prototipo);
|
||||
this.ferro.prop('checked', datos.ferro);
|
||||
this.ferroDigital.prop('checked', datos.ferroDigital);
|
||||
this.marcapaginas.prop('checked', datos.marcapaginas);
|
||||
this.retractilado.prop('checked', datos.retractilado);
|
||||
this.retractilado5.prop('checked', datos.retractilado5);
|
||||
|
||||
this.ivaReducido.val(datos.ivaReducido ? 1 : 0).trigger('change');
|
||||
}
|
||||
|
||||
@ -612,6 +672,20 @@ class DatosGenerales {
|
||||
}
|
||||
}
|
||||
|
||||
#eventRetractilado(event) {
|
||||
let target = event.target;
|
||||
if (target.id == 'retractilado') {
|
||||
if (this.retractilado5.is(':checked')) {
|
||||
this.retractilado5.prop('checked', false);
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (this.retractilado.is(':checked')) {
|
||||
this.retractilado.prop('checked', false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#handleTipolibro(event) {
|
||||
// Accede al ID del elemento que disparó el evento
|
||||
|
||||
@ -11,6 +11,38 @@ import tarjetaTiradasPrecio from './tarjetaTiradasPrecio.js';
|
||||
class PresupuestoCliente {
|
||||
|
||||
constructor() {
|
||||
/*
|
||||
// Seleccionar el header y el contenedor del offcanvas
|
||||
var stepperHeader = document.querySelector('#sharedStepper');
|
||||
var offcanvasBody = document.querySelector('#menu-offcanvas .offcanvas-body');
|
||||
|
||||
// Función para verificar el tamaño de la pantalla y mover el contenido
|
||||
function adjustStepperLocation() {
|
||||
if (window.innerWidth < 768) {
|
||||
// Si es un dispositivo móvil o tablet, mover el stepper al offcanvas
|
||||
if (offcanvasBody && stepperHeader) {
|
||||
// Verificar si el stepper ya está en el offcanvas
|
||||
if (!offcanvasBody.contains(stepperHeader)) {
|
||||
offcanvasBody.appendChild(stepperHeader); // Mover al offcanvas
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// Si es un dispositivo grande, dejar el stepper en su lugar original
|
||||
var originalContainer = document.querySelector('.bs-stepper-header').parentNode;
|
||||
if (originalContainer && !originalContainer.contains(stepperHeader)) {
|
||||
originalContainer.appendChild(stepperHeader); // Mover de vuelta al contenedor original
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Llamar a la función para ajustar la ubicación al cargar
|
||||
adjustStepperLocation();
|
||||
|
||||
// También ejecutar la función cuando cambie el tamaño de la ventana
|
||||
window.addEventListener('resize', function () {
|
||||
adjustStepperLocation();
|
||||
});
|
||||
*/
|
||||
this.clientePresupuestoWizard = document.querySelector('#wizard-presupuesto-cliente');
|
||||
|
||||
this.validationStepper = new Stepper(this.clientePresupuestoWizard, {
|
||||
@ -37,7 +69,7 @@ class PresupuestoCliente {
|
||||
this.direcciones = new Direcciones($("#direcciones-libro"), this.clientePresupuestoWizard, this.validationStepper);
|
||||
this.resumen = new Resumen($("#resumen-libro"), this.datosGenerales, this.disenioInterior, this.disenioCubierta, this.direcciones);
|
||||
|
||||
this.divTiradasPrecios = $("#divTiradasPrecio");
|
||||
this.divTiradasPrecios = $(".divTiradasPrecio");
|
||||
|
||||
this.titulosMenu = $(".titulos-menu");
|
||||
|
||||
@ -50,7 +82,7 @@ class PresupuestoCliente {
|
||||
this.actualizarTiradasEnvio = false;
|
||||
this.calcularPresupuesto = false;
|
||||
|
||||
if(!window.location.href.includes("edit")) {
|
||||
if (!window.location.href.includes("edit")) {
|
||||
this.#processResumenLateral();
|
||||
}
|
||||
}
|
||||
@ -167,7 +199,7 @@ class PresupuestoCliente {
|
||||
this.actualizarTiradasEnvio = false;
|
||||
|
||||
if (!this.direcciones.calcularPresupuesto) {
|
||||
|
||||
|
||||
$('#loader').modal('hide');
|
||||
return;
|
||||
}
|
||||
@ -226,9 +258,9 @@ class PresupuestoCliente {
|
||||
else {
|
||||
this.#goToForm(nextElement);
|
||||
}
|
||||
if(!nextElement.includes('resumen-libro'))
|
||||
if (!nextElement.includes('resumen-libro'))
|
||||
this.#processResumenLateral();
|
||||
else{
|
||||
else {
|
||||
$(".rl-item").addClass('d-none');
|
||||
}
|
||||
}
|
||||
@ -259,7 +291,6 @@ class PresupuestoCliente {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
$('html, body').animate({ scrollTop: 0 }, 'slow');
|
||||
}
|
||||
|
||||
|
||||
@ -380,7 +411,7 @@ class PresupuestoCliente {
|
||||
}
|
||||
}
|
||||
|
||||
#printPresupuesto(){
|
||||
#printPresupuesto() {
|
||||
|
||||
window.open('/printpresupuestos/generar/' + window.location.href.split("/").pop(), '_blank');
|
||||
}
|
||||
@ -392,7 +423,7 @@ class PresupuestoCliente {
|
||||
total_unidades += parseInt(element.tirada.val());
|
||||
});
|
||||
|
||||
if(total_unidades != parseInt(this.direcciones.getSelectedTirada())){
|
||||
if (total_unidades != parseInt(this.direcciones.getSelectedTirada())) {
|
||||
popErrorAlert("No se puede confirmar el presupuesto. La suma de las unidades enviadas no coincide con la tirada seleccionada.");
|
||||
return;
|
||||
}
|
||||
@ -500,7 +531,7 @@ class PresupuestoCliente {
|
||||
response.precio_u[i]
|
||||
);
|
||||
|
||||
if (this.actualizarTiradasEnvio){
|
||||
if (this.actualizarTiradasEnvio) {
|
||||
this.direcciones.insertTirada(tiradas[i]);
|
||||
}
|
||||
|
||||
@ -595,7 +626,13 @@ class PresupuestoCliente {
|
||||
paginasCuadernillo: this.datosGenerales.paginasCuadernillo.val(),
|
||||
|
||||
tipo: this.datosGenerales.tiposLibro.filter('.selected').attr('id'),
|
||||
|
||||
prototipo: this.datosGenerales.prototipo.is(':checked') ? 1 : 0,
|
||||
ferro: this.datosGenerales.ferro.is(':checked') ? 1 : 0,
|
||||
ferroDigital: this.datosGenerales.ferroDigital.is(':checked') ? 1 : 0,
|
||||
marcapaginas: this.datosGenerales.marcapaginas.is(':checked') ? 1 : 0,
|
||||
retractilado: this.datosGenerales.retractilado.is(':checked') ? 1 : 0,
|
||||
retractilado5: this.datosGenerales.retractilado5.is(':checked') ? 1 : 0,
|
||||
|
||||
isColor: this.datosGenerales.getIsColor() ? 1 : 0,
|
||||
isHq: this.disenioInterior.getIsHq() ? 1 : 0,
|
||||
@ -623,6 +660,11 @@ class PresupuestoCliente {
|
||||
ivaReducido: this.datosGenerales.ivaReducido.find('option:selected').val(),
|
||||
servicios: {
|
||||
'prototipo': this.datosGenerales.prototipo.is(':checked') ? 1 : 0,
|
||||
'ferro': this.datosGenerales.ferro.is(':checked') ? 1 : 0,
|
||||
'ferroDigital': this.datosGenerales.ferroDigital.is(':checked') ? 1 : 0,
|
||||
'marcapaginas': this.datosGenerales.marcapaginas.is(':checked') ? 1 : 0,
|
||||
'retractilado': this.datosGenerales.retractilado.is(':checked') ? 1 : 0,
|
||||
'retractilado5': this.datosGenerales.retractilado5.is(':checked') ? 1 : 0,
|
||||
},
|
||||
};
|
||||
let lomoRedondo = 0;
|
||||
@ -766,9 +808,40 @@ function initialize(translations) {
|
||||
presupuestoCliente.init();
|
||||
}
|
||||
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
|
||||
function moveStepperHeader() {
|
||||
if ($(window).width() < 768) { // Dispositivos pequeños (menos de 768px)
|
||||
if (!$('.bs-stepper-header').parent().hasClass('offcanvas-body')) {
|
||||
$('.bs-stepper-header').appendTo('.offcanvas-body');
|
||||
}
|
||||
} else { // Dispositivos medianos y grandes (768px o más)
|
||||
if ($('.bs-stepper-header').parent().hasClass('offcanvas-body')) {
|
||||
$('.bs-stepper-header').insertBefore('.offcanvas-body');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Ejecutar la función al cargar la página
|
||||
moveStepperHeader();
|
||||
|
||||
// Ejecutar la función al cambiar el tamaño de la ventana
|
||||
window.addEventListener('resize', function () {
|
||||
moveStepperHeader();
|
||||
});
|
||||
|
||||
function moveStepperHeader() {
|
||||
if ($(window).width() < 768) { // Dispositivos pequeños (menos de 768px)
|
||||
if (!$('.bs-stepper-header').parent().hasClass('offcanvas-body')) {
|
||||
$('.bs-stepper-header').appendTo('.offcanvas-body');
|
||||
}
|
||||
} else { // Dispositivos medianos y grandes (768px o más)
|
||||
if ($('.bs-stepper-header').parent().hasClass('offcanvas-body')) {
|
||||
$('.bs-stepper-header').insertAfter('#menu-offcanvas');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const locale = document.querySelector('meta[name="locale"]').getAttribute('content');
|
||||
|
||||
new Ajax('/translate/getTranslation', { locale: locale, translationFile: 'Presupuestos' }, {},
|
||||
@ -780,3 +853,4 @@ document.addEventListener('DOMContentLoaded', function () {
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user