feat: add DTOs and services for tax switch integration

- Created SendBulkSaleInvoicesDto for handling bulk sale invoice requests.
- Implemented TaxSwitchSendPayloadDto and related DTOs for tax switch item payloads and results.
- Developed SalesInvoiceTaxSwitchService to manage tax switch operations, including sending and retrieving tax information.
- Added SalesInvoiceTaxService for handling sales invoice tax logic, including bulk sending and persistence of results.
- Introduced NamaTaxSwitchAdapter to interact with the tax switch service, simulating external API responses.
- Created SendBulkSalesInvoicesDto for POS module to handle bulk sales invoice requests.
This commit is contained in:
2026-04-27 22:11:05 +03:30
parent dee96b6e91
commit 58a7c359d8
68 changed files with 7896 additions and 3534 deletions
+95 -95
View File
@@ -310,48 +310,6 @@ export type PermissionPosMinOrderByAggregateInput = {
permission_id?: Prisma.SortOrder
}
export type PermissionPosCreateNestedManyWithoutPosInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
}
export type PermissionPosUncheckedCreateNestedManyWithoutPosInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
}
export type PermissionPosUpdateManyWithoutPosNestedInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
upsert?: Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
set?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
disconnect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
delete?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
update?: Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput[]
updateMany?: Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput | Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput[]
deleteMany?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
}
export type PermissionPosUncheckedUpdateManyWithoutPosNestedInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
upsert?: Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
set?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
disconnect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
delete?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
update?: Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput[]
updateMany?: Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput | Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput[]
deleteMany?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
}
export type PermissionPosCreateNestedManyWithoutPermissionInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPermissionInput, Prisma.PermissionPosUncheckedCreateWithoutPermissionInput> | Prisma.PermissionPosCreateWithoutPermissionInput[] | Prisma.PermissionPosUncheckedCreateWithoutPermissionInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPermissionInput | Prisma.PermissionPosCreateOrConnectWithoutPermissionInput[]
@@ -398,52 +356,46 @@ export type EnumPOSRoleFieldUpdateOperationsInput = {
set?: $Enums.POSRole
}
export type PermissionPosCreateWithoutPosInput = {
id?: string
role: $Enums.POSRole
permission: Prisma.PermissionConsumerCreateNestedOneWithoutPos_permissionsInput
export type PermissionPosCreateNestedManyWithoutPosInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
}
export type PermissionPosUncheckedCreateWithoutPosInput = {
id?: string
role: $Enums.POSRole
permission_id: string
export type PermissionPosUncheckedCreateNestedManyWithoutPosInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
}
export type PermissionPosCreateOrConnectWithoutPosInput = {
where: Prisma.PermissionPosWhereUniqueInput
create: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput>
export type PermissionPosUpdateManyWithoutPosNestedInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
upsert?: Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
set?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
disconnect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
delete?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
update?: Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput[]
updateMany?: Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput | Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput[]
deleteMany?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
}
export type PermissionPosCreateManyPosInputEnvelope = {
data: Prisma.PermissionPosCreateManyPosInput | Prisma.PermissionPosCreateManyPosInput[]
skipDuplicates?: boolean
}
export type PermissionPosUpsertWithWhereUniqueWithoutPosInput = {
where: Prisma.PermissionPosWhereUniqueInput
update: Prisma.XOR<Prisma.PermissionPosUpdateWithoutPosInput, Prisma.PermissionPosUncheckedUpdateWithoutPosInput>
create: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput>
}
export type PermissionPosUpdateWithWhereUniqueWithoutPosInput = {
where: Prisma.PermissionPosWhereUniqueInput
data: Prisma.XOR<Prisma.PermissionPosUpdateWithoutPosInput, Prisma.PermissionPosUncheckedUpdateWithoutPosInput>
}
export type PermissionPosUpdateManyWithWhereWithoutPosInput = {
where: Prisma.PermissionPosScalarWhereInput
data: Prisma.XOR<Prisma.PermissionPosUpdateManyMutationInput, Prisma.PermissionPosUncheckedUpdateManyWithoutPosInput>
}
export type PermissionPosScalarWhereInput = {
AND?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
OR?: Prisma.PermissionPosScalarWhereInput[]
NOT?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
id?: Prisma.StringFilter<"PermissionPos"> | string
role?: Prisma.EnumPOSRoleFilter<"PermissionPos"> | $Enums.POSRole
pos_id?: Prisma.StringFilter<"PermissionPos"> | string
permission_id?: Prisma.StringFilter<"PermissionPos"> | string
export type PermissionPosUncheckedUpdateManyWithoutPosNestedInput = {
create?: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput> | Prisma.PermissionPosCreateWithoutPosInput[] | Prisma.PermissionPosUncheckedCreateWithoutPosInput[]
connectOrCreate?: Prisma.PermissionPosCreateOrConnectWithoutPosInput | Prisma.PermissionPosCreateOrConnectWithoutPosInput[]
upsert?: Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpsertWithWhereUniqueWithoutPosInput[]
createMany?: Prisma.PermissionPosCreateManyPosInputEnvelope
set?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
disconnect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
delete?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
connect?: Prisma.PermissionPosWhereUniqueInput | Prisma.PermissionPosWhereUniqueInput[]
update?: Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput | Prisma.PermissionPosUpdateWithWhereUniqueWithoutPosInput[]
updateMany?: Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput | Prisma.PermissionPosUpdateManyWithWhereWithoutPosInput[]
deleteMany?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
}
export type PermissionPosCreateWithoutPermissionInput = {
@@ -484,28 +436,52 @@ export type PermissionPosUpdateManyWithWhereWithoutPermissionInput = {
data: Prisma.XOR<Prisma.PermissionPosUpdateManyMutationInput, Prisma.PermissionPosUncheckedUpdateManyWithoutPermissionInput>
}
export type PermissionPosCreateManyPosInput = {
export type PermissionPosScalarWhereInput = {
AND?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
OR?: Prisma.PermissionPosScalarWhereInput[]
NOT?: Prisma.PermissionPosScalarWhereInput | Prisma.PermissionPosScalarWhereInput[]
id?: Prisma.StringFilter<"PermissionPos"> | string
role?: Prisma.EnumPOSRoleFilter<"PermissionPos"> | $Enums.POSRole
pos_id?: Prisma.StringFilter<"PermissionPos"> | string
permission_id?: Prisma.StringFilter<"PermissionPos"> | string
}
export type PermissionPosCreateWithoutPosInput = {
id?: string
role: $Enums.POSRole
permission: Prisma.PermissionConsumerCreateNestedOneWithoutPos_permissionsInput
}
export type PermissionPosUncheckedCreateWithoutPosInput = {
id?: string
role: $Enums.POSRole
permission_id: string
}
export type PermissionPosUpdateWithoutPosInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
role?: Prisma.EnumPOSRoleFieldUpdateOperationsInput | $Enums.POSRole
permission?: Prisma.PermissionConsumerUpdateOneRequiredWithoutPos_permissionsNestedInput
export type PermissionPosCreateOrConnectWithoutPosInput = {
where: Prisma.PermissionPosWhereUniqueInput
create: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput>
}
export type PermissionPosUncheckedUpdateWithoutPosInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
role?: Prisma.EnumPOSRoleFieldUpdateOperationsInput | $Enums.POSRole
permission_id?: Prisma.StringFieldUpdateOperationsInput | string
export type PermissionPosCreateManyPosInputEnvelope = {
data: Prisma.PermissionPosCreateManyPosInput | Prisma.PermissionPosCreateManyPosInput[]
skipDuplicates?: boolean
}
export type PermissionPosUncheckedUpdateManyWithoutPosInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
role?: Prisma.EnumPOSRoleFieldUpdateOperationsInput | $Enums.POSRole
permission_id?: Prisma.StringFieldUpdateOperationsInput | string
export type PermissionPosUpsertWithWhereUniqueWithoutPosInput = {
where: Prisma.PermissionPosWhereUniqueInput
update: Prisma.XOR<Prisma.PermissionPosUpdateWithoutPosInput, Prisma.PermissionPosUncheckedUpdateWithoutPosInput>
create: Prisma.XOR<Prisma.PermissionPosCreateWithoutPosInput, Prisma.PermissionPosUncheckedCreateWithoutPosInput>
}
export type PermissionPosUpdateWithWhereUniqueWithoutPosInput = {
where: Prisma.PermissionPosWhereUniqueInput
data: Prisma.XOR<Prisma.PermissionPosUpdateWithoutPosInput, Prisma.PermissionPosUncheckedUpdateWithoutPosInput>
}
export type PermissionPosUpdateManyWithWhereWithoutPosInput = {
where: Prisma.PermissionPosScalarWhereInput
data: Prisma.XOR<Prisma.PermissionPosUpdateManyMutationInput, Prisma.PermissionPosUncheckedUpdateManyWithoutPosInput>
}
export type PermissionPosCreateManyPermissionInput = {
@@ -532,6 +508,30 @@ export type PermissionPosUncheckedUpdateManyWithoutPermissionInput = {
pos_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type PermissionPosCreateManyPosInput = {
id?: string
role: $Enums.POSRole
permission_id: string
}
export type PermissionPosUpdateWithoutPosInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
role?: Prisma.EnumPOSRoleFieldUpdateOperationsInput | $Enums.POSRole
permission?: Prisma.PermissionConsumerUpdateOneRequiredWithoutPos_permissionsNestedInput
}
export type PermissionPosUncheckedUpdateWithoutPosInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
role?: Prisma.EnumPOSRoleFieldUpdateOperationsInput | $Enums.POSRole
permission_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type PermissionPosUncheckedUpdateManyWithoutPosInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
role?: Prisma.EnumPOSRoleFieldUpdateOperationsInput | $Enums.POSRole
permission_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type PermissionPosSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{