When 'have' means something like 'take, consume, experience, etc', we use the auxiliary DO for negative and interrogative forms as we do with any other lexical verbs.She has gone out already, hasn't she?
She had a great time, didn't she?
When it means something like 'possess', DO is commonly used as an auxiliary in AmE. Those speakers of BrE who use HAVE rather than HAVE (/'VE) GOT seem to be split between those who use DO and those who don't.
When HAVE is used an auxiliary in perfect forms, DO is never used.
- For Teachers