Have you enjoyed the party?
This is more likely to be asked during the party. But once the party is over, then you will almost always hear:
Did you enjoy the party?
I have given the documents today.
I can't think of a context when I would ever phrase it like that. Perhaps, I would use "given" not in the sense of physically handing the documents over, but in the context of:
I've given the documents another look-over, but still didn't find any glaring errors.
Here, the suggestion is that the speaker just re-read the documents. If the documents weren't just re-read, I might say:
I gave the documents another look-over, but still didn't find any glaring errors.
I gave the documents today.
This almost always needs an indirect object:
I gave our client the documents today.
I have done this when I have revised it.
I wouldn't say this. The chronology is really conflicting. "I have done this" implies that the action is done but "when I have revised it" implies that it is not done. Instead, use future tense:
I'll do this when I revise it.
I did it when I revised it.
That's a decent sentence. Although, I'd avoid using it to refer to two different things in the same sentence as it can be confusing. Try replacing the action with that. Ex.
Did you stamp the tax forms?
Yes, I did that when I revised it.
What did you do today? / What have you done today?
Both of these are commonly used sentences. They are somewhat interchangeable, but may have different meaning depending on context. Usually "what did you do?" is used at the end of the day and "what have you done?" is used during the day.
It has been 3 years since we moved house. / It has been 3 years since we have moved house.
First, "moved house" isn't really idiomatic. Usually it suffices to just say moved:
It has been 3 years since we moved.
If you want to specify to a house, perhaps try:
It has been 3 years since we moved into this house.
But you could also just say:
We moved into our house 3 years ago.
Or:
We moved 3 years ago.
These latter two are preferred because they have a meaningful subject. "It has been" can typically be avoided by flipping the sentence around like this.
Now, if you're trying to suggest that a family is constantly moving (perhaps a child is relaying their frustration about it), try:
It's been 3 years since we moved into this house. That's the longest we've been in one place, but I doubt we'll be here for much longer.