mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
trabajando en servicios encuadernacion (init)
This commit is contained in:
@ -46,10 +46,23 @@ class PresupuestoEncuadernacionesModel extends \App\Models\GoBaseModel
|
||||
|
||||
|
||||
|
||||
public function initPresupuesto($tipoPresupuesto, $solapas){
|
||||
public function initPresupuesto($id_presupuesto,$tipoPresupuesto, $solapas){
|
||||
|
||||
$model = model('App\Models\Presupuestos\TipoPresupuestoTarifaEncuadernacionModel');
|
||||
$tarifas_ids = $model->get_tarifas($tipo_presupuesto,$solapas);
|
||||
|
||||
$modelTarifa = model('App\Models\Tarifas\TarifaEncuadernacionModel');
|
||||
|
||||
foreach($tarifas_ids as $tarifa){
|
||||
/* $data = [
|
||||
'id' => new RawSql('DEFAULT'),
|
||||
'title' => 'My title',
|
||||
'name' => 'My Name',
|
||||
'date' => '2022-01-01',
|
||||
'last_update' => new RawSql('CURRENT_TIMESTAMP()'),
|
||||
];
|
||||
$modelTarifa->getMejorPrecio($tirada, $paginas)*/
|
||||
}
|
||||
}
|
||||
|
||||
public function delete($presupuesto_id){
|
||||
|
||||
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
namespace App\Models\Tarifas;
|
||||
|
||||
class TarifaEncuadernacionDimensionesModel extends \App\Models\GoBaseModel
|
||||
{
|
||||
protected $table = "tarifa_encuadernacion_dimensiones";
|
||||
|
||||
/**
|
||||
* Whether primary key uses auto increment.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $useAutoIncrement = true;
|
||||
|
||||
protected $allowedFields = [
|
||||
|
||||
];
|
||||
protected $returnType = "App\Entities\Tarifas\TarifaEncuadernacionDimensionesEntity";
|
||||
|
||||
public static $labelField = "descripcion";
|
||||
|
||||
protected $validationRules = [
|
||||
|
||||
];
|
||||
|
||||
protected $validationMessages = [
|
||||
|
||||
];
|
||||
|
||||
/**
|
||||
* Get resource data.
|
||||
*
|
||||
* @param string $search
|
||||
*
|
||||
* @return \CodeIgniter\Database\BaseBuilder
|
||||
*/
|
||||
public function getDimensiones(){
|
||||
|
||||
$builder = $this->db
|
||||
->table($this->table . " t1")
|
||||
->select("t1.id AS value, t1.keyword AS label")
|
||||
->orderBy('t1.id', 'asc');
|
||||
|
||||
return $builder->get()->getResultObject();
|
||||
}
|
||||
}
|
||||
@ -13,10 +13,11 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
|
||||
protected $useAutoIncrement = true;
|
||||
|
||||
const SORTABLE = [
|
||||
0 => "t1.paginas_libro_min",
|
||||
1 => "t1.paginas_libro_max",
|
||||
2 => "t1.precio_min",
|
||||
3 => "t1.precio_max",
|
||||
0 => "t1.dimensiones_id",
|
||||
1 => "t1.paginas_libro_min",
|
||||
2 => "t1.paginas_libro_max",
|
||||
3 => "t1.precio_min",
|
||||
4 => "t1.precio_max",
|
||||
];
|
||||
|
||||
protected $allowedFields = [
|
||||
@ -117,13 +118,16 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
|
||||
$builder = $this->db
|
||||
->table($this->table . " t1")
|
||||
->select(
|
||||
"t1.id AS id, t1.tirada_encuadernacion_id AS tirada_encuadernacion_id, t1.paginas_libro_min AS paginas_libro_min, t1.paginas_libro_max AS paginas_libro_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.tirada_min AS tirada_min, t1.tirada_max AS tirada_max, t1.margen AS margen, t2.id AS tarifa_encuadernacion"
|
||||
"t1.id AS id, t1.tirada_encuadernacion_id AS tirada_encuadernacion_id, t1.paginas_libro_min AS paginas_libro_min, t1.paginas_libro_max AS paginas_libro_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.tirada_min AS tirada_min,
|
||||
t1.tirada_max AS tirada_max, t1.margen AS margen, t2.id AS tarifa_encuadernacion, t3.id AS dimensiones_id, t3.ancho_min, t3.ancho_max, , t3.alto_min, t3.alto_max"
|
||||
);
|
||||
//JJO
|
||||
$builder->where('tirada_encuadernacion_id', $tirada_encuadernacion_id);
|
||||
$builder->where("t1.is_deleted", 0);
|
||||
|
||||
$builder->join("tarifa_encuadernacion_tiradas t2", "t1.tirada_encuadernacion_id = t2.id", "left");
|
||||
$builder->join("tarifa_encuadernacion_dimensiones t3", "t1.dimensiones_id = t3.id", "left");
|
||||
|
||||
|
||||
|
||||
return empty($search)
|
||||
@ -151,7 +155,7 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
|
||||
|
||||
$rows = $this->db
|
||||
->table($this->table)
|
||||
->select("id, paginas_libro_min, paginas_libro_max")
|
||||
->select("id, paginas_libro_min, paginas_libro_max, dimensiones_id")
|
||||
->where("is_deleted", 0)
|
||||
->where("tirada_encuadernacion_id", $tirada_encuadernacion_id)
|
||||
->get()->getResultObject();
|
||||
@ -163,9 +167,11 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if(check_overlap(floatval($data["paginas_libro_min"]), floatval($data["paginas_libro_max"]),
|
||||
$row->paginas_libro_min, $row->paginas_libro_max)){
|
||||
return lang('TarifaEncuadernacionLineas.validation.error_paginas_overlap');
|
||||
if($data['dimensiones_id'] == $row->dimensiones_id){
|
||||
if(check_overlap(floatval($data["paginas_libro_min"]), floatval($data["paginas_libro_max"]),
|
||||
$row->paginas_libro_min, $row->paginas_libro_max)){
|
||||
return lang('TarifaEncuadernacionLineas.validation.error_paginas_overlap');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user