Inne – Bony

Bony

Protokół komunikacyjny dla bonów.
Używane metody Rest, kontrakt: Comarch.B2.DataService.Contracts.dll

VoucherEntity[] GetInternalVouchers(string numer)
Metoda powinna zwracać aktualną listę bonów zgodnych ze wskazanym numerem (zwykle będzie to jeden bon).

VoucherResult UpdateVouchers(VoucherEntity[] vouchers);
Metoda powinna wykonać akcję dodania/aktywacji/deaktywacji/aktualizacji poszczególnych bonów przekazanych jako parametr.

To jaka czynność ma być zrealizowana dla konkretnych bonów będzie zależało od danych zawartych w encji VoucherEntity. Istotne dane przesyłane przez POS:

VoucherEntity

Id : int Id bonu (0 jeżeli ma być utworzony)
TypeId : VoucherKindEnum Typ bonu

(Unknown, InternalSold, InternalReleased, External, GiftCard)

SortId : int Rodzaj bonu
CurrencyId : int Waluta bonu
IsActive : bool Stan bonu

True – bon wewnętrzny (sprzedany, wydany, karta) do wykorzystania (deaktywacji) lub w przypadku karty do aktualizacji stanu Amount

Number : string Numer bonu
Amount : decimal Wartość bonu

Spodziewana akcja w zależności od konfiguracji parametrów VoucherEntity przesłanych do usługi bonów (DataService) za pomocą metody UpdateVouchers:

Id SortId IsActive Akcja
External Wykorzystanie bonu zewnętrznego

Zapis na bazę jako użyty i nieaktywny na wartość określoną w Amount z walutą CurrencyId oraz numerem Number

­0 InternalReleased Wygenerowanie bonu wewnętrznego wydanego

Zapis na bazę jako aktywny i nieużyty bon na wartość Amount o numerze Number, walucie CurrencyId

>0 InternalReleased

InternalSold

GiftCard

true Wykorzystanie bonu lub aktualizacja wartości karty podarunkowej

 

>0 InternalReleased false Aktywacja istniejącego bonu wewnętrznie wydanego

Bool IsExternalVoucherExists(string numer, int sortId)
Metoda powinna sprawdzić czy istnieje już w bazie bon zewnętrzny o wskazanym numerze i rodzaju.

Czy ten artykuł był pomocny?