feat: implement SalesInvoiceTspSwitchService and SalesInvoiceTspService for handling TSP provider interactions

- Add SalesInvoiceTspSwitchService to manage TSP provider selection and sending invoices.
- Introduce SalesInvoiceTspService for creating, sending, and retrieving sales invoices.
- Implement NamaProviderSwitchAdapter for communication with the NAMA TSP provider API.
- Define DTOs for request and response structures specific to the NAMA provider.
- Enhance error handling and logging for TSP provider interactions.
This commit is contained in:
2026-05-03 16:23:17 +03:30
parent ad470d2166
commit a486127ade
62 changed files with 4136 additions and 5015 deletions
+15 -15
View File
@@ -13,13 +13,9 @@ import {
ConsumerStatus,
ConsumerType,
CustomerType,
FiscalInvoiceCustomerType,
FiscalRequestType,
FiscalResponseStatus,
GoodPricingModel,
LicenseStatus,
LicenseType,
PartnerFiscalSwitchType,
PartnerRole,
PartnerStatus,
PaymentMethodType,
@@ -30,6 +26,10 @@ import {
ProviderStatus,
SKUGuildType,
TokenType,
TspProviderCustomerType,
TspProviderRequestType,
TspProviderResponseStatus,
TspProviderType,
UnitType,
UserStatus,
UserType,
@@ -79,10 +79,7 @@ export class EnumsService {
ConsumerStatus: this.prepareData(ConsumerStatus, 'ConsumerStatus'),
ConsumerType: this.prepareData(ConsumerType, 'ConsumerType'),
PartnerStatus: this.prepareData(PartnerStatus, 'PartnerStatus'),
PartnerFiscalSwitchType: this.prepareData(
PartnerFiscalSwitchType,
'PartnerFiscalSwitchType',
),
TspProviderType: this.prepareData(TspProviderType, 'TspProviderType'),
ApplicationPlatform: this.prepareData(ApplicationPlatform, 'ApplicationPlatform'),
ApplicationReleaseType: this.prepareData(
ApplicationReleaseType,
@@ -93,14 +90,17 @@ export class EnumsService {
'ApplicationPublisher',
),
CustomerType: this.prepareData(CustomerType, 'CustomerType'),
FiscalResponseStatus: this.prepareData(
FiscalResponseStatus,
'FiscalResponseStatus',
TspProviderResponseStatus: this.prepareData(
TspProviderResponseStatus,
'TspProviderResponseStatus',
),
FiscalRequestType: this.prepareData(FiscalRequestType, 'FiscalRequestType'),
FiscalInvoiceCustomerType: this.prepareData(
FiscalInvoiceCustomerType,
'FiscalInvoiceCustomerType',
TspProviderRequestType: this.prepareData(
TspProviderRequestType,
'TspProviderRequestType',
),
TspProviderCustomerType: this.prepareData(
TspProviderCustomerType,
'TspProviderCustomerType',
),
SKUGuildType: this.prepareData(SKUGuildType, 'SKUGuildType'),
}