Karenderia is a multiple restaurant system programed in Yii framework, PHP.
[login to view URL]
I want to add the following feature:
- ADD 2 tables in the admin panel where admin can limit the maximun incoming orders for each time slot of 20min between 9AM and 23:00PM. It could be a 42 rows table, with the 20min time span label on one column and an input box or dopdow next to that, where admin can set the maximun number of order in each time slot. It would have a checkbox to apply the limit.
checkbox 9:00-9:20. 8
checkbox 9:20-9:40. 10
checkbox 9:40-10:00 0
The two tables would have the same format but with different meanings. The meaning of one of the tables would be max number of order per restaurant (there will be only one table for all restaurants because all restaurants will have the same limit set by admin) and the other table would mean max number orders taking into account the sum of all orders of all restaurants in each particular time span. Basically it would be the same table with different meaning. Admin will have to select if he sets a limitation with table 1 (limitin max orders per restaurant) or with table 2 (limiting the addition of orders of all restaurants) or if the is no limitation.
- ADD 1 table in the config panel of the restaurants, with the same 42 rows (exactly the same table). In this table the restaurant can set the limit of each time slot for his particular restaurant.
When the client selects a time in the time picker and presses ORDER, the system would check if a limitation is set by admin or merchant. In case there is a limitation set by merchant, it will check in the DB how many orders have been made for the same 20min timeslot of the current purchase. In case the number of purchases is less than the max set by the merchant for that particular time slot, it will check if there is a limit set by admin. If there is no limit set by admin, it will proceed with the order. If there is a limit set by admin , it will check if the limit is per restaurant or for the sum of all restaurants. Depending which one , it will check the number of orders of that particular restaurant in the selected time slot, or it will check the sum of all orders of all restaurants in that particular time slot. if the limit set by admin is higher, it will proceed with the order, otherwise it will alert the client that the selected time slot is full.
- If a time slot is already full, it could change color to gray or disable the time shown in the timepicke.
- Show with a number the available # of orders for each timeslot nex to the time in the time picker.
example time picker:
19:05 (0) - gray color or no selectable
The time picker will show a time (not a time span). The system will check the time span that time belongs to decide the limit to apply.
time spans in the table of the config panel:
time picker will show. 19:35 (2)
I am open to suggestions and inprovements.