feat: add stock keeping unit management with create, update, and retrieval functionalities

- Implemented CreateStockKeepingUnitDto for creating stock keeping units.
- Added StockKeepingUnitsService for handling business logic related to stock keeping units.
- Created StockKeepingUnitsController to manage HTTP requests for stock keeping units.
- Developed UpdateStockKeepingUnitDto for updating existing stock keeping units.
- Introduced StockKeepingUnitsServiceFindAllResponseDto for response structure.
- Established stock keeping units module for encapsulation of related components.

feat: enhance sales invoice fiscal management with new endpoints

- Created SalesInvoicesFilterDto for filtering sales invoices.
- Implemented PosSalesInvoiceFiscalController for managing fiscal operations on sales invoices.
- Developed PosSalesInvoiceFiscalService to handle fiscal logic and interactions.
- Added methods for sending, retrying, and checking the status of fiscal invoices.
- Integrated error handling and response mapping for fiscal operations.
This commit is contained in:
2026-05-01 19:43:59 +03:30
parent a68a7f594d
commit ad470d2166
91 changed files with 8973 additions and 2469 deletions
@@ -81,12 +81,14 @@ export const ModelName = {
BusinessActivity: 'BusinessActivity',
Complex: 'Complex',
Pos: 'Pos',
Good: 'Good',
GoodCategory: 'GoodCategory',
MeasureUnits: 'MeasureUnits',
StockKeepingUnits: 'StockKeepingUnits',
TriggerLog: 'TriggerLog',
Customer: 'Customer',
CustomerIndividual: 'CustomerIndividual',
CustomerLegal: 'CustomerLegal',
Good: 'Good',
GoodCategory: 'GoodCategory',
Guild: 'Guild',
SalesInvoice: 'SalesInvoice',
SalesInvoiceItem: 'SalesInvoiceItem',
@@ -490,6 +492,70 @@ export const PosScalarFieldEnum = {
export type PosScalarFieldEnum = (typeof PosScalarFieldEnum)[keyof typeof PosScalarFieldEnum]
export const GoodScalarFieldEnum = {
id: 'id',
name: 'name',
is_default_guild_good: 'is_default_guild_good',
pricing_model: 'pricing_model',
description: 'description',
local_sku: 'local_sku',
barcode: 'barcode',
base_sale_price: 'base_sale_price',
image_url: 'image_url',
created_at: 'created_at',
updated_at: 'updated_at',
deleted_at: 'deleted_at',
sku_id: 'sku_id',
measure_unit_id: 'measure_unit_id',
category_id: 'category_id',
business_activity_id: 'business_activity_id'
} as const
export type GoodScalarFieldEnum = (typeof GoodScalarFieldEnum)[keyof typeof GoodScalarFieldEnum]
export const GoodCategoryScalarFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
image_url: 'image_url',
complex_id: 'complex_id',
is_default_guild_good: 'is_default_guild_good',
guild_id: 'guild_id',
created_at: 'created_at',
updated_at: 'updated_at',
deleted_at: 'deleted_at'
} as const
export type GoodCategoryScalarFieldEnum = (typeof GoodCategoryScalarFieldEnum)[keyof typeof GoodCategoryScalarFieldEnum]
export const MeasureUnitsScalarFieldEnum = {
id: 'id',
code: 'code',
name: 'name',
created_at: 'created_at',
updated_at: 'updated_at'
} as const
export type MeasureUnitsScalarFieldEnum = (typeof MeasureUnitsScalarFieldEnum)[keyof typeof MeasureUnitsScalarFieldEnum]
export const StockKeepingUnitsScalarFieldEnum = {
id: 'id',
code: 'code',
name: 'name',
VAT: 'VAT',
type: 'type',
is_public: 'is_public',
is_domestic: 'is_domestic',
created_at: 'created_at',
updated_at: 'updated_at'
} as const
export type StockKeepingUnitsScalarFieldEnum = (typeof StockKeepingUnitsScalarFieldEnum)[keyof typeof StockKeepingUnitsScalarFieldEnum]
export const TriggerLogScalarFieldEnum = {
id: 'id',
message: 'message',
@@ -527,7 +593,7 @@ export type CustomerIndividualScalarFieldEnum = (typeof CustomerIndividualScalar
export const CustomerLegalScalarFieldEnum = {
company_name: 'company_name',
name: 'name',
economic_code: 'economic_code',
registration_number: 'registration_number',
postal_code: 'postal_code',
@@ -538,44 +604,6 @@ export const CustomerLegalScalarFieldEnum = {
export type CustomerLegalScalarFieldEnum = (typeof CustomerLegalScalarFieldEnum)[keyof typeof CustomerLegalScalarFieldEnum]
export const GoodScalarFieldEnum = {
id: 'id',
name: 'name',
is_default_guild_good: 'is_default_guild_good',
sku: 'sku',
unit_type: 'unit_type',
pricing_model: 'pricing_model',
description: 'description',
local_sku: 'local_sku',
barcode: 'barcode',
base_sale_price: 'base_sale_price',
image_url: 'image_url',
created_at: 'created_at',
updated_at: 'updated_at',
deleted_at: 'deleted_at',
category_id: 'category_id',
business_activity_id: 'business_activity_id'
} as const
export type GoodScalarFieldEnum = (typeof GoodScalarFieldEnum)[keyof typeof GoodScalarFieldEnum]
export const GoodCategoryScalarFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
image_url: 'image_url',
complex_id: 'complex_id',
is_default_guild_good: 'is_default_guild_good',
guild_id: 'guild_id',
created_at: 'created_at',
updated_at: 'updated_at',
deleted_at: 'deleted_at'
} as const
export type GoodCategoryScalarFieldEnum = (typeof GoodCategoryScalarFieldEnum)[keyof typeof GoodCategoryScalarFieldEnum]
export const GuildScalarFieldEnum = {
id: 'id',
name: 'name',
@@ -608,7 +636,10 @@ export type SalesInvoiceScalarFieldEnum = (typeof SalesInvoiceScalarFieldEnum)[k
export const SalesInvoiceItemScalarFieldEnum = {
id: 'id',
quantity: 'quantity',
unit_type: 'unit_type',
measure_unit_text: 'measure_unit_text',
measure_unit_code: 'measure_unit_code',
sku_code: 'sku_code',
sku_vat: 'sku_vat',
unit_price: 'unit_price',
total_amount: 'total_amount',
created_at: 'created_at',
@@ -641,6 +672,7 @@ export const SaleInvoiceFiscalAttemptsScalarFieldEnum = {
attempt_no: 'attempt_no',
status: 'status',
tax_id: 'tax_id',
type: 'type',
request_payload: 'request_payload',
response_payload: 'response_payload',
error_message: 'error_message',
@@ -1050,6 +1082,52 @@ export const PosOrderByRelevanceFieldEnum = {
export type PosOrderByRelevanceFieldEnum = (typeof PosOrderByRelevanceFieldEnum)[keyof typeof PosOrderByRelevanceFieldEnum]
export const GoodOrderByRelevanceFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
local_sku: 'local_sku',
barcode: 'barcode',
image_url: 'image_url',
sku_id: 'sku_id',
measure_unit_id: 'measure_unit_id',
category_id: 'category_id',
business_activity_id: 'business_activity_id'
} as const
export type GoodOrderByRelevanceFieldEnum = (typeof GoodOrderByRelevanceFieldEnum)[keyof typeof GoodOrderByRelevanceFieldEnum]
export const GoodCategoryOrderByRelevanceFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
image_url: 'image_url',
complex_id: 'complex_id',
guild_id: 'guild_id'
} as const
export type GoodCategoryOrderByRelevanceFieldEnum = (typeof GoodCategoryOrderByRelevanceFieldEnum)[keyof typeof GoodCategoryOrderByRelevanceFieldEnum]
export const MeasureUnitsOrderByRelevanceFieldEnum = {
id: 'id',
code: 'code',
name: 'name'
} as const
export type MeasureUnitsOrderByRelevanceFieldEnum = (typeof MeasureUnitsOrderByRelevanceFieldEnum)[keyof typeof MeasureUnitsOrderByRelevanceFieldEnum]
export const StockKeepingUnitsOrderByRelevanceFieldEnum = {
id: 'id',
code: 'code',
name: 'name'
} as const
export type StockKeepingUnitsOrderByRelevanceFieldEnum = (typeof StockKeepingUnitsOrderByRelevanceFieldEnum)[keyof typeof StockKeepingUnitsOrderByRelevanceFieldEnum]
export const TriggerLogOrderByRelevanceFieldEnum = {
message: 'message',
name: 'name'
@@ -1080,7 +1158,7 @@ export type CustomerIndividualOrderByRelevanceFieldEnum = (typeof CustomerIndivi
export const CustomerLegalOrderByRelevanceFieldEnum = {
company_name: 'company_name',
name: 'name',
economic_code: 'economic_code',
registration_number: 'registration_number',
postal_code: 'postal_code',
@@ -1091,33 +1169,6 @@ export const CustomerLegalOrderByRelevanceFieldEnum = {
export type CustomerLegalOrderByRelevanceFieldEnum = (typeof CustomerLegalOrderByRelevanceFieldEnum)[keyof typeof CustomerLegalOrderByRelevanceFieldEnum]
export const GoodOrderByRelevanceFieldEnum = {
id: 'id',
name: 'name',
sku: 'sku',
description: 'description',
local_sku: 'local_sku',
barcode: 'barcode',
image_url: 'image_url',
category_id: 'category_id',
business_activity_id: 'business_activity_id'
} as const
export type GoodOrderByRelevanceFieldEnum = (typeof GoodOrderByRelevanceFieldEnum)[keyof typeof GoodOrderByRelevanceFieldEnum]
export const GoodCategoryOrderByRelevanceFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
image_url: 'image_url',
complex_id: 'complex_id',
guild_id: 'guild_id'
} as const
export type GoodCategoryOrderByRelevanceFieldEnum = (typeof GoodCategoryOrderByRelevanceFieldEnum)[keyof typeof GoodCategoryOrderByRelevanceFieldEnum]
export const GuildOrderByRelevanceFieldEnum = {
id: 'id',
name: 'name',
@@ -1141,6 +1192,9 @@ export type SalesInvoiceOrderByRelevanceFieldEnum = (typeof SalesInvoiceOrderByR
export const SalesInvoiceItemOrderByRelevanceFieldEnum = {
id: 'id',
measure_unit_text: 'measure_unit_text',
measure_unit_code: 'measure_unit_code',
sku_code: 'sku_code',
notes: 'notes',
invoice_id: 'invoice_id',
good_id: 'good_id',
@@ -1160,7 +1214,6 @@ export type SaleInvoiceFiscalsOrderByRelevanceFieldEnum = (typeof SaleInvoiceFis
export const SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum = {
id: 'id',
status: 'status',
tax_id: 'tax_id',
error_message: 'error_message',
fiscal_id: 'fiscal_id'