'; var_dump($model->getDireccion(1)); echo ''; } public function init_presupuesto_encuadernacion($tipo_presupuesto, $solapas, $paginas, $tirada, $ancho, $alto, $POD){ $model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel'); return $model->initPresupuesto($tipo_presupuesto, $solapas, $paginas, $tirada, $ancho, $alto, $POD); } public function get_precio_tarifa($tarifa_encuadernacion_id, $paginas, $tirada, $ancho, $alto, $proveedor_id, $POD){ $model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel'); return $model->getPrecioTarifa($tarifa_encuadernacion_id, $paginas, $tirada, $ancho, $alto, $proveedor_id, $POD); } public function get_precio_tarifa_acabado($tarifa_id, $tirada, $POD){ $model = model('App\Models\Presupuestos\PresupuestoAcabadosModel'); return $model->getPrecioTarifa($tarifa_id, $tirada, $POD); } public function get_precio_tarifa_horas($tarifa_encuadernacion_id, $paginas, $tirada, $proveedor_id, $POD){ $model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel'); return $model->getPrecioTarifaHoras($tarifa_encuadernacion_id, $paginas, $tirada, $proveedor_id, $POD); } 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 getProveedoresForSelector_enc($tarifa_id, $paginas, $tirada, $ancho, $alto){ $model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel'); return $model->getProveedoresForSelector($tarifa_id, $paginas, $tirada, $ancho, $alto); } public function get_dimensiones_enc(){ $dimensionModel = model('App\Models\Tarifas\TarifaEncuadernacionDimensionesModel'); $dimensiones = $dimensionModel->getDimensiones(); var_dump($dimensiones); foreach($dimensiones as $dim){ $dim->label= lang("TarifaEncuadernacionLineas." . $dim->label); } var_dump($dimensiones); } public function get_tarifas_encuadernacion($tipo_presupuesto, $solapas){ $model = model('App\Models\Presupuestos\TipoPresupuestoTarifaEncuadernacionModel'); return $model->get_tarifas($tipo_presupuesto,$solapas); } public function timeToSeconds(){ $time = '99:59:59'; $time_parts = explode(":", $time); $seconds = $time_parts[2] + $time_parts[1] * 60 + $time_parts[0] * 3600; echo "Time in seconds: " . $seconds; } public function getLP(){ $lp_model = model('App\Models\Presupuestos\PresupuestoLineaModel'); $data = $lp_model->getLineasPresupuesto(8); $papel_imp_model = model('App\Models\Configuracion\PapelImpresionModel'); $maquina_model = model('App\Models\Configuracion\MaquinaModel'); foreach($data as $linea){ //$linea->papel_impresion_id = $papel_imp_model->getValue_Nombre($linea->papel_impresion_id)[0]; //$linea->maquina_id = $maquina_model->getValue_Nombre($linea->maquina_id)[0]; var_dump($linea->papel_impresion_id); var_dump($linea->maquina_id); } } public function createLP(){ $lp_model = model('App\Models\Presupuestos\PresupuestoLineaModel'); $lp_model->createForPresupuesto(8); } public function getPapelesHQ(){ $model = model('App\Models\Configuracion\PapelGenericoModel'); $data = $model->getPapelForComparador('colorhq', false, false); var_dump($data); } public function getGramaje(){ $model = new PapelGenericoModel(); $data = $model->getGramajeComparador("AHUESADO OFFSET", "bnhq" ); var_dump($data); } 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 '
';
        var_dump($maquina);
        echo '
'; } public static function testLineasIntPlana() { $uso = 'interior'; $tipo = 'colorhq'; $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( 'color' => 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: 'colorhq', tirada: $datosPedido->tirada + $datosPedido->merma, papel_impresion_id: $papel->id, ); foreach ($maquinas as $maquina) { echo '----------------------------
'; 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 '
';
                var_dump($linea);
                echo '
'; } } } public static function testLineasIntPlanaCubierta() { echo '
';
        $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 '----------------------------
'; 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 '
'; } 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 '
';
            var_dump($papel->id);
            var_dump($datosTipologias);
            echo '
'; $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 '----------------------------
'; var_dump($maquina->maquina); var_dump($papel->nombre); //$linea = PresupuestoService::getCostesLineaRotativa($maquina, $datosPedido, $parametrosRotativa); echo '
';
                var_dump($linea);
                echo '
'; } } } public static function testLineasCubierta() { $uso = 'cubierta'; $tipo = 'color'; $datosPedido = (object)array( 'paginas' => 240, 'tirada' => 100, 'merma' => 10, 'merma_portada' => 10, 'ancho' => 150, 'alto' => 210, 'isCosido' => true, 'solapas' => false, ); $opciones_papel = array( 'color' => 1, 'cubierta' => 1, ); // Se obtienen los papeles disponibles $papelimpresionmodel = new \App\Models\Configuracion\PapelImpresionModel(); $papeles = $papelimpresionmodel->getIdPapelesImpresionForPresupuesto( papel_generico_id: 3, // Blanco offset gramaje: 100, options: $opciones_papel ); echo '
';
        var_dump($papeles);
        echo '
'; $lineas = array(); // Para cada papel, se obtienen las maquinas disponibles foreach ($papeles as $papel) { $maquinamodel = new \App\Models\Configuracion\MaquinaModel(); $maquinas = $maquinamodel->getMaquinaImpresionForPresupuesto( is_rotativa: 0, tarifa_tipo: $tipo, tirada: $datosPedido->tirada + $datosPedido->merma, papel_impresion_id: $papel->id, ); echo '
';
            echo '-------------------------------';
            echo '
'; echo '
';
            var_dump($maquinas);
            echo '
'; // Se recorren las máquinas y se calcula el coste de linea por cada una foreach ($maquinas as $maquina) { echo '
';
                echo '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$';
                echo '
'; $tarifamodel = new \App\Models\Configuracion\MaquinasTarifasImpresionModel(); $tarifa = $tarifamodel->getTarifa($maquina->maquina_id, $uso, $tipo); echo '
';
                var_dump($tarifa);
                echo '
'; if(!is_float($tarifa)){ continue; } $linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa); $linea['fields']['maquina'] = $maquina->maquina; $linea['fields']['maquina_id'] = $maquina->maquina_id; $linea['fields']['papel_impresion'] = $papel->nombre; $linea['fields']['papel_impresion_id'] = $papel->id; $linea['fields']['paginas'] = $datosPedido->paginas; $linea['fields']['gramaje'] = 100; $linea['fields']['papel_generico_id'] = 3; $linea['fields']['papel_generico'] = 'Blanco offset'; array_push($lineas, $linea); } } echo '
';
        var_dump($lineas);
        echo '
'; } }