Skip to content

Reimplementation of pickup warning

KoeMai requested to merge 648-fix-pickup-warning-bells-slot-0 into master

Closes #648 (closed)

What does this MR do?

The currently used E-Mail notification for store manager uses only regular pickup information in combination with the foodsavers in slots. This makes trouble with manually planned pickups or deleted pickups. Users get to much E-Mails with invalid information.

This MR replaces the old notification system with a PHP implementation (Reuse existing code and make the information process clear). The new implementation

  • merges the information from regular pickups and manual pickups (One list of pickups)
  • adds the fetcher/signup information to the pickups for detection of empty pickups
  • Informs the store managers about empty slots (not active)

How confident are you it won't break things if deployed?

I can not see the impact.

Links to related issues

https://yunity.slack.com/archives/C1T1ZM9A4/p1671705674878109 https://yunity.slack.com/archives/C1T1ZM9A4/p1671713891056539

How to test

Good questions, I created

  • Create many unit tests (Not for existing code)
  • Created integration test on service level and maintenance service level (The StoreMaintainceTransactionsTest should show the typical pickup types)
  • CLI test.

This command is used by the cron job and should run successful.

Checklist

  • added a test, or explain why one is not needed/possible...
  • no unrelated changes
  • asked someone for a code review
  • set a "for:" label to indicate who will be affected by this change
  • added to the next milestone (see https://gitlab.com/foodsharing-dev/foodsharing/-/milestones, unless it has a "for:Dev" label)
  • added an entry to CHANGELOG.md
  • added a short text that can be used in the release notes
  • Once your MR has been merged, you are responsible to create a testing issue in the Beta Testing forum: https://foodsharing.de/?page=bezirk&bid=734&sub=forum. Please change the MRs label to "state:Beta testing".
    • Consider writing a detailed description in German.
    • Describe in a few sentences, what should be tested from a user perspective.
    • Also mention different settings (e.g. different browsers, roles, ...) how this change can be tested.
    • Be aware, that also non technical people should understand.

Release notes text in German

Anzahl der unnötigen E-Mail Benachrichtungen reduziert. Hierzu wurde den die Manuellen Abholungen in der Auswertung mit berücksichtigt. Dies erlaubt es Betriebsurlauber über "Slot"-Anzahl 0 einzusetzen sowie Benachrichtungen für Zusatztermine zu erhalten.

Closes #648 (closed)

Edited by KoeMai

Merge request reports