Files
safekat/ci4/app/Controllers/Test.php
2023-10-10 10:54:54 +02:00

252 lines
7.8 KiB
PHP

<?php
namespace App\Controllers;
use App\Controllers\BaseController;
use App\Models\Configuracion\MaquinasTarifasImpresionModel;
use App\Models\Configuracion\MaquinaModel;
use App\Services\PresupuestoService;
class Test extends BaseController
{
function __construct()
{
}
public function index()
{
$this->testLineasIntPlanaCubierta();
}
public function testGetPrecioPliegoRotativa()
{
$paginas=240;
$papel_impresion = (object)array(
'id' => 198,
'gramaje' => 90,
'precio_tonelada'=> 1600
);
$maquina = (object)array(
//'id' => 48,
'alto' => 800,
'ancho' => 520,
);
$precio = PresupuestoService::getPrecioPliego($maquina, $papel_impresion, $paginas);
var_dump($precio);
}
public function testGetMaquinasFromTarifas()
{
$maquinamodel = new MaquinaModel();
//$tarifa_tipo = ['negro', 'color'];
//$tarifa_tipo = 'color';
$tarifa_tipo = 'negro';
$papel_impresion_id = 5;
$maquina = $maquinamodel->getMaquinaImpresionForPresupuesto(1, $tarifa_tipo, 100, $papel_impresion_id);
echo '<pre>';
var_dump($maquina);
echo '</pre>';
}
public static function testLineasIntPlana()
{
$uso = 'negro';
$tipo = 'color';
$datosPedido = (object)array(
'paginas' => 200,
'tirada' => 500,
'merma' => 10,
'merma_portada' => 10,
'ancho' => 165,
'alto' => 148,
'isCosido' => true,
);
$maquina_model = new \App\Models\Configuracion\MaquinaModel();
$opciones_papel = array(
'bn' => 1,
'cubierta' => 0,
'sobrecubierta' => 0,
'rotativa' => 0,
);
$papelimpresionmodel = new \App\Models\Configuracion\PapelImpresionModel();
$papeles = $papelimpresionmodel->getIdPapelesImpresionForPresupuesto(
papel_generico_id: 4,
gramaje: 90,
options: $opciones_papel
);
foreach ($papeles as $papel) {
echo '-------------------------------';
$maquinas = $maquina_model->getMaquinaImpresionForPresupuesto(
is_rotativa: $papel->rotativa,
tarifa_tipo: 'negro',
tirada: $datosPedido->tirada + $datosPedido->merma,
papel_impresion_id: $papel->id,
);
foreach ($maquinas as $maquina) {
echo '----------------------------<br>';
var_dump($maquina->maquina);
var_dump($papel->nombre);
$tarifa = (new \App\Models\Configuracion\MaquinasTarifasImpresionModel())->getTarifa($maquina->maquina_id, $uso, $tipo);
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
echo '<pre>';
var_dump($linea);
echo '</pre>';
}
}
}
public static function testLineasIntPlanaCubierta()
{
echo '<pre>';
$uso = 'cubierta';
$tipo = 'color';
$datosPedido = (object)array(
'paginas' => 200,
'tirada' => 500,
'merma' => 10,
'merma_portada' => 10,
'ancho' => 165,
'alto' => 148,
'isCosido' => true,
'solapas' => 0,
'solapas_ancho' => 0,
);
$maquina_model = new \App\Models\Configuracion\MaquinaModel();
$opciones_papel = array(
'color' => 1,
'cubierta' => 1,
'sobrecubierta' => 0,
'rotativa' => 0,
);
$papelimpresionmodel = new \App\Models\Configuracion\PapelImpresionModel();
$papeles = $papelimpresionmodel->getIdPapelesImpresionForPresupuesto(
papel_generico_id: 3,
gramaje: 100,
options: $opciones_papel
);
foreach ($papeles as $papel) {
echo '-------------------------------';
var_dump($papel);
$maquinas = $maquina_model->getMaquinaImpresionForPresupuesto(
is_rotativa: $papel->rotativa,
tarifa_tipo: 'color',
tirada: $datosPedido->tirada + $datosPedido->merma_portada,
papel_impresion_id: $papel->id,
);
foreach ($maquinas as $maquina) {
echo '----------------------------<br>';
var_dump($maquina->maquina);
var_dump($papel->nombre);
$tarifa = (new \App\Models\Configuracion\MaquinasTarifasImpresionModel())->getTarifa($maquina->maquina_id, $uso, $tipo);
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
var_dump($linea);
}
}
echo '</pre>';
}
public static function testLineasIntRotativa()
{
$uso = 'interior';
$tipo = 'negro';
$datosPedido = (object)array(
'paginas' => 240,
'tirada' => 100,
'merma' => 10,
'merma_portada' => 10,
'ancho' => 150,
'alto' => 210,
'isCosido' => true,
);
$parametrosRotativa = (object)array(
'a_favor_fibra' => 0,
'bnPages' => 240,
'colorPages' => 0,
'rotativa_gota_negro' => 0,
'rotativa_gota_color' => 0,
);
$maquina_model = new \App\Models\Configuracion\MaquinaModel();
$opciones_papel = array(
'bn' => 1,
'cubierta' => 0,
'sobrecubierta' => 0,
'rotativa' => 1,
);
$papelimpresionmodel = new \App\Models\Configuracion\PapelImpresionModel();
$papeles = $papelimpresionmodel->getIdPapelesImpresionForPresupuesto(
papel_generico_id: 4,
gramaje: 90,
options: $opciones_papel
);
foreach ($papeles as $papel) {
$papelImpresionTipologiaModel = new \App\Models\Configuracion\PapelImpresionTipologiaModel();
$datosTipologias = $papelImpresionTipologiaModel
->findTipologiasForPapelImpresion($papel->id, $parametrosRotativa->colorPages>0?'color':'negro')
->get()->getResultObject();
echo '<pre>';
var_dump($papel->id);
var_dump($datosTipologias);
echo '</pre>';
$parametrosRotativa->rotativa_gota_negro = $datosTipologias[0]->gota_negro;
$parametrosRotativa->rotativa_gota_color = $datosTipologias[0]->gota_color;
$parametrosRotativa->rotativa_negro = $datosTipologias[0]->negro;
$parametrosRotativa->rotativa_cyan = $datosTipologias[0]->cyan;
$parametrosRotativa->rotativa_magenta = $datosTipologias[0]->magenta;
$parametrosRotativa->rotativa_amarillo = $datosTipologias[0]->amarillo;
echo '-------------------------------';
$maquinas = $maquina_model->getMaquinaImpresionForPresupuesto(
is_rotativa: $papel->rotativa,
tarifa_tipo: 'negro',
tirada: $datosPedido->tirada + $datosPedido->merma,
papel_impresion_id: $papel->id,
);
foreach ($maquinas as $maquina) {
echo '----------------------------<br>';
var_dump($maquina->maquina);
var_dump($papel->nombre);
//$linea = PresupuestoService::getCostesLineaRotativa($maquina, $datosPedido, $parametrosRotativa);
echo '<pre>';
var_dump($linea);
echo '</pre>';
}
}
}
}