Šiame straipsnyje sužinosite, kaip įdiegti „FiscalClient“ naudodami „nuget“.
Reikalavimai
- .NET programavimo žinios
- Žinios apie „nuget“ paketų naudojimą
-
Atsisiųskite paketus
„RetailForce“.Fiscalisation - Aplinkos platforma, palaikanti „.NET Standard 2.0“
Įgyvendinimas
Konfigūracijos teikėjas
Norint išsaugoti konfigūraciją, reikalingas „FileConfigurationProvider“ su konfigūracijos failo keliu ir žurnalo registravimo įrankiu:
FileConfigurationProvider fileConfigurationProvider = new FileConfigurationProvider(System.IO.Path.Combine(this.FilesDir.ToString(), "fiscalclient.config.json"), _logger);(„Android“).
Fiskalinio modulio valdymas
Norint sukurti klientus arba įkelti konfigūraciją iš Cloud, reikalinga „FiscalModuleManagement“ klasė:
IClientStatusReporter clientStatusReporter = new EmptyClientStatusReporter();
FiscalModuleManagement moduleManagement = new FiscalModuleManagement(_logger, fileConfigurationProvider, clientStatusReporter);Žurnalo registravimo modulis yra kilęs iš „Microsoft.Extensions.Logging.ILogger“.
Reikalingas kliento būsenos pranešėjas (IClientStatusReporter). Jei būsenos ataskaitų neapdorojate patys, naudokite „EmptyClientStatusReporter“.
Kliento įkėlimas iš Cloud
Norėdami įkelti klientą iš Cloud, galite naudoti komandą „CreateClientByCloud“:
uniqueClientId = moduleManagement.CreateClientByCloud(new CompanyIdentification() { Identification = "ATU1234567", Type = CompanyIdentification.IdentificationType.VatNumber }, "T001", "T001", cloudApiKey, cloudApiSecret);Kliento sukūrimas rankiniu būdu
Klientą taip pat galima sukurti rankiniu būdu (FiscalClient). Sukūrus šią klasę, klientą galima sukurti naudojant „CreateClient“.
Sukurti fiskalinį modulį
Fiskalinį modulį galima sukurti naudojant „FiscalModuleCreator“ klasę:
CloudService cloudService = new CloudService(_logger, storageBasePath, uniqueClientId.Value, cloudApiKey, cloudApiSecret);
FiscalModulCreator creator = new FiscalModulCreator(fileConfigurationProvider, _logger, cloudService, null, clientStatusReporter);Tai sukuria fiskalinį modulį. „CloudService“ yra klasė, kuri turėtų būti išlaikyta programinėje įrangoje visą veikimo laiką. Ji rūpinasi perdavimu į debesį fone.
Ketvirtasis parametras (IotService) yra neprivalomas ir gali būti nustatytas kaip null. „FiscalModulCreator“ taip pat priima null kaip „CloudService“ vertę, tačiau toliau naudojamas „LocalMonitoringClient“ reikalauja „CloudService“.
Fiskalinio modulio sukūrimas
Inicijavus „Fiscal Module Creator“ klasę, galima sukurti fiskalinį modulį.
Fiskalinis modulis saugo savo duomenis naudodamas du saugojimo teikėjus: „FiscalDataStorageProvider“ – fiskaliniams duomenims ir „AuditLogStorageProvider“ – audito žurnalui. Vietinei saugyklai naudokite „LocalFiscalDataStorageProvider“ ir „LocalAuditLogStorageProvider“. „storageBasePath“ yra bazinis katalogas be kliento ID (Android: this.GetExternalFilesDir(Android.OS.Environment.DirectoryDocuments).AbsolutePath); audito žurnalo kelias turi turėti kliento ID.
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);Čia taip pat, jei debesų palaikymas nereikalingas, debesų saugomus duomenis („cloudApiKey“, „cloudApiSecret“) galima praleisti.
SVARBU: Client konfigūracija turi būti sukurta iš anksto. Tai galima padaryti atsisiuntus iš Cloud arba naudojant „CreateClient“ (žr. aukščiau).
Šis straipsnis buvo išverstas automatiškai.
Komentarai
0 komentarų
Tam, kad paliktumėte komentarus prisijunkite