U ovom članku naučit ćete kako implementirati FiscalClient koristeći nuget.
Zahtjevi
- Poznavanje .NET razvoja
- Poznavanje korištenja nuget paketa
-
Preuzmite pakete
RetailForce.Fiskalizacija - Okruženje platforme koje podržava .net Standard 2.0
Implementacija
Pružatelj konfiguracije
Za spremanje konfiguracije potrebni su vam FileConfigurationProvider s putanjom do konfiguracijske datoteke i logger:
FileConfigurationProvider fileConfigurationProvider = new FileConfigurationProvider(System.IO.Path.Combine(this.FilesDir.ToString(), "fiscalclient.config.json"), _logger);(Android).
Upravljanje fiskalnim modulom
Za stvaranje klijenata ili učitavanje konfiguracije iz oblaka potrebna vam je klasa FiscalModuleManagement:
IClientStatusReporter clientStatusReporter = new EmptyClientStatusReporter();
FiscalModuleManagement moduleManagement = new FiscalModuleManagement(_logger, fileConfigurationProvider, clientStatusReporter);Logger nasljeđuje od Microsoft.Extensions.Logging.ILogger.
Potreban je izvještač statusa klijenta (IClientStatusReporter). Ako sami ne obrađujete izvještaje o statusu, upotrijebite EmptyClientStatusReporter.
Učitavanje klijenta iz oblaka
Za učitavanje klijenta iz oblaka možete koristiti naredbu CreateClientByCloud:
uniqueClientId = moduleManagement.CreateClientByCloud(new CompanyIdentification() { Identification = "ATU1234567", Type = CompanyIdentification.IdentificationType.VatNumber }, "T001", "T001", cloudApiKey, cloudApiSecret);Ručno stvorite klijenta
Klijent se također može ručno stvoriti (FiscalClient). Nakon što je ova klasa stvorena, klijent se može stvoriti pomoću CreateClient.
Stvorite fiskalni modul
Fiskalni modul može se stvoriti pomoću klase FiscalModuleCreator:
CloudService cloudService = new CloudService(_logger, storageBasePath, uniqueClientId.Value, cloudApiKey, cloudApiSecret);
FiscalModulCreator creator = new FiscalModulCreator(fileConfigurationProvider, _logger, cloudService, null, clientStatusReporter);Time se stvara fiskalni modul. CloudService je klasa koja bi trebala ostati u softveru tijekom cijelog vremena izvođenja. Ona se brine o pozadinskom prijenosu u oblak.
Četvrti parametar (IotService) je neobavezan i može se postaviti na null. FiscalModulCreator također prihvaća null za CloudService, ali LocalMonitoringClient koji se koristi u nastavku zahtijeva CloudService.
Izrada fiskalnog modula
Nakon što je klasa Fiscal Module Creator inicijalizirana, fiskalni modul se može stvoriti.
Fiskalni modul pohranjuje svoje podatke putem dva pružatelja pohrane: FiscalDataStorageProvider za fiskalne podatke i AuditLogStorageProvider za zapisnik revizije. Za lokalno pohranjivanje koristite LocalFiscalDataStorageProvider i LocalAuditLogStorageProvider. storageBasePath je osnovni direktorij bez ID-a klijenta (Android: this.GetExternalFilesDir(Android.OS.Environment.DirectoryDocuments).AbsolutePath); putanja za zapisnik revizije mora sadržavati ID klijenta.
IMonitoringClient monitoringClient = new LocalMonitoringClient(cloudService);
FiscalDataStorageProvider storageProvider = new LocalFiscalDataStorageProvider(_logger, uniqueClientId.Value, monitoringClient, storageBasePath);
AuditLogStorageProvider auditLogStorageProvider = new LocalAuditLogStorageProvider(uniqueClientId.Value, _logger, System.IO.Path.Combine(storageBasePath, uniqueClientId.Value.ToString()));
TrustedFiscalModule fiscalModule = creator.CreateFiscalModuleForClient(uniqueClientId.Value, storageProvider, auditLogStorageProvider, cloudApiKey: cloudApiKey, cloudApiSecret: cloudApiSecret);I ovdje, ako podrška za oblak nije potrebna, cloud securables (cloudApiKey, cloudApiSecret) mogu se izostaviti.
VAŽNO: Konfiguracija klijenta mora biti prethodno kreirana. Bilo preuzimanjem iz oblaka ili putem metode CreateClient (pogledajte gore).
Ovaj je članak automatski preveden.
Komentari
0 komentara
Molimo Prijavite se kako bi ostavili komentar.