trabajando en el form del presupuesto

This commit is contained in:
Jaime Jimenez
2023-09-18 07:55:44 +02:00
parent 8a207b246b
commit 2eaec6604d
11 changed files with 561 additions and 66 deletions

View File

@ -1,31 +0,0 @@
<?php
namespace App\Controllers;
use App\Controllers\BaseController;
class Js_loader extends BaseController
{
function __construct()
{
}
function index()
{
echo "ok";
}
function comparador_js()
{
$this->response->setHeader('Content-Type', 'text/javascript');
return view('themes/backend/vuexy/form/presupuestos/cosidotapablanda/comparador.js');
}
}

View File

@ -173,7 +173,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
$this->viewData['boxTitle'] = lang('Basic.global.addNew') . ' ' . lang('Presupuestos.moduleTitleCosidoTB') . ' ' . lang('Basic.global.addNewSuffix');
/* TEST JS LOADER */
$this->viewData['global_js_variables'] = array('jsVarTest' => "'Hola Jaime'");
//$this->viewData['global_js_variables'] = array('jsVarTest' => "'Hola Jaime'");
return $this->displayForm(__METHOD__);

View File

@ -13,9 +13,8 @@ class Js_loader extends BaseController
}
function comparador_js()
function comparadorCosidoTapablanda_js()
{
$data['test_var'] = 5;
$this->load->view('themes/backend/vuexy/form/presupuestos/cosidotapablanda/comparador.js', $data);
$this->output->set_content_type('text/javascript');

View File

@ -49,7 +49,15 @@ return [
'tipoImpresion' => 'Printing type',
'papelesComparador' => 'Interior, cover and dust jacket papers',
'posicionPagColor' => 'Color pages position',
'colorPageInstructions' => 'Enter the position of the color pages within the book. E.g., 3,5,7 or 4-10,20,155.',
'numeroPaginas' => 'Nº Pages',
'papel' => 'Paper',
'gramaje' => 'Paper weight',
'opcionesPresupuesto' => 'Budget options',
'retractilado' => 'Individual shrink-wrapping',
'retractilado5' => 'Shrink-wrapping in packs of 5',
'Guardas' => 'Endpapers',
'fajaColor' => 'Print color band ',
/* '4x0' => '4x0',
'4x4' => '4x4',

View File

@ -49,6 +49,35 @@ return [
'tipoImpresion' => 'Tipo de impresión',
'papelesComparador' => 'Papeles interior, cubierta y sobrecubierta',
'posicionPagColor' => 'Posición páginas a color',
'colorPageInstructions' => 'Introduzca la posición de las páginas a color dentro del libro. Ej: 3,5,7 ó 4-10,20,155',
'numeroPaginas' => 'Nº Páginas',
'papel' => 'Papel',
'gramaje' => 'Gramaje',
'opcionesPresupuesto' => 'Opciones presupuesto',
'retractilado' => 'Retractilado individual',
'retractilado5' => 'Retractilado de 5',
'Guardas' => 'Guardas',
'fajaColor' => 'Imprimir faja a color',
'compInteriorPlana' => 'Interior en plana',
'compInteriorRotativa' => 'Interior en rotativa',
'compCubiertaSobrecubierta' => 'Cubierta y sobrecubierta',
'tipo' => 'Tipo',
'marca' => 'Marca',
'maquina' => 'Máquina',
'numeroPliegos' => 'Nº Pliegos',
'pliegosPedido' => 'Pliegos pedido',
'precioPliego' => 'Precio pliegos',
'libro' => 'Libro',
'totalPedido' => 'Total pedido',
'lomo' => 'Lomo',
'peso' => 'Peso',
'click' => 'Click',
'totalClicks' => 'Total clicks',
'precioPagNegro' => 'Precio pág. negro',
'precioPagColor' => 'Precio pág. color',
'totalTinta' => 'Total tinta',
'totalCorte' => 'Total corte',
'total' => 'Total',
/* '4x0' => '4x0',

View File

@ -16,7 +16,7 @@
<label for="paginas" class="form-label">
<?=lang('Presupuestos.paginas') ?>*
</label>
<input type="number" id="paginas" name="paginas" required maxLength="11" class="form-control" value="<?=old('paginas', $presupuestoEntity->paginas) ?>">
<input type="number" id="paginas" name="paginas" maxLength="11" class="form-control" value="<?=old('paginas', $presupuestoEntity->paginas) ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -25,7 +25,7 @@
<label for="tirada" class="form-label">
<?=lang('Presupuestos.tirada') ?>*
</label>
<input type="number" id="tirada" name="tirada" required maxLength="11" class="form-control" value="<?=old('tirada', $presupuestoEntity->tirada) ?>">
<input type="number" id="tirada" name="tirada" maxLength="11" class="form-control" value="<?=old('tirada', $presupuestoEntity->tirada) ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -36,7 +36,7 @@
<?=lang('Presupuestos.papelFormatoId') ?>*
</label>
<select id="papelFormatoId" name="papel_formato_id" required class="form-control select2bs2" style="width: 100%;" >
<select id="papelFormatoId" name="papel_formato_id" class="form-control select2bs2" style="width: 100%;" >
<?php if ( isset($papelFormatoList) && is_array($papelFormatoList) && !empty($papelFormatoList) ) :
foreach ($papelFormatoList as $formato) : ?>
@ -76,7 +76,7 @@
<label for="merma" class="form-label">
<?=lang('Presupuestos.merma') ?>*
</label>
<input type="number" id="merma" name="merma" required maxLength="8" step="0.01" class="form-control" value="<?=old('merma', $presupuestoEntity->merma) ?>">
<input type="number" id="merma" name="merma" maxLength="8" step="0.01" class="form-control" value="<?=old('merma', $presupuestoEntity->merma) ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -85,7 +85,7 @@
<label for="mermaportada" class="form-label">
<?=lang('Presupuestos.mermaportada') ?>*
</label>
<input type="number" id="mermaportada" name="merma_sobrecubierta" required placeholder="6.00" maxLength="8" step="0.01" class="form-control" value="<?=old('merma_sobrecubierta', $presupuestoEntity->merma_sobrecubierta) ?>">
<input type="number" id="mermaportada" name="merma_sobrecubierta" placeholder="6.00" maxLength="8" step="0.01" class="form-control" value="<?=old('merma_sobrecubierta', $presupuestoEntity->merma_sobrecubierta) ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->

View File

@ -1,6 +1,6 @@
<div class="accordion mt-3" id="accordionDatosPresupuestoCliente">
<div class="card accordion-item active">
<h2 class="accordion-header" id="headingOne">
<h2 class="accordion-header" id="heading">
<button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#accordionDatosPresupuestoClienteTip" aria-expanded="false" aria-controls="accordionDatosPresupuestoClienteTip">
<h4><?= lang("Presupuestos.datosPresupuestoCliente") ?></h4>
</button>
@ -10,7 +10,7 @@
<div class="accordion-body">
<div class="divider divider-primary text-start mb-1">
<div class="divider divider-dark text-start mb-1">
<div class="divider-text">
<h5><?= lang("Presupuestos.tipoImpresion") ?></h5>
</div>
@ -41,7 +41,7 @@
<!----------------------------------------------------------------------------->
<div class="divider divider-primary text-start mb-1">
<div class="divider divider-dark text-start mb-1">
<div class="divider-text">
<h5><?= lang("Presupuestos.papelesComparador") ?></h5>
</div>
@ -52,13 +52,13 @@
<p class="mb-0"></p>
</div>
<div class="col-md-12 col-lg-2 px-4 mb-0">
<p class="mb-0">Paginas</p>
<p class="mb-0"><?= lang("Presupuestos.numeroPaginas") ?></p>
</div>
<div class="col-md-12 col-lg-6 px-4 mb-0">
<p class="mb-0">Papel</p>
<p class="mb-0"><?= lang("Presupuestos.papel") ?></p>
</div>
<div class="col-md-12 col-lg-2 px-4 mb-0">
<p class="mb-0">Gramaje</p>
<p class="mb-0"><?= lang("Presupuestos.gramaje") ?></p>
</div>
<div>
<hr class="my-1">
@ -88,7 +88,7 @@
</div>
<div class="row color-selected">
<div class="row comp-color-selected">
<div class="col-md-12 col-lg-2 px-4">
<p><?= lang('MaquinasTarifasImpresions.color') ?></p>
</div>
@ -150,19 +150,19 @@
<!----------------------------------------------------------------------------->
<div class="divider divider-primary text-start mb-1 color-selected">
<div class="divider divider-dark text-start mb-1 comp-color-selected">
<div class="divider-text">
<h5><?= lang("Presupuestos.posicionPagColor") ?></h5>
</div>
</div>
<div class="row">
<div class="row comp-color-selected">
<div class="col-md-12 col-lg-4 px-4">
<div class="mb-3">
<label for="compPosPaginasColor" class="form-label">
<?= lang('Presupuestos.posicionPagColor') ?>
</label>
<input type="text" id="compPosPaginasColor" name="comp_pos_paginas_color" maxLength="20" class="form-control" value="<?= isset($presupuestoEntity->comparador_json_data->color->pospaginas) ? (old('', $presupuestoEntity->comparador_json_data->color->pospaginas)) : ''?>">
<input type="text" id="compPosPaginasColor" name="comp_pos_paginas_color" maxLength="20" class="form-control" value="<?= isset($presupuestoEntity->comparador_json_data->color->pospaginas) ? (old('', $presupuestoEntity->comparador_json_data->color->pospaginas)) : '' ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-8 px-4">
@ -170,12 +170,305 @@
<label for="compCalPaginasColor" class="form-label">
<?= lang('Presupuestos.posicionPagColor') ?>
</label>
<textarea type="text" id="compCalPaginasColor" name="comp_cal_paginas_color" maxLength="500" class="form-control" rows="1" readonly style="background: #E8E8E8;"></textarea>
<textarea type="text" id="compCalPaginasColor" name="comp_cal_paginas_color" maxLength="500" class="form-control" rows="1" readonly style="background: #E8E8E8;"></textarea>
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-12 px-4">
<p class="text-muted" style="font-size: 0.9em;"><?= lang('Presupuestos.colorPageInstructions') ?></p>
</div>
</div><!--//.row -->
<!----------------------------------------------------------------------------->
<div class="divider divider-dark text-start mb-1">
<div class="divider-text">
<h5><?= lang("Presupuestos.opcionesPresupuesto") ?></h5>
</div>
</div>
<div class="row">
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compRetractilado" class="form-check-label">
<input type="checkbox" id="compRetractilado" name="comp_retractilado" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->retractilado) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->retractilado == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.retractilado') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compRetractilado5" class="form-check-label">
<input type="checkbox" id="compRetractilado5" name="comp_retractilado_5" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->retractilado_5) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->retractilado_5 == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.retractilado5') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compGuardas" class="form-check-label">
<input type="checkbox" id="compGuardas" name="comp_guardas" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->guardas) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->guardas == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.guardas') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compFajaColor" class="form-check-label">
<input type="checkbox" id="compFajaColor" name="comp_faja_color" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->faja_color) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->faja_color == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.fajaColor') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
</div>
<div class="row">
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compPrototipo" class="form-check-label">
<input type="checkbox" id="compPrototipo" name="comp_prototipo" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->prototipo) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->prototipo == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.prototipo') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compFerro" class="form-check-label">
<input type="checkbox" id="compFerro" name="comp_ferro" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->ferro) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->ferro == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.ferro') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compFerroDigital" class="form-check-label">
<input type="checkbox" id="compFerroDigital" name="comp_ferro_digital" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->ferro_digital) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->ferro_digital == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.ferroDigital') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="compMarcapaginas" class="form-check-label">
<input type="checkbox" id="compMarcapaginas" name="comp_marcapaginas" value="1" class="form-check-input" <?= isset($presupuestoEntity->comparador_json_data->opciones_cliente->marcapaginas) ? ($presupuestoEntity->comparador_json_data->opciones_cliente->marcapaginas == true ? ' checked' : '') : '' ?>">
<?= lang('Presupuestos.marcapaginas') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
</div>
<div class="accordion mt-3" id="accordionCompInteriorPlana">
<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="#accordionCompInteriorPlanaTip" aria-expanded="false" aria-controls="accordionCompInteriorPlanaTip">
<h6><?= lang("Presupuestos.compInteriorPlana") ?></h4>
</button>
</h2>
<div id="accordionCompInteriorPlanaTip" class="accordion-collapse collapse" data-bs-parent="#accordionCompInteriorPlana">
<div class="accordion-body">
<table id="tableCompIntPlana" class="comparator-table table dt-responsive dataTable">
<thead>
<tr>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.tipo') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.paginas') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.papel') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.gramaje') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.marca') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.maquina') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.numeroPliegos') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.pliegosPedido') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.precioPliego') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.libro') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.totalPedido') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.lomo') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.peso') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.click') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.totalClicks') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.precioPagNegro') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.precioPagColor') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.totalTinta') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.totalCorte') ?></th>
<th style="padding-right: 0.75em;"><?= lang('Presupuestos.total') ?></th>
</tr>
</thead>
<tbody>
<tr>
<td>color</td>
<td>220</td>
<td>ESTUCADO MATE</td>
<td>90</td>
<td>CREATOR SILK</td>
<td>C1100</td>
<td>27,50</td>
<td>5.775,00</td>
<td>0,027076</td>
<td>0.75</td>
<td>156,36</td>
<td>8,22</td>
<td>307,69</td>
<td>0,025500</td>
<td>294,53</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>450,89</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="accordion mt-3" id="accordionCompInteriorRotativa">
<div class="card accordion-item active">
<h2 class="accordion-header" id="headingTwo">
<button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#accordionCompInteriorRotativaTip" aria-expanded="false" aria-controls="accordionCompInteriorRotativaTip">
<h6><?= lang("Presupuestos.compInteriorRotativa") ?></h4>
</button>
</h2>
<div id="accordionCompInteriorRotativaTip" class="accordion-collapse collapse" data-bs-parent="#accordionCompInteriorRotativa">
<div class="accordion-body">
<table id="tableCompIntRotativa" class="comparator-table table dt-responsive dataTable">
<thead>
<tr>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.tipo') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.paginas') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.papel') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.gramaje') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.marca') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.maquina') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.numeroPliegos') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.pliegosPedido') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.precioPliego') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.libro') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalPedido') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.lomo') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.peso') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.click') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalClicks') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.precioPagNegro') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.precioPagColor') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalTinta') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalCorte') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.total') ?></span></th>
</tr>
</thead>
<tbody>
<tr>
<td>color</td>
<td>220</td>
<td>ESTUCADO MATE</td>
<td>90</td>
<td>CREATOR SILK</td>
<td>C1100</td>
<td>27,50</td>
<td>5.775,00</td>
<td>0,027076</td>
<td>0.75</td>
<td>156,36</td>
<td>8,22</td>
<td>307,69</td>
<td>0,025500</td>
<td>294,53</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>450,89</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="accordion mt-3" id="accordionCompCubiertaSobrecubierta">
<div class="card accordion-item active">
<h2 class="accordion-header" id="headingThree">
<button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#accordionCompCubiertaSobrecubiertaTip" aria-expanded="false" aria-controls="accordionCompCubiertaSobrecubiertaTip">
<h6><?= lang("Presupuestos.compCubiertaSobrecubierta") ?></h4>
</button>
</h2>
<div id="accordionCompCubiertaSobrecubiertaTip" class="accordion-collapse collapse" data-bs-parent="#accordionCompCubiertaSobrecubierta">
<div class="accordion-body">
<table id="tableCompCubiertaSobrecubierta" class="comparator-table table dt-responsive dataTable">
<thead>
<tr>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.tipo') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.paginas') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.papel') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.gramaje') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.marca') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.maquina') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.numeroPliegos') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.pliegosPedido') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.precioPliego') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.libro') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalPedido') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.lomo') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.peso') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.click') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalClicks') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.precioPagNegro') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.precioPagColor') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalTinta') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.totalCorte') ?></span></th>
<th style="padding-right: 0.75em;"><span><?= lang('Presupuestos.total') ?></span></th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div> <!-- //.accordion-body -->
</div> <!-- //.accordion-collapse -->
</div> <!-- //.accordion-item -->

View File

@ -66,7 +66,7 @@
<label for="titulo" class="form-label">
<?=lang('Presupuestos.titulo') ?>*
</label>
<input type="text" id="titulo" name="titulo" required maxLength="300" class="form-control" value="<?=old('titulo', $presupuestoEntity->titulo) ?>">
<input type="text" id="titulo" name="titulo" maxLength="300" class="form-control" value="<?=old('titulo', $presupuestoEntity->titulo) ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -76,7 +76,7 @@
<label for="autor" class="form-label">
<?=lang('Presupuestos.autor') ?>*
</label>
<input type="text" id="autor" name="autor" required maxLength="150" class="form-control" value="<?=old('autor', $presupuestoEntity->autor) ?>">
<input type="text" id="autor" name="autor" maxLength="150" class="form-control" value="<?=old('autor', $presupuestoEntity->autor) ?>">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -117,7 +117,7 @@
<label for="paisId" class="form-label">
<?=lang('Presupuestos.paisId') ?>*
</label>
<select id="paisId" name="pais_id" required class="form-control select2bs" style="width: 100%;" >
<select id="paisId" name="pais_id" class="form-control select2bs" style="width: 100%;" >
<option value=""><?=lang('Basic.global.pleaseSelectA', [lang('Presupuestos.paisId')]) ?></option>
<?php foreach ($paisList as $item) : ?>
<option value="<?=$item->id ?>"<?=$item->id==$presupuestoEntity->pais_id ? ' selected':'' ?>>
@ -138,7 +138,7 @@
<label for="clienteId" class="form-label">
<?= lang('Presupuestos.clienteId') ?>*
</label>
<select id="clienteId" name="cliente_id" required class="form-control select2bs2" style="width: 100%;">
<select id="clienteId" name="cliente_id" class="form-control select2bs2" style="width: 100%;">
<?php if (isset($clienteList) && is_array($clienteList) && !empty($clienteList)) :
foreach ($clienteList as $k => $v) : ?>

View File

@ -1,17 +1,103 @@
$(function () {
/*******************************
* Eventos asociados a elementos HTML
*******************************/
$('#tipoImpresion').on("change", function () {
updatePapelesComparador();
});
console.log("Llamada desde JS Loader");
console.log("jsVarTest: " + jsVarTest);
$('#tipoImpresion').on("change", function () {
updatePapelesComparador();
});
$('#compRetractilado').on("change", function () {
checkRetractiladoComparador(this);
});
$('#compRetractilado5').on("change", function () {
checkRetractiladoComparador(this);
});
$('#compPosPaginasColor').on("keyup", function () {
computarPaginasColor(this.value);
});
function test(){
// Este evento recoloca los headers de las tablas cuando se pulsa el
// boton del acordeon
$('.accordion-button').on('click', function (e) {
$.fn.dataTable.tables({ visible: true, api: true }).columns.adjust();
});
/*******************************
* Metodos
*******************************/
function init_comparador() {
updatePapelesComparador();
const paginasColor = document.getElementById('compCalPaginasColor');
if(paginasColor.value.length >0){
computarPaginasColor(paginasColor.value);
}
}
function computarPaginasColor(string){
const numbers = [];
for (const [, beginStr, endStr] of string.matchAll(/(\d+)(?:-(\d+))?/g)) {
const [begin, end] = [beginStr, endStr].map(Number);
numbers.push(begin);
if (endStr !== undefined) {
for (let num = begin + 1; num <= end; num++) {
numbers.push(num);
}
}
}
calPagesTextarea = document.getElementById('compCalPaginasColor');
calPagesTextarea.value = numbers;
autosize.update(calPagesTextarea);
}
function checkRetractiladoComparador(element) {
switch (element.id) {
case 'compRetractilado':
if (document.getElementById(element.id).checked) {
document.getElementById('compRetractilado5').checked = false;
}
break;
case 'compRetractilado5':
if (document.getElementById(element.id).checked) {
document.getElementById('compRetractilado').checked = false;
}
break;
default:
break;
}
}
function updatePapelesComparador() {
var e = document.getElementById("tipoImpresion");
elements = document.getElementsByClassName('comp-color-selected');
switch (e.value) {
case "negro":
case "negrohq":
Array.from(elements).forEach(element => {
element.style.display = "none";
});
break;
case "color":
case "colorhq":
case "bicolor":
Array.from(elements).forEach(element => {
element.style.display = "flex";
});
break;
default:
break;
}
console.log("Test from function");
console.log("jsVarTest desde funcion: " + jsVarTest);
}

View File

@ -1,3 +1,4 @@
<?= $this->include('themes/_commonPartialsBs/datatables') ?>
<?= $this->include("themes/_commonPartialsBs/select2bs5") ?>
<?= $this->include("themes/_commonPartialsBs/sweetalert") ?>
<?= $this->extend('themes/backend/vuexy/main/defaultlayout') ?>
@ -78,6 +79,39 @@
allowClear: false,
});
$('#compPapelNegro').select2({
allowClear: false,
});
$('#compGramajeNegro').select2({
allowClear: false,
});
$('#compPapelColor').select2({
allowClear: false,
});
$('#compGramajeColor').select2({
allowClear: false,
});
$('#compPapelCubierta').select2({
allowClear: false,
});
$('#compGramajeCubierta').select2({
allowClear: false,
});
$('#compPapelSobrecubierta').select2({
allowClear: false,
});
$('#compGramajeSobrecubierta').select2({
allowClear: false,
});
<?= $this->endSection() ?>
@ -86,7 +120,6 @@
<!------------------------------------------->
<?= $this->section("additionalInlineJs") ?>
autosize($('#compCalPaginasColor'));
$('#papelFormatoPersonalizado').on("click",function(){
@ -109,14 +142,75 @@
});
// Function from comparador.js
test();
init_comparador();
var tableCompIntPlana = new DataTable('#tableCompIntPlana',{
scrollX: true,
searching: false,
paging: false,
info: false,
ordering: false,
responsive: true,
language: {
url: "//cdn.datatables.net/plug-ins/1.13.4/i18n/<?= config('Basics')->i18n ?>.json"
},
"columnDefs": [{
targets : '_all',
className: "dt-head-center"
},
{
targets : '_all',
className: "dt-body-center"
}
],
});
var tableCompIntRotativa = new DataTable('#tableCompIntRotativa',{
scrollX: true,
searching: false,
paging: false,
info: false,
ordering: false,
language: {
url: "//cdn.datatables.net/plug-ins/1.13.4/i18n/<?= config('Basics')->i18n ?>.json"
},
});
var tableCompIntCubiertaSobrecubierta = new DataTable('#tableCompCubiertaSobrecubierta',{
scrollX: true,
searching: false,
paging: false,
info: false,
ordering: false,
language: {
url: "//cdn.datatables.net/plug-ins/1.13.4/i18n/<?= config('Basics')->i18n ?>.json"
},
});
<?= $this->endSection() ?>
<?=$this->section('css') ?>
<link rel="stylesheet" href="<?= site_url('themes/vuexy/css/datatables-editor/editor.dataTables.min.css') ?>">
<link rel="stylesheet" href="https://cdn.datatables.net/buttons/2.2.3/css/buttons.bootstrap5.min.css">
<link rel="stylesheet" href="<?= site_url('themes/vuexy/css/sk-datatables.css') ?>">
<?=$this->endSection() ?>
<?= $this->section('additionalExternalJs') ?>
<script src="<?= site_url('themes/vuexy/vendor/libs/autosize/autosize.js') ?>"></script>
<script src="<?= site_url('js_loader/comparador_js') ?>"></script>
<script src="<?= site_url('js_loader/comparadorCosidoTapaBlanda_js') ?>"></script>
<?=$this->endSection() ?>
<?= $this->section('additionalExternalJs') ?>
<script src="https://cdn.datatables.net/buttons/2.2.3/js/dataTables.buttons.min.js"></script>
<script src="https://cdn.datatables.net/buttons/2.2.3/js/buttons.bootstrap5.min.js"></script>
<script src="https://cdn.datatables.net/buttons/2.2.3/js/buttons.html5.min.js"></script>
<script src="https://cdn.datatables.net/buttons/2.2.3/js/buttons.print.min.js"></script>
<?=$this->endSection() ?>

View File

@ -14,3 +14,20 @@ table.dataTable.table-hover > tbody > tr.selected:hover > * {
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.65);
}
.comparator-table th, .comparator-table td {
padding-left: 0.6em;
padding-right: 0.6em;
}
.comparator-table td {
font-size: 0.65em;
}
.comparator-table th{
font-size: 0.6em;
}