src.where.valida_data_filtro_fecha - gamboamartin/where GitHub Wiki
valida_data_filtro_fecha
La función valida_data_filtro_fecha
es una función privada que valida un filtro de fechas en un array. Asegura que el array contenga las claves requeridas (campo_1
, campo_2
, y fecha
), y que el valor asociado a fecha
sea una fecha válida.
Signatura
private function valida_data_filtro_fecha(array $fil_fecha): true|array
Parámetros
array $fil_fecha
:
Un array asociativo que debe contener las clavescampo_1
,campo_2
, yfecha
. La clavefecha
debe estar asociada a una fecha válida.
Retorna
true|array
:
Retornatrue
si la validación es exitosa. En caso de error, retorna un array de error generado por$this->error->error()
.
Explicación Detallada
-
Validación de las claves requeridas:
- La función utiliza
valida_existencia_keys()
para verificar que el array$fil_fecha
contenga las clavescampo_1
,campo_2
, yfecha
. - Si alguna de estas claves falta, se genera un mensaje de error y se retorna un array con el mensaje de error.
- La función utiliza
-
Validación de la fecha:
- La función llama a
valida_fecha()
para validar que el valor asociado a la clavefecha
sea una fecha válida. - Si la validación de la fecha falla, se genera un mensaje de error y se retorna un array con el mensaje de error.
- La función llama a
-
Retorno del resultado:
- Si todas las validaciones son exitosas, la función retorna
true
.
- Si todas las validaciones son exitosas, la función retorna
Ejemplos
$fil_fecha = [
'campo_1' => 'id_producto',
'campo_2' => 'precio',
'fecha' => '2023-08-15'
];
$resultado = $this->valida_data_filtro_fecha($fil_fecha);
// Resultado esperado:
// true (si la validación es exitosa)
// Un array de error si ocurre algún problema.
Código de la Función
private function valida_data_filtro_fecha(array $fil_fecha): true|array
{
$keys = array('campo_1','campo_2','fecha');
$valida = $this->validacion->valida_existencia_keys(keys:$keys, registro: $fil_fecha);
if(errores::$error){
return $this->error->error(mensaje: 'Error al validar filtro',data: $valida);
}
$valida = $this->validacion->valida_fecha(fecha: $fil_fecha['fecha']);
if(errores::$error){
return $this->error->error(mensaje:'Error al validar fecha',data:$valida);
}
return true;
}