Table of Contents

Class TokenWalletService

Namespace
UsluzionicaServer.Services
Assembly
UsluzionicaServer.dll

Token modul: wallet (balans + ledger), discount token ponude, referral statistika.

public sealed class TokenWalletService
Inheritance
TokenWalletService
Inherited Members

Constructors

TokenWalletService(AppDbContext, IConfiguration, NotificationService, BlockService, ILogger<TokenWalletService>)

Token modul: wallet (balans + ledger), discount token ponude, referral statistika.

Methods

AcceptOfferAsync(int, string)

Provider prihvata ponudu. Vrši transfer tokena od pošiljaoca ka primaocu i kreira 2 TokenTransaction zapisa.

CreateOfferAsync(string, CreateDiscountOfferDto)

Klijent šalje token ponudu provideru za određeni listing. Tokeni se NE rezervišu odmah — proveravaju se pri prihvatanju.

GetBalanceAsync(string)

Trenutni token balans prijavljenog korisnika.

GetIncomingOffersAsync(string)

Ponude koje je korisnik PRIMIO (kao provider/primalac).

GetMyCodeAsync(string)

Sopstveni referral kod sa shareable linkom.

GetOutgoingOffersAsync(string)

Ponude koje je korisnik POSLAO (kao klijent/pošiljalac).

GetReferralStatsAsync(string)

Statistika referral programa — ukupno pozvano, koliko je postalo provajder, ukupna zarada.

GetTransactionsAsync(string, int, int)

Paginovani ledger svih token transakcija korisnika. Sortiran od najnovije.

RejectOfferAsync(int, string)

Provider odbija ponudu. Nema tokens movementa — tokeni nisu bili rezervisani.