Dodano obsługę kart i kodów kreskowych na ekranie edycji zamówienia
Począwszy od V7Preview4, wtyczka może obsługiwać zdarzenia przewijania karty lub skanowania kodu kreskowego na ekranie edycji zamówienia.
Może to być wykorzystane na przykład do integracji z zewnętrznym systemem lojalnościowym.
Dodano dwie notyfikacje do PluginContext.Notifications:
OrderEditCardSlided— przewijanie kartyOrderEditBarcodeScanned— skanowanie kodu kreskowego
Te notyfikacje są wywoływane tylko bezpośrednio na ekranie edycji zamówienia (bez otwartych okienek) i tylko podczas przesunięcia karty lub zeskanowania kodu kreskowego, który nie został rozpoznany przez wbudowane procesory.
Przyznawanie rabatu za pomocą karty rabatowej zarejestrowanej w Syrve Office, dodawanie produktu do zamówienia za pomocą kodu kreskowego opakowania oraz inne podobne operacje działają jak dotychczas, ale jeśli przewinięta karta lub zeskanowany kod kreskowy są nieznane aplikacji Syrve POS, wtedy do akcji wkracza wtyczka.
Zarejestrowany przez wtyczkę handler otrzyma kod kreskowy lub szczegóły karty i będzie musiał zgłosić wynik — czy notyfikacja została uznana za przetworzoną.
Jeśli wtyczka zgłosi, że zdarzenie zostało przetworzone, proces się kończy i nie będą wywoływane handlery innych wtyczek.
Jeśli wtyczka nie rozpozna kodu kreskowego lub karty, powinna zwrócić false, aby wywołane zostały handlery innych wtyczek.
Jeśli zdarzenie ostatecznie pozostanie nieprzetworzone, użytkownik otrzyma standardowy komunikat informujący, że przesunięta karta lub zeskanowany kod kreskowy są nieznane systemowi.
Podczas przetwarzania notyfikacji na ekranie wyświetlany jest pasek postępu.
Oprócz danych kodu kreskowego lub karty, wtyczka otrzyma bieżące zamówienie, lokalną wersję IOperationService do edycji bieżącego zamówienia, a także IViewManager z możliwością wyświetlania okien dialogowych oraz zmiany tekstu na pasku postępu.
Przykłady użycia zostały dodane do SamplePlugin: OrderEditScreen.AddProductByBarcode oraz OrderEditScreen.AddDiscountByCard.