Il ne faut pas confondre ces deux expressions homophones. Bien qu’elles se prononcent de la même façon, elles ont des sens différents.

Avoir affaire à

L’expression avoir affaire à est correcte en français. Elle signifie « se trouver en rapport avec ». On peut avoir affaire à une personne ou à une organisation composée de personnes (entreprise, organisme, cabinet, agence, etc.) :

L’expression peut exprimer une menace :

Avoir affaire de

L’expression avoir affaire de (quelqu’un ou quelque chose) est vieillie, rare ou littéraire dans le sens d’« avoir besoin de » :

Avoir à faire

L’expression avoir à faire signifie « devoir s’acquitter d’une tâche, d’une obligation ». Cette expression peut être utilisée avec ou sans complément, ou encore avec un adverbe de quantité.

Avoir affaire/à faire avec

Avoir affaire avec dans le sens d’« avoir à traiter avec une personne, en raison d’une certaine réciprocité » est considéré comme vieilli par certains.

L’expression avoir à faire avec/à est toutefois attestée au sens d’« avoir à faire un travail avec quelqu’un » et, par extension, d’« avoir à traiter avec quelqu’un » :

N’avoir rien à faire avec

N’avoir rien à faire avec (quelque chose) est considéré comme un anglicisme calqué sur to have nothing to do with.

On peut facilement le remplacer par n’avoir rien à voir avec/dans ou n’y être pour rien :