Portuguese does not have full* morphological case marking, though it still expresses case through other methods, e.g. pronoun choice, use of prepositions, and other syntactic phenomena.
This seems to have been known for a long time: (Transtagano & Nourse 1768)
The Portuguese nouns have no variation of case, like the Latin, and it is only the article that distinguishes the case.
As you noted, the World Atlas of Language Structures doesn't list Portuguese anywhere under its "number of cases" feature, but in Chapter 49 it does generalize for the region: (Iggeson 2011)
Western Europe has no case marking, or only minimal inventories (with the striking exception of Basque).
Another generalization, this time for the whole family: (Kato 2010)
...in Romance[,] case is morphological only in pronouns.
Clements' work on the Korlai-Portuguese creole addresses Middle Portuguese directly: (1996)
...case marking for nouns does not involve paradigms in any of the three languages [including Middle Portuguese], but rather elements that are more appropriately considered syntactic phenomena...
Finally, Bick's Portuguese Syntax (2000) has a couple good quotes on the matter:
In order to force case on Portuguese nominal constituents, pronoun substitution is useful... [since only pronouns display case]
And in his conclusion on how to classify Portuguese parts of speech:
Thus, nouns, proper nouns, adjectives and (cardinal) numerals feature
number and gender [...] only number is ”free” in nouns, whereas gender is a lexeme category to be derived directly from the lexicon. [...] Personal
pronouns are morphologically special in that they also inflect for person and case.
*-Note that I used the term "full" in the beginning to highlight the fact that some authors consider pronoun selection to be "morphological case marking." The more common view however seems to be that pseudo-lexical pronoun differentiation alone does not constitute a system of overt noun case marking. From Flexible Syntax: A Theory of Case and Arguments: (Neeleman & Weerman 2001)
As an aside, it should be remarked that the mere existence of a distinction between object and subject pronouns does not mean that object pronouns bear morphological case. [...] Whether or not a language has morphological case depends, it seems, on the existence of a productive paradigm. A word-specific paradigm like (13) is insufficient to introduce the relevant features into the language.