25 lines
886 B
Java
25 lines
886 B
Java
package application.helper;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import java.util.Optional;
|
|
|
|
@Slf4j
|
|
public class CustomerHelper {
|
|
/**
|
|
* Construye de forma segura un ID de cliente a partir de su tipo y número.
|
|
*
|
|
* @param idType El tipo de identificación (ej. "V", "J").
|
|
* @param idNumber El número de identificación.
|
|
* @return Un {@link Optional} con el ID concatenado si ambos parámetros son válidos (no nulos ni vacíos),
|
|
* o un {@code Optional.empty()} en caso contrario.
|
|
*/
|
|
public static Optional<String> buildCustomerId(String idType, String idNumber) {
|
|
return Optional.ofNullable(idType)
|
|
.filter(type -> !type.isBlank())
|
|
.flatMap(type -> Optional.ofNullable(idNumber)
|
|
.filter(number -> !number.isBlank())
|
|
.map(number -> type + number));
|
|
}
|
|
|
|
} |