Time with my gf is definitely scheduled on a week-to-week basis. I prefer that, actually. My moods change, and I couldn't do a "Thursday is always date night" schedule because what if I wanted to do something else on Thursday?
You've asked her to phone before coming over, and it sounds like she's not respecting that. So put your foot down on that point. Every single time she comes over without calling first, whether or not you really mind her being there that particular time, tell her "Sorry, we've asked you to call before coming. We're having family time now, please come back a different night. Remember to call first."
I would also take away the key and change the security code. Those are for people who live with you. Next time she comes over, just ask for the key back. Even if she has another copy, you're going to change the security code. Nothing says "You're not welcome here right now" like cops showing up, locked and loaded...
“As I am sure any cat owner will be able to tell you,
someone else putting you in a box is entirely different
from getting into a box yourself.” —bisexualbaker