On a grammatical level, "to have a good time" is complete. "Enjoy" is incomplete because it is transitive: you must tell us what is enjoyed.
As Jeff pointed out. "I had a good time watching the movie" may not be about the movie itself; perhaps the company was good, or you were already in the mood to enjoy the movie.