busqueda opcion más barata de la tarifa enc añadida

This commit is contained in:
2023-11-22 20:06:20 +01:00
parent 1d0681847a
commit ec2f217c79
7 changed files with 47 additions and 6 deletions

View File

@ -18,10 +18,15 @@ class Test extends BaseController
public function index()
{
echo '<pre>';
$this->get_dimensiones_enc();
var_dump($this->get_tarifa_enc(1, 100, 300, 140, 205));
echo '</pre>';
}
public function get_tarifa_enc($tarifa_id, $paginas, $tirada, $ancho, $alto){
$model = model('App\Models\Tarifas\TarifaEncuadernacionModel');
return $model->getTarifaPresupuestoEncuadernacion($tarifa_id, $paginas, $tirada, $ancho, $alto);
}
public function get_dimensiones_enc(){
$dimensionModel = model('App\Models\Tarifas\TarifaEncuadernacionDimensionesModel');

View File

@ -13,7 +13,7 @@ return [
'datosServicios' => 'Other Services',
'datosPresupuestoCliente' => 'Client budget data (comparator)',
'id' => 'Budget Number',
'id' => 'ID',
'created_at' => 'Date',
'clienteId' => 'Cliend',
'comercial' => 'Sales agent',

View File

@ -12,7 +12,7 @@ return [
'datosServicios' => 'Otros Servicios',
'datosPresupuestoCliente' => 'Datos presupuesto cliente (comparador)',
'id' => 'Número Presupuesto',
'id' => 'ID',
'created_at' => 'Fecha',
'clienteId' => 'Cliente',
'comercial' => 'Comercial',

View File

@ -46,7 +46,7 @@ class PresupuestoEncuadernacionesModel extends \App\Models\GoBaseModel
public function initPresupuesto($id_presupuesto,$tipoPresupuesto, $solapas){
public function initPresupuesto($id_presupuesto,$tipoPresupuesto, $solapas, $tirada, $paginas){
$model = model('App\Models\Presupuestos\TipoPresupuestoTarifaEncuadernacionModel');
$tarifas_ids = $model->get_tarifas($tipo_presupuesto,$solapas);

View File

@ -112,4 +112,39 @@ class TarifaEncuadernacionModel extends \App\Models\GoBaseModel
}
public function getTarifaPresupuestoEncuadernacion($tarifa_id, $paginas, $tirada, $ancho, $alto, $proveedor_id=-1){
$builder = $this->db
->table($this->table . " t1")
->select(
"t1.id AS tarifa_enc_id, t1.nombre AS tarifa_enc_nombre, t1.precio_min AS tarifa_precio_min, t1.importe_fijo AS tarifa_importe_fijo,
t2.id AS tarifa_tirada_id, t2.proveedor_id AS proveedor_id, t5.nombre AS proveedor_nombre, t2.tirada_min AS tirada_min, t2.tirada_max AS tirada_max,
t3.id AS tarifa_linea_id, t3.paginas_libro_min AS paginas_min, t3.paginas_libro_max AS paginas_max, t3.precio_min AS precio_min, t3.precio_max AS precio_max, t3.margen AS margen,
t4.ancho_min AS ancho_min, t4.ancho_max AS ancho_max, t4.alto_min AS alto_min, t4.alto_max AS alto_max"
)
->join("tarifa_encuadernacion_tiradas t2", "t1.id = t2.tarifa_encuadernacion_id", "left")
->join("tarifa_encuadernacion_lineas t3", "t2.id = t3.tirada_encuadernacion_id", "left")
->join("tarifa_encuadernacion_dimensiones t4", "t3.dimensiones_id = t4.id", "left")
->join("lg_proveedores t5", "t2.proveedor_id = t5.id", "left")
->where("t1.is_deleted", 0)
->where("t1.mostrar_en_presupuesto", 1)
->where("t2.is_deleted", 0)
->where("t3.is_deleted", 0);
$builder->where('t1.id =', $tarifa_id);
$builder->where('t2.tirada_min <=', $tirada);
$builder->where('t2.tirada_max >', $tirada);
$builder->where('t3.paginas_libro_min <=', $paginas);
$builder->where('t3.paginas_libro_max >', $paginas);
$builder->where('t4.ancho_min <=', $ancho);
$builder->where('t4.ancho_max >', $ancho);
$builder->where('t4.alto_min <=', $alto);
$builder->where('t4.alto_max >', $alto);
if($proveedor_id != -1){
$builder->where('t2.proveedor_id', $proveedor_id);
}
return $builder->get()->getResultObject();
}
}

View File

@ -96,7 +96,7 @@
<div class="tab-pane fade" id="servicios-encuadernacion" role="tabpanel">
<div class="row">
<div class="col-md-12 col-lg-4 px-4">
<?= anchor(route_to(""), lang("Presupuestos.serviciosEncDefault"), ["class" => "btn btn-dark float-start me-sm-3 me-1",]) ?>
<button id="serv_enc_default" type="button" class="btn btn-secondary waves-effect waves-light float-start"><?= lang("Presupuestos.serviciosEncDefault")?></button>
</div>
</div>
<table id="tableOfServiciosEncuadernacion" class="table table-striped table-hover" style="width: 100%;">

View File

@ -174,7 +174,8 @@
table : "#tableOfTarifaencuadernacionlineas",
idSrc: 'id',
fields: [
{name: "id"},
{name: "id",
"type": "readonly"},
{
name: "dimensiones_id",
"type": "select"