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 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)); } }