For this kind of use case I will do the records check before persisting using if else or with the help of pattern matching. Eg:where a and b are the range of numbers from a to b, ValidationException is the custom exception which I assumed it.
If(longitude.isDefined && (a to b) contains longitude||latitude && latitude.isDefined)
throw new ValidationException("Longitude and latitude is required")
I don't think slick comes up with this kind of behaviour,for this we can have not null at the db level,let the db throw the expectation but still we can achieve this with the help of spark sql not with slick.