Holiday Notice – Support Unavailable on April 18 and April 21

We just wanted to let you know that our support team will be offline on Friday, April 18th (Good Friday) and Monday, April 21st (Easter Monday) due to the holidays.
We'll be back on Tuesday, ready to assist you!

In the meantime, if you need any help, feel free to:

Amelia YouTube Channel

wpDataTables YouTube Channel

Thank you for your understanding, and we wish you a wonderful holiday weekend!

Okay
  Public Ticket #3923960
logic issue
Open

Comments

  • Ivan started the conversation

    Hi Amelia Support Team,

    I’m currently using your plugin to manage bookings for my local tour business. I’m generally very happy with how the system works, but I’ve run into a significant limitation in the way employee scheduling and booking logic work together. I’m hoping you can suggest a solution or workaround.

    Current setup:
    • Services: 6 different tours

    • Employees: 15 taxi drivers

    • Resources: 15 vehicles (one per driver)

    • Logic: Each employee should be limited to 1 booking per day

    Service details:
    • Tours 1, 2, 3:

      • Duration: 6 hours

      • Booking times: between 07:00 and 11:00, every 30 minutes

    • Tours 4 and 5:

      • Duration: 8 hours

      • Booking times: between 06:30 and 10:00, every 30 minutes

    • Tour 6:

      • Duration: 6 hours

      • Booking times: between 14:30 and 16:00, every 30 minutes

    Problem:

    I would like all drivers to be available for all tours (both morning and afternoon), and for the system to automatically block the rest of the day once a booking is made, respecting the 1-booking-per-day limit.

    However, Amelia currently requires defining fixed “working hours” for each employee. This creates a conflict because:

    • If I set wide working hours (e.g., 06:30 to 18:00), Amelia either allows overlapping service bookings or restricts booking based on calendar logic, not the actual booking made.

    • For example, if a driver is booked for an 8-hour tour at 10:00, Amelia may not properly block the availability for the rest of the day or may prevent assignment to other services (like the afternoon tour) even if only one booking is allowed per day.

    What I need:

    A way to make all drivers available for all services, and have the system automatically block the rest of the day once a booking is confirmed—without having to split drivers into morning and afternoon shifts, which is inefficient for my operations.

    Question:

    Is there any configuration or workaround within Amelia (e.g., via resources, linked services, advanced schedule settings, or custom code/hooks) that could help implement this logic?

    I’d really appreciate any advice or solution you can provide.
    Thank you for your support!

  •  1,688
    Uroš replied

    Hello Ivan,

    Thank you for the detailed explanation—it’s clear and very helpful!

    The solution you're looking for already exists in Amelia. You can limit each driver (employee) to one booking per day by enabling the “Limit appointments per employee” option:

    ➡️ Go to Amelia > Settings > Roles > Employee
    ➡️ Enable “Limit appointments per day”
    ➡️ Set the value to 1

    This will automatically block the rest of the day for an employee once they are booked for any service, regardless of the working hours set. It’s perfect for your use case where each driver should only be assigned to one tour per day.

    Let me know if you need help setting it up!

    Kind Regards, 

    Uros Jovanovic
    [email protected]

    Rate my support

    Try our FREE mapping plugin! MapSVG - easy Google maps, interactive SVG maps, and floor plans, choropleth maps and much more - https://wordpress.org/plugins/mapsvg-lite-interactive-vector-maps/

    wpDataTables: FAQ | Facebook | Twitter | InstagramFront-end and back-end demo | Docs

    Amelia: FAQ | Facebook | Twitter | InstagramAmelia demo sites | Docs | Discord Community

    You can try wpDataTables add-ons before purchasing on these sandbox sites:

    Powerful Filters | Gravity Forms Integration for wpDataTables | Formidable Forms Integration for wpDataTables | Master-Detail Tables

  • Ivan replied

    Hi, I'm Ivan replying from other account, sorry.

    I already have this connection made and it works but the problem i'm having is that an employee cannot be assigened all the tour because the duration of those interferes with the starting time of the next tour. Let's set an example:

    TOUR 4
    Starting time: 10 am 
    Duration of tour: 8 hours

    TOUR 6
    Next starting time tour: 3pm
    Duration: 6 hours 

    If the working hours an employee has is from 7 am to 10pm, he is not available to have the 2 tours options. The system understands that if he is working at tour 4 the employee will be free at 6pm to get another tour so the logic is not allowing be available for the 2 options even if there's the limit of 1 appointment per day implemented.

    So i would like to have the employee with all assigned tours on him and whenever a tour is booked automaticly it blocks the time slot in the calendar so is not possible to have another booking till he is free. So he tour 4 is booked the same employee can't be booked for tour 6 the same day beacuse he is busy, But before that booking i have the option to pick if I want tour 4 or tour 6 with him. You understand?

    I didn't find a way to make it trough amelia, do you have any ideas to help me with this logic? Thank you somuch

  •  1,688
    Uroš replied

    Hello Ivan,

    Thank you for your message!

    I'm not entirely sure I understand what you're asking. Based on the logic you described, if one of the tours is booked for an employee, the other tour should automatically be blocked from being booked on the same day, as the employee would already be occupied.

    Could you please clarify what you're trying to achieve in a bit more detail? I'd like to make sure I can help you find the best solution.

    Looking forward to your reply!

    Kind Regards, 

    Uros Jovanovic
    [email protected]

    Rate my support

    Try our FREE mapping plugin! MapSVG - easy Google maps, interactive SVG maps, and floor plans, choropleth maps and much more - https://wordpress.org/plugins/mapsvg-lite-interactive-vector-maps/

    wpDataTables: FAQ | Facebook | Twitter | InstagramFront-end and back-end demo | Docs

    Amelia: FAQ | Facebook | Twitter | InstagramAmelia demo sites | Docs | Discord Community

    You can try wpDataTables add-ons before purchasing on these sandbox sites:

    Powerful Filters | Gravity Forms Integration for wpDataTables | Formidable Forms Integration for wpDataTables | Master-Detail Tables

  • Ivan replied

    the logic 1 appointment per day works perfect. The point is on the "work hours" in employe settings is not allowing me to have all 3 tours assigned to the same employee because  if tour 4 start 10 am to 6pm and tour 6 starts 3pm to 9pm the system understands that the employee has no free time to work in both.

    So i cannot assign the 3 tours to the same employee because the logic thinks that an employee is working from 10am to 6pm and he won't be free untill that service time is finished. So it's allowing to assign another service at 6pm, you understand? 

    Even if I have the logic 1 appointment per day and it's physically imposible to have 2 bookings at the same day, the system is not allowing to assign those 3 tours to the same employee. I want to be able to assign 3 tours at the same employee and operate from "1 appointment per day logic". Is it a way to do that?