Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The following details quoted are from:

Jira Legacy
serverSystem JIRA
serverId255417eb-03fa-3e2f-a6ba-05d325fec50d
keyTRX-397
. To have the more updated details check on the Jira.

...

Reinforcing the Acceptance Criteria

  • If a store has only delivery time open AND delivery time close set (the default infos, without the additional time slot)

    • Display the information as they are right now (in the image above the “Take Away” info)

  • If a store has delivery time open AND delivery time close AND dinner time open AND dinner time close (in the end, this means that we’ll need all four infos)

    • Display both slots (breaking time) to the guest in the FE (the “Delivery Hours” section in the image above)

  • We’ll always show the information with high priority on the Store Locator page. As the Figma example the “Take Away/Dine in Hours” will decide what will be shown: ← Validate this with Simon/Intl

  • We’ll keep the logic made for restaurants that closes after midnight ← Validate this with Simon/Intl

  • Do we’ll need to consider other open/close rules? ← Validate this with Simon/Intl

Tasks breakdown

Did research in the code and discovered that we had an implementation regarding this on this PR: https://github.com/rbilabs/intl-whitelabel-app/pull/1686 but reverted here. By the revert description, the cause was “We need to revert this because of a mistake in the requirements.” ← Understand what was this mistake Simon/Intl

We have the option to bring the reverted PR back or work againon the same adjust:

The following solutions and tasks are based on the solution proposed by Odang, Kristoforus. Kudos to himare based on the solution proposed by Odang, Kristoforus. Kudos to him.

Note: For the Store Locator page we think that will be not necessary to show the information regarding the breaking time hours as this only will work for Delivery Hours. The highlight information will be about the “Take Away/Dine in Hours” meaning that we’ll not need to pass down this info through the components.

Task 1 - Generate missing Sanity Graphql and add additional info on mergeRestaurantData

...

Now our highlight feature needs to be adjusted to deal with this new hours information. To be more didactic I’ll considere the following for the rest of this task:

  • Today opening hour = general opening hour

  • Today closing hour = breaking time closing hour

  • Additional opening hour = breaking time opening hour

  • Additional closing hour =general closing hour

And to help even more, lets visualize this example:

Time

Sanity label (Delivery hours)

Meaning to the business

09:00:00

Monday Time Open

general opening hour

12:00:00

Monday Time Close

breaking time closing hour

15:00:00

Additional Time Slot - Opens agains at

breaking time opening hour

22:00:00

Additional Time Slot - Closes

general closing hour

Option 1 - Keep the code that we have there and add new logic

  • We’ll have new validations if we receivebreaking time opening hour AND breaking time closing hour (meaning that we’ll have the four hours). This is a way to deal with it. If we don’t have this information we’ll keep the logic that we have implemented today

    • Open’s at (1 hour to open rule):

      • Time now <=general opening hour OR (Time now >= breaking time closing hour && Time now <= breaking time opening hour)

    • Closed now:

      • Time now >= breaking time closing hour ANDTime now>= general closing hour

      • Time now <=general opening hour (out of the 1 hour to open rule)

      • Time now >= breaking time closing hour ANDTime now<= breaking time opening hour (out of the 1 hour to open rule)

    • Open now:

      • Time now >= general opening hour AND Time now <= breaking time closing hour OR Time now >= breaking time opening hour AND Time now <= general closing hour (out of the 1 hour close rule)

    • Close’s at (1 hour to close rule):

      • Time now>= general opening hour AND Time now <= breaking time closing hour OR Time now >= breaking time opening hour AND Time now <= general closing hour (inside 1 hour close rule)

...

As a suggestion we can always look through the input that we’re receiving. This will guide which method/logic we’ll need to call. We can also define/discuss this in an A&D section.

DOD Like

  • Adjust the unit tests for the new implementation/refactor

  • Manually test if all is good with:

    • Regular logic rules

    • Restaurants that close after midnight rules

    • Breaking time rules