How to use Timer on Dashboard with E-mail Notification

Check out the email module/node library

As for getting the values to set the timers via the UI, check out the time picker UI feature, which is part of the ui-text widget.

And if you need information on controlling GPIO pins.
node-red-node-pi-gpio (node) - Node-RED.

Although I like using the service or daemon based option for controlling GPIO pins.

How to implement the timers for on and off? That depends a bit on how you create the actual flow. I would work on how to use the various components above, gain some experience with same, then think about how you might want to implement the timer(s), or scheduling.