Hashing alone cannot ensure integrity. If you assume the file can be manipulated by an attacker, then nothing prevents this attacker form also changing the hash and making it match the new file content. Integrity requires a digital signature or a message authentication code (the first is a public-key solution, the latter a symmetric approach).
But, yes, TLS already ensures integrity for the network connection between the client and the TLS server. There's no need for extra signatures or message authentication code, unless you require them outside of the TLS connection. For example, if the TLS connection is terminated before the actual server application, then it might make sense to have application-level integrity protection which covers the entire transmission from client app to server application. But this depends on the exact infrastructure and the requirements.
If you mean “integrity” outside the context of security (i.e., protecting data from accidental corruption rather than deliberate manipulation), see the answer of JimmyJames.