where(['is_deleted' => 0])->findAll(); // Iterar sobre cada entidad echo '
';
        foreach ($results as $result) {
            // Cada $result es una instancia de una entidad
            print_r($result->toArray());  // Convierte la entidad a un array para imprimir sus valores
        }
        echo '
'; } public function get_tarifa_encuadernacion($tarifaEncuadernacionId) { // Llamar a los modelos $modelTE = model('App\Models\Tarifas\TarifaEncuadernacionModel'); $modelTELineas = model('App\Models\Tarifas\TarifaEncuadernacionLineaModel'); $modelTELineasHoras = model('App\Models\Tarifas\TarifaEncuadernacionLineaHorasModel'); $modelTETiradas = model('App\Models\Tarifas\TarifaEncuadernacionTiradaModel'); // Obtener el registro principal de tarifa_encuadernacion $tarifas_encuadernacion = $modelTE->where([ 'id' => $tarifaEncuadernacionId, 'is_deleted' => 0 ])->findAll(); // Verificar si se encontró la tarifa if (empty($tarifas_encuadernacion)) { echo "No se encontraron datos para la tarifa de encuadernación con ID: $tarifaEncuadernacionId."; return; } // Imprimir la tarifa de encuadernación principal echo "

---------------------- DATO TARIFA ENCUADERNACION ----------------------

"; foreach ($tarifas_encuadernacion as $tarifa_encuadernacion) { echo "ID Tarifa: " . $tarifa_encuadernacion->id . "
"; echo "Nombre: " . $tarifa_encuadernacion->nombre . "
"; echo "
"; } // Obtener las tiradas asociadas a esta tarifa de encuadernación $tarifas_encuadernacion_tiradas = $modelTETiradas->where([ 'tarifa_encuadernacion_id' => $tarifaEncuadernacionId, 'is_deleted' => 0 ])->findAll(); // Verificar si existen tiradas para la tarifa de encuadernación if (empty($tarifas_encuadernacion_tiradas)) { echo "No hay tiradas asociadas a esta tarifa de encuadernación."; return; } // Imprimir las tiradas asociadas echo "

---------------------- DATO TARIFA ENCUADERNACION (TIRADAS) -------------

"; foreach ($tarifas_encuadernacion_tiradas as $tarifa_encuadernacion_tirada) { echo "ID Tirada: " . $tarifa_encuadernacion_tirada->id . "
"; echo "Tirada Min: " . $tarifa_encuadernacion_tirada->tirada_min . "
"; echo "Tirada Max: " . $tarifa_encuadernacion_tirada->tirada_max . "
"; // Obtener las líneas asociadas a esta tirada $tarifas_encuadernacion_lineas = $modelTELineas->where([ 'tirada_encuadernacion_id' => $tarifa_encuadernacion_tirada->id, 'is_deleted' => 0 ])->findAll(); // Verificar si existen líneas asociadas a la tirada if (empty($tarifas_encuadernacion_lineas)) { echo "No hay líneas asociadas a esta tirada de encuadernación.
"; } else { // Imprimir las líneas asociadas echo ""; } // Obtener las líneas y horas asociadas a esta tirada $tarifas_encuadernacion_lineas_horas = $modelTELineasHoras->where([ 'tirada_encuadernacion_id' => $tarifa_encuadernacion_tirada->id, 'is_deleted' => 0 ])->findAll(); // Verificar si existen líneas y horas asociadas a la tirada if (empty($tarifas_encuadernacion_lineas_horas)) { echo "No hay líneas y horas asociadas a esta tirada de encuadernación.
"; } else { // Imprimir las líneas asociadas echo ""; } echo "
"; } echo "

---------------------- FIN DE DATO TARIFA ENCUADERNACION ----------------------

"; } public function delete_tarifa_encuadernacion($tarifaEncuadernacionId) { // Llamar a los modelos $modelTE = model('App\Models\Tarifas\TarifaEncuadernacionModel'); $modelTELineas = model('App\Models\Tarifas\TarifaEncuadernacionLineaModel'); $modelTELineasHoras = model('App\Models\Tarifas\TarifaEncuadernacionLineaHorasModel'); $modelTETiradas = model('App\Models\Tarifas\TarifaEncuadernacionTiradaModel'); // Obtener el registro principal de tarifa_encuadernacion $tarifas_encuadernacion = $modelTE->where([ 'id' => $tarifaEncuadernacionId, 'is_deleted' => 0 ])->findAll(); // Verificar si se encontró la tarifa if (empty($tarifas_encuadernacion)) { echo "No se encontró la tarifa de encuadernación con ID: $tarifaEncuadernacionId."; return; } // Iniciar eliminación de datos asociados echo "Eliminando datos asociados a la tarifa de encuadernación ID: $tarifaEncuadernacionId...
"; // Eliminar las tiradas asociadas a la tarifa de encuadernación $tarifas_encuadernacion_tiradas = $modelTETiradas->where([ 'tarifa_encuadernacion_id' => $tarifaEncuadernacionId, 'is_deleted' => 0 ])->findAll(); if (!empty($tarifas_encuadernacion_tiradas)) { foreach ($tarifas_encuadernacion_tiradas as $tarifa_encuadernacion_tirada) { // Eliminar las líneas de horas asociadas a cada tirada $tarifas_encuadernacion_lineas_horas = $modelTELineasHoras->where([ 'tirada_encuadernacion_id' => $tarifa_encuadernacion_tirada->id, 'is_deleted' => 0 ])->findAll(); if (!empty($tarifas_encuadernacion_lineas_horas)) { foreach ($tarifas_encuadernacion_lineas_horas as $tarifa_encuadernacion_linea_hora) { $modelTELineasHoras->delete($tarifa_encuadernacion_linea_hora->id); // Eliminar la línea/hora echo "===sk >-Eliminando Línea/Hora ID: " . $tarifa_encuadernacion_linea_hora->id . "
"; } } // Eliminar las líneas asociadas a cada tirada $tarifas_encuadernacion_lineas = $modelTELineas->where([ 'tirada_encuadernacion_id' => $tarifa_encuadernacion_tirada->id, 'is_deleted' => 0 ])->findAll(); if (!empty($tarifas_encuadernacion_lineas)) { foreach ($tarifas_encuadernacion_lineas as $tarifa_encuadernacion_linea) { $modelTELineas->delete($tarifa_encuadernacion_linea->id); // Eliminar la línea echo "===>-Eliminando Línea ID: " . $tarifa_encuadernacion_linea->id . "
"; } } // Eliminar la tirada $modelTETiradas->delete($tarifa_encuadernacion_tirada->id); // Eliminar la tirada echo "=>-Eliminando Tirada ID: " . $tarifa_encuadernacion_tirada->id . "
"; } } echo " *** Proceso de eliminación completado. ***

"; } public function clone_tarifa_encuadernacion($origenId, $destinoId) { // Llamar a los modelos $modelTETiradas = model('App\Models\Tarifas\TarifaEncuadernacionTiradaModel'); $modelTELineas = model('App\Models\Tarifas\TarifaEncuadernacionLineaModel'); $modelTELineasHoras = model('App\Models\Tarifas\TarifaEncuadernacionLineaHorasModel'); // 1. Eliminar el contenido asociado de la tarifa destino $this->delete_tarifa_encuadernacion($destinoId); // 2. Obtener las tiradas asociadas a la tarifa origen $tiradasOrigen = $modelTETiradas->where([ 'tarifa_encuadernacion_id' => $origenId, 'is_deleted' => 0 ])->findAll(); foreach ($tiradasOrigen as $tiradaOrigen) { // Crear un nuevo registro para la tirada en la tarifa destino $nuevaTirada = [ 'tarifa_encuadernacion_id' => (int) $destinoId, 'proveedor_id' => (int) $tiradaOrigen->proveedor_id, 'importe_fijo' => (float) $tiradaOrigen->importe_fijo, 'tirada_min' => (int) $tiradaOrigen->tirada_min, 'tirada_max' => (int) $tiradaOrigen->tirada_max, 'user_created_id' => (int) auth()->id(), 'is_deleted' => 0 ]; try { $nuevaTiradaId = $modelTETiradas->insert($nuevaTirada); if (!$nuevaTiradaId) { throw new \Exception("Error al insertar el registro."); } echo "
==>+Tirada creada con ID: " . $nuevaTiradaId; } catch (\Exception $e) { echo "Error: " . $e->getMessage(); } // 3. Clonar las líneas asociadas a esta tirada $lineasOrigen = $modelTELineas->where([ 'tirada_encuadernacion_id' => $tiradaOrigen->id, 'is_deleted' => 0 ])->findAll(); foreach ($lineasOrigen as $lineaOrigen) { $nuevaLinea = [ 'tirada_encuadernacion_id' => (int) $nuevaTiradaId, 'paginas_libro_min' => (float) $lineaOrigen->paginas_libro_min, 'paginas_libro_max' => (float) $lineaOrigen->paginas_libro_max, 'dimensiones_id' => (int) $lineaOrigen->dimensiones_id, 'precio_min' => (float) $lineaOrigen->precio_min, 'precio_max' => (float) $lineaOrigen->precio_max, 'tirada_min' => (float) $lineaOrigen->tirada_min, 'tirada_max' => (float) $lineaOrigen->tirada_max, 'total_min' => (float) $lineaOrigen->total_min, 'margen' => (float) $lineaOrigen->margen, 'user_created_id' => (int) auth()->id(), 'is_deleted' => 0 ]; try { $nuevaLineaId = $modelTELineas->insert($nuevaLinea); if (!$nuevaLineaId) { throw new \Exception("Error al insertar el registro."); } echo "
====>+Linea creada con ID: " . $nuevaLineaId; } catch (\Exception $e) { echo "Error: " . $e->getMessage(); } } // 4. Clonar las líneas y horas asociadas a esta tirada $lineasHorasOrigen = $modelTELineasHoras->where([ 'tirada_encuadernacion_id' => $tiradaOrigen->id, 'is_deleted' => 0 ])->findAll(); foreach ($lineasHorasOrigen as $lineaHoraOrigen) { $nuevaLineaHora = [ 'tirada_encuadernacion_id' => (int) $nuevaTiradaId, 'tiempo_min' => (float) $lineaHoraOrigen->tiempo_min, 'tiempo_max' => (float) $lineaHoraOrigen->tiempo_max, 'precio_hora' => (float) $lineaHoraOrigen->precio_hora, 'total_min' => (float) $lineaHoraOrigen->total_min, 'margen' => (float) $lineaHoraOrigen->margen, 'user_created_id' => (int) auth()->id(), 'is_deleted' => 0 ]; try { $nuevaLineaHoraId = $modelTELineasHoras->insert($nuevaLineaHora); if (!$nuevaLineaHoraId) { throw new \Exception("Error al insertar el registro."); } echo "
====>+Linea/Hora creado con ID: " . $nuevaLineaHoraId; } catch (\Exception $e) { echo "Error: " . $e->getMessage(); } } } echo "
*** Proceso de clonacion completado. ***

"; } }