We're in hurry as previous developer from Elance disappeared completely and deadline was last week:( If you're fast working, have reasonable hourly rate and you have time to work on this right now then you're the guy and more work available on this project immediatelly. The very first alpha version that will be developed now.
Login if you have registered already or new customers must register. When you register, you also enter in what "area" you live.
There's MySQL simple table with all 5 areas and distance between them approximately in minutes. For example:
Area1 – Area1 – 15min (always 15min if in same area).
Area1 – Area2 – 30min
Area2 – Area1 – 45min
Area1 – Area3 – 60min
Main functionality is to make the booking. You pick how many hours you need the service and the service type. Then you pick the first available date for you and check for available times.
The most complicated part to understand is how the times are shown for each day. Basically we know in what area the customer is, we also know from what area the cleaning service provider is coming and from the table above we know how many minutes it takes to come from prevous customer's area (or from office) to the customer who's doing booking.
OK, so working day starts 10am and ends 5pm and working day starts in Area1 where is office. First customer in the day sees first available time 10am + minutes it takes from Area1 to come customer's area and as it's first customer it will show all times so the work will end latest 5pm.
(Please, open now the example.xls table attached. We play through, how one day times are shown to example customers.)
Let's say Customer1 in that day is in Area2 - 30min away from Area1 and wants 1h service so displayed times: 10:30, 11:30, ..., 15:30 (16:30 would mean ending 17:30 but working day ends 17:00). Let's say customer picks 11:30. Now we have one booking 11:30 – 12:30 in Area2 (see in table).
Customer2 is Area2 and wants 1h. He sees times: (no 10:30 because 10:30 + 1h + 15min transfer is > 11:30 when it has to be in next place) 12:45, 13:45, ..., 15:45. He pics eg. 15:45.
Customer3 is in Area1 and wants 2h. He sees times: 13:00 only. He pics that. Etc. Etc.
It must be possible to see all bookings on certain day: Start time, end time & customer details.
Please, call me in Skype if you don't understand - I'm programmer myself and I can explain.
Customer can login and see his booking(s) and delete them.
Once completed the customer will be sent simple confirmation with booking details and cost depending on the amount of hours and service type. 1h of basic costs €40, in-depth €50, and in-depth + wax €55.
See all pages here: http://e-stoniaweb.eu/projects/timeslot
Also, quote separately if there will be instead of area1 - area5 google maps calculating exact distamce and travelling time from that.