Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specify upcoming dates where the client has chosen not to receive any meal #52

Open
guillaumep opened this issue Jan 9, 2021 · 7 comments
Assignees
Labels
Old P2 Old Priority 2

Comments

@guillaumep
Copy link
Member

guillaumep commented Jan 9, 2021

As a Client coordinator
I want to specify upcoming dates where the client has chosen not to receive any meal
So that when the orders are generated each day, no order will be created for these dates

Acceptance criteria

  • I can specify upcoming dates where a client has chosen not to receive any meal ("upcoming meals cancelations")
    • When the orders are (manually) generated each day, no order will be created for these dates for these clients
  • The client can change its mind, so I must be able to remove these dates from the system (i.e. the order generation will proceed as usual for this date)
  • I can view the list of these upcoming dates in the client's data
  • [To validate] I can view the history of the changes to the upcoming meals cancelation.

Context

This user story is to solve the issues presented in savoirfairelinux#838. In short, currently Sous-Chef generates orders for the next 90 days through a cron job. This was to allow manual modification of upcoming orders following client's needs (i.e. add, modify or cancel a meal for an upcoming date). However, the current implementation fails to work as when we change the meals defaults the upcoming orders are not regenerated.

So instead of trying to implement the regeneration of upcoming orders and deal with the complexity that ensues, we will instead completely stop generating upcoming orders, and generate them anew each day. This is already what is done in practice by the staff at the moment: each day they remove the order and regenerate them, then modify the days orders based on a separate spreadsheet database maintained manually called the blue book.

We want to get rid of that manual process. We can do so by doing the following:

  • stop generating upcoming orders automatically
  • allow and encourage manual creation of orders for upcoming days. These orders will contain changes to the planned meal schedule for that client.
  • keep track of upcoming dates where the client wants not to receive meals (because of vacations for instance) (this current user story)
@guillaumep
Copy link
Member Author

@louhibi I've only discussed briefly with Brooke regarding this, I'm still not sure how we will name this feature, so its best not to tackle this one yet.

@louhibi
Copy link

louhibi commented Jan 10, 2021

is Keeping a history of all the changes to the upcoming meals important ?

@brookesantropol
Copy link

This could be called "Cancel meal" or "Meal cancellation".

What is most critical is that the Generate Orders command in the Kitchen Count does not override any placed or cancelled meals.

Also, if a client places orders for the month, but later modifies their preferences (ie changing their side), we would then need to check their future orders to manually make the modification. This happens rarely. Is there a way to be notified that a client has future orders, and validate if they need to be modified?

@louhibi I can see how knowing if a modification, cancellation or addition was made would be helpful, and by which user, but not necessarily which exact change was made. This might depend on the complexity of the task, and also on where this information is accessible.

@louhibi
Copy link

louhibi commented Jan 12, 2021

This could be a calendar where we can click on dates to add cancellation, I am assuming this is used only for ongoing type not the episodic one.
I made a simple mockup adding a calendar in the preferences of the client.
upcoming meals cancellation

Edit: this is not representative of the final UI, it's just something that I did quickly to start the UI discussion.

@brookesantropol
Copy link

@louhibi yes - this would be for ongoing clients only. I think the calendar example is great!

louhibi pushed a commit to louhibi/sous-chef that referenced this issue Jan 30, 2021
guillaumep pushed a commit to guillaumep/sous-chef that referenced this issue Feb 12, 2021
louhibi pushed a commit to louhibi/sous-chef that referenced this issue Feb 13, 2021
louhibi pushed a commit to louhibi/sous-chef that referenced this issue Feb 13, 2021
louhibi pushed a commit to louhibi/sous-chef that referenced this issue Feb 13, 2021
guillaumep pushed a commit to guillaumep/sous-chef that referenced this issue Feb 19, 2021
guillaumep pushed a commit to guillaumep/sous-chef that referenced this issue Mar 2, 2021
guillaumep pushed a commit to guillaumep/sous-chef that referenced this issue Mar 2, 2021
louhibi pushed a commit to louhibi/sous-chef that referenced this issue Mar 7, 2021
louhibi pushed a commit to louhibi/sous-chef that referenced this issue Mar 7, 2021
guillaumep pushed a commit to guillaumep/sous-chef that referenced this issue Mar 7, 2021
guillaumep pushed a commit to guillaumep/sous-chef that referenced this issue Mar 7, 2021
@guillaumep guillaumep assigned guillaumep and unassigned louhibi Mar 12, 2021
@brookesantropol
Copy link

The location of this function should be on the Client's Orders page, which is where we go to see upcoming orders.

It could also be a function to Add a Cancelation to the main Orders page (not directly on the client's page), where you can essentially add a cancelled order to any client for the future.

@guillaumep guillaumep added the Old P2 Old Priority 2 label Mar 12, 2021
@brookesantropol
Copy link

List all Cancelled orders for the day at the bottom of the list of Orders for the day in the Kitchen Count > Orders tab, with the heading "Cancelled orders".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Old P2 Old Priority 2
Projects
None yet
Development

No branches or pull requests

3 participants