Why double notifications?

The question here isn't really "why double notifications?" but rather "why double events?". Your lock is creating two events for locked and two for unlocked. Your rule for notifications is just responding, as configured, to both of those.

The best solution here would probably be for staff to find out why these locks are generating two events and suppress the apparent duplicate if that is the case. For them to do that, they'd at least need to know which specific lock (brand and model) you're using what what driver you're using, assuming they are supported/compatible devices or could easily be made such. This same issue appears to have been reported elsewhere (see: Notifier sending multiple notifications for a specific lock), so it doesn't appear to be just you, but I'm not sure what locks are involved.

In the meantime, you could work around this issue. If you know RM well enough, you could create a local variable in this rule and track this, something like was done in this example for a contact sensor: "Debounce a Contact Sensor" in RM (you'd need something in both halves if your IF/ELSE).