administrador.base.orm.inicializacion.status.21.18.0 - gamboamartin/administrador GitHub Wiki

status

Esta función privada se utiliza para verificar y ajustar el estado de un registro en un arreglo de datos. Verifica si el estado está presente en el registro y, si no lo está y se integran datos de la base, establece el estado predeterminado especificado.

Signatura

private function status(bool $integra_datos_base, array $registro, string $status_default): array

Parámetros

  • $integra_datos_base (bool): Un indicador booleano que especifica si se integran datos de la base de datos.
  • $registro (array): El arreglo de datos que contiene el registro a verificar y ajustar.
  • $status_default (string): El estado predeterminado a asignar si no está presente en el registro.

Retorna

  • Tipo: array
  • Descripción: El arreglo de datos con el estado ajustado, si es necesario.

Explicación Detallada

Validación del estado predeterminado: Se verifica si el estado predeterminado ($status_default) está vacío. Si lo está, se devuelve un mensaje de error.

Verificación del estado en el registro: Se verifica si el estado está presente en el registro ($registro). Si no está presente y se integran datos de la base de datos ($integra_datos_base es true), se asigna el estado predeterminado al registro.

Retorno del registro ajustado: Se devuelve el registro con el estado ajustado, si es necesario.

Ejemplos

// Ejemplo: Verificar y ajustar el estado del registro
$integra_datos_base = true;
$registro = ['id' => 1, 'nombre' => 'Ejemplo'];
$status_default = 'pendiente';
$resultado_status = status($integra_datos_base, $registro, $status_default);
// El estado no estaba presente en el registro, se establecerá el estado predeterminado
echo "Estado del registro: " . $resultado_status['status']; // Salida: Estado del registro: pendiente

Código de la Función

private function status(bool $integra_datos_base, array $registro, string $status_default): array
    {
        $status_default = trim($status_default);
        if($status_default === ''){
            return $this->error->error(mensaje: 'Error status_default no puede venir vacio', data: $status_default,
                es_final: true);
        }

        if(!isset($registro['status'])){
            if($integra_datos_base){
                $registro['status'] = $status_default;
            }
        }
        return $registro;
    }