Delivery Slot and Distance Calculator plugin has some amazing features
3) Google Maps distance Calculator
For timepicker the user select the start and end time so on the checkout only the time between those two selected times will show. User from admin side can also set the time interval/difference between two time slots. User Can also disable multiple time slots from the admin side which will be removed on the checkout page.
For the datepicker user can select week days from admin side and these days will be disable on the checkout page. User can also disable multiple dates other than the days selected above.
For google maps calculator user have to give Google Maps API key and one address on the admin side. User have to set the price per Mile/KM. The unit can also be changed from the admin side.
On checkout page the customer will enter the address. And the difference between the two address will be calculated(one address is saved on admin side and the other one entered by user). So the prices set on the admin side will be multiplied by the distance(Numeric) and will be added to the order.