mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
trabajando en el back de las tiradas
This commit is contained in:
@ -12,37 +12,166 @@ class Test extends BaseController
|
||||
{
|
||||
function __construct()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$json_text = '[{"paginas":"150","paginas_impresion":0,"papel":"3","papel_impresion_id":"45","gramaje":"90.00","maquina_id":"33","row_id":"lp_bnhq"},{"paginas":"150","paginas_impresion":0,"papel":"3","papel_impresion_id":"45","gramaje":"90.00","maquina_id":"97","row_id":"lp_colorhq"},{"paginas":"2","paginas_impresion":0,"papel":"5","papel_impresion_id":"49","gramaje":"270.00","maquina_id":"55","row_id":"lp_cubierta"},{"paginas":"4","paginas_impresion":0,"papel":"1","papel_impresion_id":"91","gramaje":"200.00","maquina_id":"55","row_id":"lp_sobrecubierta"}]';
|
||||
echo '<pre>';
|
||||
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
||||
$tarifas = [
|
||||
(object)['tarifa_id'=>1, "cubierta"=>0, "sobrecubierta"=>0]
|
||||
];
|
||||
var_dump($model->deleteServiciosNotInArray(44, $tarifas));
|
||||
var_dump($this->test_get_tirada_alt(
|
||||
tirada: 200,
|
||||
merma: 20,
|
||||
tipo_impresion_id: 4,
|
||||
json_data: $json_text,
|
||||
cliente_id: 685,
|
||||
ancho: 150,
|
||||
alto: 210,
|
||||
solapas_cubierta: 0,
|
||||
solapas_ancho_cubierta: 0,
|
||||
solapas_sobrecubierta: 0,
|
||||
solapas_ancho_sobrecubierta: 0,
|
||||
lomo: 16.53
|
||||
));
|
||||
echo '</pre>';
|
||||
/*
|
||||
|
||||
|
||||
$linea = PresupuestoService::getCostesLinea('interior', $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
|
||||
echo '<pre>';
|
||||
|
||||
var_dump($formas);
|
||||
|
||||
echo '</pre>';
|
||||
echo '<pre>';
|
||||
$tarifa_value = $this->get_tarifa_enc(18,150,22,150,210);
|
||||
var_dump($tarifa_value[0]);
|
||||
$model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel');
|
||||
$result = $model->calcularTarifa($tarifa_value[0], 150, true);
|
||||
var_dump($result);
|
||||
echo '</pre>';*/
|
||||
}
|
||||
|
||||
|
||||
private function test_get_tirada_alt($tirada, $merma, $tipo_impresion_id,
|
||||
$json_data, $cliente_id, $ancho, $alto,
|
||||
$solapas_cubierta, $solapas_ancho_cubierta, $solapas_sobrecubierta, $solapas_ancho_sobrecubierta, $lomo)
|
||||
{
|
||||
$values = [];
|
||||
|
||||
if ($json_data) {
|
||||
|
||||
$data = json_decode($json_data, true);
|
||||
|
||||
foreach ($data as $linea) {
|
||||
echo '------------------------------------<br>';
|
||||
var_dump($linea);
|
||||
// Se obtienen los valores de cada linea para el calculo del precio
|
||||
$datosPedido = (object)array(
|
||||
'paginas' => intval($linea['paginas']) ?? 0,
|
||||
'tirada' => intval($tirada) ?? 0,
|
||||
'merma' => intval($merma) ?? 0,
|
||||
'ancho' => intval($ancho) ?? 100000,
|
||||
'alto' => intval($alto) ?? 100000,
|
||||
'a_favor_fibra' => $linea['aFavorFibra'] ?? 1,
|
||||
'isCosido' => (new \App\Models\Configuracion\TipoPresupuestoModel())->get_isCosido($tipo_impresion_id), // JJO esto es custom por cada tipo de presupuesto
|
||||
);
|
||||
|
||||
if ($linea['row_id'] == 'lp_guardas') {
|
||||
$datosPedido->paginas_impresion = intval($linea['paginas_impresion']) ?? 0;
|
||||
// Para el caso de Fresado y Cosido tapa dura, las guardas son un diptico
|
||||
// y hay que imprimirlas como "cosido" (dos hojas pegadas). En el caso de espiral
|
||||
// o wire-o tapa dura, las guardas se imprimen como hojas sueltas
|
||||
if ($tipo_impresion_id == 1 || $tipo_impresion_id == 3) {
|
||||
$datosPedido->isCosido = true;
|
||||
} else if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7) {
|
||||
$datosPedido->isCosido = false;
|
||||
}
|
||||
} else if ($linea['row_id'] == 'lp_sobrecubierta' || $linea['row_id'] == 'lp_cubierta') {
|
||||
$datosPedido->solapas =
|
||||
$linea['row_id'] == 'lp_cubierta' ? $solapas_cubierta : $solapas_sobrecubierta;
|
||||
$datosPedido->solapas_ancho =
|
||||
$linea['row_id'] == 'lp_cubierta' ? $solapas_ancho_cubierta : $solapas_ancho_sobrecubierta;
|
||||
$datosPedido->lomo = $lomo;
|
||||
|
||||
$type = $linea['row_id'] == 'lp_cubierta' ? 'cubierta' : 'sobrecubierta';
|
||||
|
||||
$datosPedido->anchoExteriores = PresupuestoService::getAnchoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
$datosPedido->altoExteriores = PresupuestoService::getAltoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
}
|
||||
|
||||
$maquina = (new \App\Models\Configuracion\MaquinaModel())->find($linea['maquina_id']);
|
||||
$papel = (new \App\Models\Configuracion\PapelImpresionModel())->find($linea['papel_impresion_id']);
|
||||
$pg = (new \App\Models\Configuracion\PapelGenericoModel())->find($linea['papel']);
|
||||
$papel_generico['id'] = $pg->id;
|
||||
$papel_generico['nombre'] = $pg->nombre;
|
||||
|
||||
$maquina->maquina_id = $maquina->id;
|
||||
unset($maquina->id);
|
||||
|
||||
switch ($linea['row_id']) {
|
||||
case 'lp_rot_bn':
|
||||
case 'lp_rot_color':
|
||||
$uso = 'rotativa';
|
||||
$tipo = strpos($linea['row_id'], "_bn") !== false ? 'negro' : 'color';
|
||||
break;
|
||||
case 'lp_cubierta':
|
||||
$uso = 'cubierta';
|
||||
break;
|
||||
case 'lp_sobrecubierta':
|
||||
$uso = 'sobrecubierta';
|
||||
break;
|
||||
case 'lp_guardas':
|
||||
$uso = 'guardas';
|
||||
break;
|
||||
default:
|
||||
$uso = 'interior';
|
||||
$isHq = strpos($linea['row_id'], "hq") !== false ? true : false;
|
||||
$isColor = strpos($linea['row_id'], "_color") !== false ? true : false;
|
||||
$tipo = $isColor ? ($isHq ? 'colorhq' : 'color') : ($isHq ? 'negrohq' : 'negro');
|
||||
break;
|
||||
}
|
||||
|
||||
if ($uso == 'cubierta' || $uso == 'sobrecubierta' || $uso == 'guardas') {
|
||||
$isColor = true;
|
||||
$isHq = true;
|
||||
$tipo = 'colorhq';
|
||||
}
|
||||
|
||||
|
||||
|
||||
$opciones_papel = PresupuestoService::get_opciones_papel($uso, $isColor);
|
||||
|
||||
$datosTipolog = $linea['gotaNegro'] ?? null;
|
||||
if (!is_null($datosTipolog)) {
|
||||
$datosTipolog = [];
|
||||
$data = (object)array(
|
||||
'negro' => intval($linea['cobNegro']) ?? 0,
|
||||
'cyan' => intval($linea['cobCyan']) ?? 0,
|
||||
'magenta' => intval($linea['cobMagenta']) ?? 0,
|
||||
'amarillo' => intval($linea['cobAmarillo']) ?? 0,
|
||||
'cg' => intval($linea['cobCG']) ?? 0,
|
||||
'gota_negro' => intval($linea['gotaNegro']) ?? 0,
|
||||
'gota_color' => intval($linea['gotaColor']) ?? 0,
|
||||
);
|
||||
array_push($datosTipolog, $data);
|
||||
}
|
||||
|
||||
$data['uso'] = $uso;
|
||||
$data['tipo'] = $tipo;
|
||||
$data['datosPedido'] = $datosPedido;
|
||||
$data['cliente_id'] = $cliente_id;
|
||||
$data['papel'] = $papel;
|
||||
$data['opciones_papel'] = $opciones_papel;
|
||||
$data['maquina'] = $maquina;
|
||||
$data['papel_generico'] = (array)$papel_generico;
|
||||
$data['isColor'] = $isColor;
|
||||
$data['a_favor_fibra'] = $linea['aFavorFibra'] ?? null;
|
||||
$data['datosTipolog'] = $datosTipolog;
|
||||
$data['gramaje'] = $linea['gramaje'] ?? 0;
|
||||
|
||||
|
||||
if ($linea['row_id'] != 'lp_rot_bn' && $linea['row_id'] != 'lp_rot_color') {
|
||||
$linea_coste = PresupuestoService::getLineaPresupuestoPlana($data);
|
||||
var_dump($linea_coste);
|
||||
}
|
||||
|
||||
if (empty($linea))
|
||||
continue;
|
||||
|
||||
array_push($values, $linea_coste);
|
||||
}
|
||||
} else {
|
||||
$values = [];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
private function asignar_tarifa_defecto_todos_usuarios()
|
||||
{
|
||||
|
||||
@ -59,9 +188,9 @@ class Test extends BaseController
|
||||
|
||||
$clientes = $clienteModel->getResource()->get()->getResultObject();
|
||||
|
||||
foreach ($clientes as $cliente){
|
||||
foreach ($clientes as $cliente) {
|
||||
|
||||
foreach ($plantillaDefecto as $plantillaDefectoLinea){
|
||||
foreach ($plantillaDefecto as $plantillaDefectoLinea) {
|
||||
|
||||
$data = [
|
||||
'plantilla_id' => $plantillaDefectoId,
|
||||
@ -83,137 +212,149 @@ class Test extends BaseController
|
||||
echo '</pre>';*/
|
||||
|
||||
$builder->insert($data);
|
||||
|
||||
|
||||
}
|
||||
|
||||
//break;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function init_presupuesto_encuadernacion($tipo_presupuesto, $solapas, $paginas, $tirada, $ancho, $alto, $POD){
|
||||
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){
|
||||
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){
|
||||
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){
|
||||
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){
|
||||
|
||||
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){
|
||||
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(){
|
||||
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);
|
||||
foreach ($dimensiones as $dim) {
|
||||
$dim->label = lang("TarifaEncuadernacionLineas." . $dim->label);
|
||||
}
|
||||
var_dump($dimensiones);
|
||||
}
|
||||
|
||||
|
||||
public function get_tarifas_encuadernacion($tipo_presupuesto, $solapas){
|
||||
public function get_tarifas_encuadernacion($tipo_presupuesto, $solapas)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\TipoPresupuestoTarifaEncuadernacionModel');
|
||||
return $model->get_tarifas($tipo_presupuesto,$solapas);
|
||||
}
|
||||
return $model->get_tarifas($tipo_presupuesto, $solapas);
|
||||
}
|
||||
|
||||
public function timeToSeconds(){
|
||||
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(){
|
||||
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){
|
||||
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(){
|
||||
public function createLP()
|
||||
{
|
||||
$lp_model = model('App\Models\Presupuestos\PresupuestoLineaModel');
|
||||
$lp_model->createForPresupuesto(8);
|
||||
}
|
||||
|
||||
public function getPapelesHQ(){
|
||||
public function getPapelesHQ()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('colorhq', false, false);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getPapelesCubierta(){
|
||||
public function getPapelesCubierta()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('colorhq', true, false);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getPapelesSobrecubierta(){
|
||||
public function getPapelesSobrecubierta()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('colorhq', false, true, false);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getPapelesGuardas(){
|
||||
public function getPapelesGuardas()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('color', false, false, false, true);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getGramaje(){
|
||||
public function getGramaje()
|
||||
{
|
||||
$model = new PapelGenericoModel();
|
||||
$data = $model->getGramajeComparador("AHUESADO OFFSET", "bnhq" );
|
||||
$data = $model->getGramajeComparador("AHUESADO OFFSET", "bnhq");
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function testGetPrecioPliegoRotativa()
|
||||
{
|
||||
$paginas=240;
|
||||
|
||||
$paginas = 240;
|
||||
|
||||
$papel_impresion = (object)array(
|
||||
'id' => 198,
|
||||
'gramaje' => 90,
|
||||
'precio_tonelada'=> 1600
|
||||
'precio_tonelada' => 1600
|
||||
);
|
||||
|
||||
|
||||
|
||||
$maquina = (object)array(
|
||||
//'id' => 48,
|
||||
@ -222,9 +363,8 @@ class Test extends BaseController
|
||||
);
|
||||
|
||||
$precio = PresupuestoService::getPrecioPliego($maquina, $papel_impresion, $paginas);
|
||||
|
||||
|
||||
var_dump($precio);
|
||||
|
||||
}
|
||||
|
||||
public function testGetMaquinasFromTarifas()
|
||||
@ -340,9 +480,8 @@ class Test extends BaseController
|
||||
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>';
|
||||
@ -391,18 +530,18 @@ class Test extends BaseController
|
||||
options: $opciones_papel
|
||||
);
|
||||
|
||||
|
||||
|
||||
foreach ($papeles as $papel) {
|
||||
|
||||
$papelImpresionTipologiaModel = new \App\Models\Configuracion\PapelImpresionTipologiaModel();
|
||||
$datosTipologias = $papelImpresionTipologiaModel
|
||||
->findTipologiasForPapelImpresion($papel->id, $parametrosRotativa->colorPages>0?'color':'negro')
|
||||
->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;
|
||||
@ -488,7 +627,7 @@ class Test extends BaseController
|
||||
echo '<pre>';
|
||||
var_dump($maquinas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
// Se recorren las máquinas y se calcula el coste de linea por cada una
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
@ -503,7 +642,7 @@ class Test extends BaseController
|
||||
var_dump($tarifa);
|
||||
echo '</pre>';
|
||||
|
||||
if(!is_float($tarifa)){
|
||||
if (!is_float($tarifa)) {
|
||||
continue;
|
||||
}
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
@ -519,12 +658,10 @@ class Test extends BaseController
|
||||
array_push($lineas, $linea);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '<pre>';
|
||||
var_dump($lineas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
}
|
||||
|
||||
public static function testLineasSobrecubierta()
|
||||
@ -581,7 +718,7 @@ class Test extends BaseController
|
||||
echo '<pre>';
|
||||
var_dump($maquinas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
// Se recorren las máquinas y se calcula el coste de linea por cada una
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
@ -596,7 +733,7 @@ class Test extends BaseController
|
||||
var_dump($tarifa);
|
||||
echo '</pre>';
|
||||
|
||||
if(!is_float($tarifa)){
|
||||
if (!is_float($tarifa)) {
|
||||
continue;
|
||||
}
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
@ -612,12 +749,9 @@ class Test extends BaseController
|
||||
array_push($lineas, $linea);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '<pre>';
|
||||
var_dump($lineas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user