debug license

This commit is contained in:
2026-04-06 21:12:07 +03:30
parent af71fb441b
commit b8c5cb4c80
14 changed files with 299 additions and 366 deletions
@@ -0,0 +1,25 @@
/*
Warnings:
- A unique constraint covering the columns `[license_id]` on the table `consumers` will be added. If there are existing duplicate values, this will fail.
- A unique constraint covering the columns `[consumer_id]` on the table `licenses` will be added. If there are existing duplicate values, this will fail.
- Added the required column `consumer_id` to the `licenses` table without a default value. This is not possible if the table is not empty.
*/
-- DropForeignKey
ALTER TABLE `consumers` DROP FOREIGN KEY `consumers_license_id_fkey`;
-- DropIndex
DROP INDEX `consumers_license_id_fkey` ON `consumers`;
-- AlterTable
ALTER TABLE `licenses` ADD COLUMN `consumer_id` VARCHAR(191) NOT NULL;
-- CreateIndex
CREATE UNIQUE INDEX `consumers_license_id_key` ON `consumers`(`license_id`);
-- CreateIndex
CREATE UNIQUE INDEX `licenses_consumer_id_key` ON `licenses`(`consumer_id`);
-- AddForeignKey
ALTER TABLE `licenses` ADD CONSTRAINT `licenses_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE;
+3 -2
View File
@@ -4,15 +4,16 @@ model Consumer {
first_name String
last_name String
status ConsumerStatus @default(ACTIVE)
license_id String?
license_id String? @unique()
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt() @db.Timestamp(0)
license License? @relation(fields: [license_id], references: [id])
accounts ConsumerAccount[]
businessActivities BusinessActivity[]
license License?
@@map("consumers")
}
+3 -4
View File
@@ -8,11 +8,10 @@ model License {
updated_at DateTime @updatedAt() @db.Timestamp(0)
partner_id String?
partner Partner? @relation(fields: [partner_id], references: [id])
// pos Pos @relation(fields: [pos_id], references: [id])
partner Partner? @relation(fields: [partner_id], references: [id])
consumers Consumer[]
consumer_id String @unique
consumer Consumer @relation(fields: [consumer_id], references: [id])
@@map("licenses")
}
File diff suppressed because one or more lines are too long
@@ -2718,7 +2718,8 @@ export const LicenseScalarFieldEnum = {
status: 'status',
created_at: 'created_at',
updated_at: 'updated_at',
partner_id: 'partner_id'
partner_id: 'partner_id',
consumer_id: 'consumer_id'
} as const
export type LicenseScalarFieldEnum = (typeof LicenseScalarFieldEnum)[keyof typeof LicenseScalarFieldEnum]
@@ -3133,7 +3134,8 @@ export type DeviceOrderByRelevanceFieldEnum = (typeof DeviceOrderByRelevanceFiel
export const LicenseOrderByRelevanceFieldEnum = {
id: 'id',
partner_id: 'partner_id'
partner_id: 'partner_id',
consumer_id: 'consumer_id'
} as const
export type LicenseOrderByRelevanceFieldEnum = (typeof LicenseOrderByRelevanceFieldEnum)[keyof typeof LicenseOrderByRelevanceFieldEnum]
@@ -233,7 +233,8 @@ export const LicenseScalarFieldEnum = {
status: 'status',
created_at: 'created_at',
updated_at: 'updated_at',
partner_id: 'partner_id'
partner_id: 'partner_id',
consumer_id: 'consumer_id'
} as const
export type LicenseScalarFieldEnum = (typeof LicenseScalarFieldEnum)[keyof typeof LicenseScalarFieldEnum]
@@ -648,7 +649,8 @@ export type DeviceOrderByRelevanceFieldEnum = (typeof DeviceOrderByRelevanceFiel
export const LicenseOrderByRelevanceFieldEnum = {
id: 'id',
partner_id: 'partner_id'
partner_id: 'partner_id',
consumer_id: 'consumer_id'
} as const
export type LicenseOrderByRelevanceFieldEnum = (typeof LicenseOrderByRelevanceFieldEnum)[keyof typeof LicenseOrderByRelevanceFieldEnum]
+65 -130
View File
@@ -206,9 +206,9 @@ export type ConsumerWhereInput = {
license_id?: Prisma.StringNullableFilter<"Consumer"> | string | null
created_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string
updated_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string
license?: Prisma.XOR<Prisma.LicenseNullableScalarRelationFilter, Prisma.LicenseWhereInput> | null
accounts?: Prisma.ConsumerAccountListRelationFilter
businessActivities?: Prisma.BusinessActivityListRelationFilter
license?: Prisma.XOR<Prisma.LicenseNullableScalarRelationFilter, Prisma.LicenseWhereInput> | null
}
export type ConsumerOrderByWithRelationInput = {
@@ -220,28 +220,28 @@ export type ConsumerOrderByWithRelationInput = {
license_id?: Prisma.SortOrderInput | Prisma.SortOrder
created_at?: Prisma.SortOrder
updated_at?: Prisma.SortOrder
license?: Prisma.LicenseOrderByWithRelationInput
accounts?: Prisma.ConsumerAccountOrderByRelationAggregateInput
businessActivities?: Prisma.BusinessActivityOrderByRelationAggregateInput
license?: Prisma.LicenseOrderByWithRelationInput
_relevance?: Prisma.ConsumerOrderByRelevanceInput
}
export type ConsumerWhereUniqueInput = Prisma.AtLeast<{
id?: string
mobile_number?: string
license_id?: string
AND?: Prisma.ConsumerWhereInput | Prisma.ConsumerWhereInput[]
OR?: Prisma.ConsumerWhereInput[]
NOT?: Prisma.ConsumerWhereInput | Prisma.ConsumerWhereInput[]
first_name?: Prisma.StringFilter<"Consumer"> | string
last_name?: Prisma.StringFilter<"Consumer"> | string
status?: Prisma.EnumConsumerStatusFilter<"Consumer"> | $Enums.ConsumerStatus
license_id?: Prisma.StringNullableFilter<"Consumer"> | string | null
created_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string
updated_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string
license?: Prisma.XOR<Prisma.LicenseNullableScalarRelationFilter, Prisma.LicenseWhereInput> | null
accounts?: Prisma.ConsumerAccountListRelationFilter
businessActivities?: Prisma.BusinessActivityListRelationFilter
}, "id" | "mobile_number">
license?: Prisma.XOR<Prisma.LicenseNullableScalarRelationFilter, Prisma.LicenseWhereInput> | null
}, "id" | "mobile_number" | "license_id">
export type ConsumerOrderByWithAggregationInput = {
id?: Prisma.SortOrder
@@ -277,11 +277,12 @@ export type ConsumerCreateInput = {
first_name: string
last_name: string
status?: $Enums.ConsumerStatus
license_id?: string | null
created_at?: Date | string
updated_at?: Date | string
license?: Prisma.LicenseCreateNestedOneWithoutConsumersInput
accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutUserInput
businessActivities?: Prisma.BusinessActivityCreateNestedManyWithoutUserInput
license?: Prisma.LicenseCreateNestedOneWithoutConsumerInput
}
export type ConsumerUncheckedCreateInput = {
@@ -295,6 +296,7 @@ export type ConsumerUncheckedCreateInput = {
updated_at?: Date | string
accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutUserInput
businessActivities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutUserInput
license?: Prisma.LicenseUncheckedCreateNestedOneWithoutConsumerInput
}
export type ConsumerUpdateInput = {
@@ -303,11 +305,12 @@ export type ConsumerUpdateInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
license_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
license?: Prisma.LicenseUpdateOneWithoutConsumersNestedInput
accounts?: Prisma.ConsumerAccountUpdateManyWithoutUserNestedInput
businessActivities?: Prisma.BusinessActivityUpdateManyWithoutUserNestedInput
license?: Prisma.LicenseUpdateOneWithoutConsumerNestedInput
}
export type ConsumerUncheckedUpdateInput = {
@@ -321,6 +324,7 @@ export type ConsumerUncheckedUpdateInput = {
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutUserNestedInput
businessActivities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutUserNestedInput
license?: Prisma.LicenseUncheckedUpdateOneWithoutConsumerNestedInput
}
export type ConsumerCreateManyInput = {
@@ -340,6 +344,7 @@ export type ConsumerUpdateManyMutationInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
license_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -399,16 +404,6 @@ export type ConsumerScalarRelationFilter = {
isNot?: Prisma.ConsumerWhereInput
}
export type ConsumerListRelationFilter = {
every?: Prisma.ConsumerWhereInput
some?: Prisma.ConsumerWhereInput
none?: Prisma.ConsumerWhereInput
}
export type ConsumerOrderByRelationAggregateInput = {
_count?: Prisma.SortOrder
}
export type EnumConsumerStatusFieldUpdateOperationsInput = {
set?: $Enums.ConsumerStatus
}
@@ -441,46 +436,18 @@ export type ConsumerUpdateOneRequiredWithoutBusinessActivitiesNestedInput = {
update?: Prisma.XOR<Prisma.XOR<Prisma.ConsumerUpdateToOneWithWhereWithoutBusinessActivitiesInput, Prisma.ConsumerUpdateWithoutBusinessActivitiesInput>, Prisma.ConsumerUncheckedUpdateWithoutBusinessActivitiesInput>
}
export type ConsumerCreateNestedManyWithoutLicenseInput = {
create?: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput> | Prisma.ConsumerCreateWithoutLicenseInput[] | Prisma.ConsumerUncheckedCreateWithoutLicenseInput[]
connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLicenseInput | Prisma.ConsumerCreateOrConnectWithoutLicenseInput[]
createMany?: Prisma.ConsumerCreateManyLicenseInputEnvelope
connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
export type ConsumerCreateNestedOneWithoutLicenseInput = {
create?: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput>
connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLicenseInput
connect?: Prisma.ConsumerWhereUniqueInput
}
export type ConsumerUncheckedCreateNestedManyWithoutLicenseInput = {
create?: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput> | Prisma.ConsumerCreateWithoutLicenseInput[] | Prisma.ConsumerUncheckedCreateWithoutLicenseInput[]
connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLicenseInput | Prisma.ConsumerCreateOrConnectWithoutLicenseInput[]
createMany?: Prisma.ConsumerCreateManyLicenseInputEnvelope
connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
}
export type ConsumerUpdateManyWithoutLicenseNestedInput = {
create?: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput> | Prisma.ConsumerCreateWithoutLicenseInput[] | Prisma.ConsumerUncheckedCreateWithoutLicenseInput[]
connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLicenseInput | Prisma.ConsumerCreateOrConnectWithoutLicenseInput[]
upsert?: Prisma.ConsumerUpsertWithWhereUniqueWithoutLicenseInput | Prisma.ConsumerUpsertWithWhereUniqueWithoutLicenseInput[]
createMany?: Prisma.ConsumerCreateManyLicenseInputEnvelope
set?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
disconnect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
delete?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
update?: Prisma.ConsumerUpdateWithWhereUniqueWithoutLicenseInput | Prisma.ConsumerUpdateWithWhereUniqueWithoutLicenseInput[]
updateMany?: Prisma.ConsumerUpdateManyWithWhereWithoutLicenseInput | Prisma.ConsumerUpdateManyWithWhereWithoutLicenseInput[]
deleteMany?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[]
}
export type ConsumerUncheckedUpdateManyWithoutLicenseNestedInput = {
create?: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput> | Prisma.ConsumerCreateWithoutLicenseInput[] | Prisma.ConsumerUncheckedCreateWithoutLicenseInput[]
connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLicenseInput | Prisma.ConsumerCreateOrConnectWithoutLicenseInput[]
upsert?: Prisma.ConsumerUpsertWithWhereUniqueWithoutLicenseInput | Prisma.ConsumerUpsertWithWhereUniqueWithoutLicenseInput[]
createMany?: Prisma.ConsumerCreateManyLicenseInputEnvelope
set?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
disconnect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
delete?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[]
update?: Prisma.ConsumerUpdateWithWhereUniqueWithoutLicenseInput | Prisma.ConsumerUpdateWithWhereUniqueWithoutLicenseInput[]
updateMany?: Prisma.ConsumerUpdateManyWithWhereWithoutLicenseInput | Prisma.ConsumerUpdateManyWithWhereWithoutLicenseInput[]
deleteMany?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[]
export type ConsumerUpdateOneRequiredWithoutLicenseNestedInput = {
create?: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput>
connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLicenseInput
upsert?: Prisma.ConsumerUpsertWithoutLicenseInput
connect?: Prisma.ConsumerWhereUniqueInput
update?: Prisma.XOR<Prisma.XOR<Prisma.ConsumerUpdateToOneWithWhereWithoutLicenseInput, Prisma.ConsumerUpdateWithoutLicenseInput>, Prisma.ConsumerUncheckedUpdateWithoutLicenseInput>
}
export type ConsumerCreateWithoutAccountsInput = {
@@ -489,10 +456,11 @@ export type ConsumerCreateWithoutAccountsInput = {
first_name: string
last_name: string
status?: $Enums.ConsumerStatus
license_id?: string | null
created_at?: Date | string
updated_at?: Date | string
license?: Prisma.LicenseCreateNestedOneWithoutConsumersInput
businessActivities?: Prisma.BusinessActivityCreateNestedManyWithoutUserInput
license?: Prisma.LicenseCreateNestedOneWithoutConsumerInput
}
export type ConsumerUncheckedCreateWithoutAccountsInput = {
@@ -505,6 +473,7 @@ export type ConsumerUncheckedCreateWithoutAccountsInput = {
created_at?: Date | string
updated_at?: Date | string
businessActivities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutUserInput
license?: Prisma.LicenseUncheckedCreateNestedOneWithoutConsumerInput
}
export type ConsumerCreateOrConnectWithoutAccountsInput = {
@@ -529,10 +498,11 @@ export type ConsumerUpdateWithoutAccountsInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
license_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
license?: Prisma.LicenseUpdateOneWithoutConsumersNestedInput
businessActivities?: Prisma.BusinessActivityUpdateManyWithoutUserNestedInput
license?: Prisma.LicenseUpdateOneWithoutConsumerNestedInput
}
export type ConsumerUncheckedUpdateWithoutAccountsInput = {
@@ -545,6 +515,7 @@ export type ConsumerUncheckedUpdateWithoutAccountsInput = {
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
businessActivities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutUserNestedInput
license?: Prisma.LicenseUncheckedUpdateOneWithoutConsumerNestedInput
}
export type ConsumerCreateWithoutBusinessActivitiesInput = {
@@ -553,10 +524,11 @@ export type ConsumerCreateWithoutBusinessActivitiesInput = {
first_name: string
last_name: string
status?: $Enums.ConsumerStatus
license_id?: string | null
created_at?: Date | string
updated_at?: Date | string
license?: Prisma.LicenseCreateNestedOneWithoutConsumersInput
accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutUserInput
license?: Prisma.LicenseCreateNestedOneWithoutConsumerInput
}
export type ConsumerUncheckedCreateWithoutBusinessActivitiesInput = {
@@ -569,6 +541,7 @@ export type ConsumerUncheckedCreateWithoutBusinessActivitiesInput = {
created_at?: Date | string
updated_at?: Date | string
accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutUserInput
license?: Prisma.LicenseUncheckedCreateNestedOneWithoutConsumerInput
}
export type ConsumerCreateOrConnectWithoutBusinessActivitiesInput = {
@@ -593,10 +566,11 @@ export type ConsumerUpdateWithoutBusinessActivitiesInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
license_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
license?: Prisma.LicenseUpdateOneWithoutConsumersNestedInput
accounts?: Prisma.ConsumerAccountUpdateManyWithoutUserNestedInput
license?: Prisma.LicenseUpdateOneWithoutConsumerNestedInput
}
export type ConsumerUncheckedUpdateWithoutBusinessActivitiesInput = {
@@ -609,6 +583,7 @@ export type ConsumerUncheckedUpdateWithoutBusinessActivitiesInput = {
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutUserNestedInput
license?: Prisma.LicenseUncheckedUpdateOneWithoutConsumerNestedInput
}
export type ConsumerCreateWithoutLicenseInput = {
@@ -617,6 +592,7 @@ export type ConsumerCreateWithoutLicenseInput = {
first_name: string
last_name: string
status?: $Enums.ConsumerStatus
license_id?: string | null
created_at?: Date | string
updated_at?: Date | string
accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutUserInput
@@ -629,6 +605,7 @@ export type ConsumerUncheckedCreateWithoutLicenseInput = {
first_name: string
last_name: string
status?: $Enums.ConsumerStatus
license_id?: string | null
created_at?: Date | string
updated_at?: Date | string
accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutUserInput
@@ -640,57 +617,24 @@ export type ConsumerCreateOrConnectWithoutLicenseInput = {
create: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput>
}
export type ConsumerCreateManyLicenseInputEnvelope = {
data: Prisma.ConsumerCreateManyLicenseInput | Prisma.ConsumerCreateManyLicenseInput[]
skipDuplicates?: boolean
}
export type ConsumerUpsertWithWhereUniqueWithoutLicenseInput = {
where: Prisma.ConsumerWhereUniqueInput
export type ConsumerUpsertWithoutLicenseInput = {
update: Prisma.XOR<Prisma.ConsumerUpdateWithoutLicenseInput, Prisma.ConsumerUncheckedUpdateWithoutLicenseInput>
create: Prisma.XOR<Prisma.ConsumerCreateWithoutLicenseInput, Prisma.ConsumerUncheckedCreateWithoutLicenseInput>
where?: Prisma.ConsumerWhereInput
}
export type ConsumerUpdateWithWhereUniqueWithoutLicenseInput = {
where: Prisma.ConsumerWhereUniqueInput
export type ConsumerUpdateToOneWithWhereWithoutLicenseInput = {
where?: Prisma.ConsumerWhereInput
data: Prisma.XOR<Prisma.ConsumerUpdateWithoutLicenseInput, Prisma.ConsumerUncheckedUpdateWithoutLicenseInput>
}
export type ConsumerUpdateManyWithWhereWithoutLicenseInput = {
where: Prisma.ConsumerScalarWhereInput
data: Prisma.XOR<Prisma.ConsumerUpdateManyMutationInput, Prisma.ConsumerUncheckedUpdateManyWithoutLicenseInput>
}
export type ConsumerScalarWhereInput = {
AND?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[]
OR?: Prisma.ConsumerScalarWhereInput[]
NOT?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[]
id?: Prisma.StringFilter<"Consumer"> | string
mobile_number?: Prisma.StringFilter<"Consumer"> | string
first_name?: Prisma.StringFilter<"Consumer"> | string
last_name?: Prisma.StringFilter<"Consumer"> | string
status?: Prisma.EnumConsumerStatusFilter<"Consumer"> | $Enums.ConsumerStatus
license_id?: Prisma.StringNullableFilter<"Consumer"> | string | null
created_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string
updated_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string
}
export type ConsumerCreateManyLicenseInput = {
id?: string
mobile_number: string
first_name: string
last_name: string
status?: $Enums.ConsumerStatus
created_at?: Date | string
updated_at?: Date | string
}
export type ConsumerUpdateWithoutLicenseInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
license_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
accounts?: Prisma.ConsumerAccountUpdateManyWithoutUserNestedInput
@@ -703,22 +647,13 @@ export type ConsumerUncheckedUpdateWithoutLicenseInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
license_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutUserNestedInput
businessActivities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutUserNestedInput
}
export type ConsumerUncheckedUpdateManyWithoutLicenseInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
/**
* Count Type ConsumerCountOutputType
@@ -768,9 +703,9 @@ export type ConsumerSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs
license_id?: boolean
created_at?: boolean
updated_at?: boolean
license?: boolean | Prisma.Consumer$licenseArgs<ExtArgs>
accounts?: boolean | Prisma.Consumer$accountsArgs<ExtArgs>
businessActivities?: boolean | Prisma.Consumer$businessActivitiesArgs<ExtArgs>
license?: boolean | Prisma.Consumer$licenseArgs<ExtArgs>
_count?: boolean | Prisma.ConsumerCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["consumer"]>
@@ -789,18 +724,18 @@ export type ConsumerSelectScalar = {
export type ConsumerOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "mobile_number" | "first_name" | "last_name" | "status" | "license_id" | "created_at" | "updated_at", ExtArgs["result"]["consumer"]>
export type ConsumerInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
license?: boolean | Prisma.Consumer$licenseArgs<ExtArgs>
accounts?: boolean | Prisma.Consumer$accountsArgs<ExtArgs>
businessActivities?: boolean | Prisma.Consumer$businessActivitiesArgs<ExtArgs>
license?: boolean | Prisma.Consumer$licenseArgs<ExtArgs>
_count?: boolean | Prisma.ConsumerCountOutputTypeDefaultArgs<ExtArgs>
}
export type $ConsumerPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
name: "Consumer"
objects: {
license: Prisma.$LicensePayload<ExtArgs> | null
accounts: Prisma.$ConsumerAccountPayload<ExtArgs>[]
businessActivities: Prisma.$BusinessActivityPayload<ExtArgs>[]
license: Prisma.$LicensePayload<ExtArgs> | null
}
scalars: runtime.Types.Extensions.GetPayloadResult<{
id: string
@@ -1151,9 +1086,9 @@ readonly fields: ConsumerFieldRefs;
*/
export interface Prisma__ConsumerClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
license<T extends Prisma.Consumer$licenseArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.Consumer$licenseArgs<ExtArgs>>): Prisma.Prisma__LicenseClient<runtime.Types.Result.GetResult<Prisma.$LicensePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
accounts<T extends Prisma.Consumer$accountsArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.Consumer$accountsArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$ConsumerAccountPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
businessActivities<T extends Prisma.Consumer$businessActivitiesArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.Consumer$businessActivitiesArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$BusinessActivityPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
license<T extends Prisma.Consumer$licenseArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.Consumer$licenseArgs<ExtArgs>>): Prisma.Prisma__LicenseClient<runtime.Types.Result.GetResult<Prisma.$LicensePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
* @param onfulfilled The callback to execute when the Promise is resolved.
@@ -1533,25 +1468,6 @@ export type ConsumerDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.Inte
limit?: number
}
/**
* Consumer.license
*/
export type Consumer$licenseArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the License
*/
select?: Prisma.LicenseSelect<ExtArgs> | null
/**
* Omit specific fields from the License
*/
omit?: Prisma.LicenseOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: Prisma.LicenseInclude<ExtArgs> | null
where?: Prisma.LicenseWhereInput
}
/**
* Consumer.accounts
*/
@@ -1600,6 +1516,25 @@ export type Consumer$businessActivitiesArgs<ExtArgs extends runtime.Types.Extens
distinct?: Prisma.BusinessActivityScalarFieldEnum | Prisma.BusinessActivityScalarFieldEnum[]
}
/**
* Consumer.license
*/
export type Consumer$licenseArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the License
*/
select?: Prisma.LicenseSelect<ExtArgs> | null
/**
* Omit specific fields from the License
*/
omit?: Prisma.LicenseOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: Prisma.LicenseInclude<ExtArgs> | null
where?: Prisma.LicenseWhereInput
}
/**
* Consumer without action
*/
+76 -91
View File
@@ -32,6 +32,7 @@ export type LicenseMinAggregateOutputType = {
created_at: Date | null
updated_at: Date | null
partner_id: string | null
consumer_id: string | null
}
export type LicenseMaxAggregateOutputType = {
@@ -42,6 +43,7 @@ export type LicenseMaxAggregateOutputType = {
created_at: Date | null
updated_at: Date | null
partner_id: string | null
consumer_id: string | null
}
export type LicenseCountAggregateOutputType = {
@@ -52,6 +54,7 @@ export type LicenseCountAggregateOutputType = {
created_at: number
updated_at: number
partner_id: number
consumer_id: number
_all: number
}
@@ -64,6 +67,7 @@ export type LicenseMinAggregateInputType = {
created_at?: true
updated_at?: true
partner_id?: true
consumer_id?: true
}
export type LicenseMaxAggregateInputType = {
@@ -74,6 +78,7 @@ export type LicenseMaxAggregateInputType = {
created_at?: true
updated_at?: true
partner_id?: true
consumer_id?: true
}
export type LicenseCountAggregateInputType = {
@@ -84,6 +89,7 @@ export type LicenseCountAggregateInputType = {
created_at?: true
updated_at?: true
partner_id?: true
consumer_id?: true
_all?: true
}
@@ -167,6 +173,7 @@ export type LicenseGroupByOutputType = {
created_at: Date
updated_at: Date
partner_id: string | null
consumer_id: string
_count: LicenseCountAggregateOutputType | null
_min: LicenseMinAggregateOutputType | null
_max: LicenseMaxAggregateOutputType | null
@@ -198,8 +205,9 @@ export type LicenseWhereInput = {
created_at?: Prisma.DateTimeFilter<"License"> | Date | string
updated_at?: Prisma.DateTimeFilter<"License"> | Date | string
partner_id?: Prisma.StringNullableFilter<"License"> | string | null
consumer_id?: Prisma.StringFilter<"License"> | string
partner?: Prisma.XOR<Prisma.PartnerNullableScalarRelationFilter, Prisma.PartnerWhereInput> | null
consumers?: Prisma.ConsumerListRelationFilter
consumer?: Prisma.XOR<Prisma.ConsumerScalarRelationFilter, Prisma.ConsumerWhereInput>
}
export type LicenseOrderByWithRelationInput = {
@@ -210,13 +218,15 @@ export type LicenseOrderByWithRelationInput = {
created_at?: Prisma.SortOrder
updated_at?: Prisma.SortOrder
partner_id?: Prisma.SortOrderInput | Prisma.SortOrder
consumer_id?: Prisma.SortOrder
partner?: Prisma.PartnerOrderByWithRelationInput
consumers?: Prisma.ConsumerOrderByRelationAggregateInput
consumer?: Prisma.ConsumerOrderByWithRelationInput
_relevance?: Prisma.LicenseOrderByRelevanceInput
}
export type LicenseWhereUniqueInput = Prisma.AtLeast<{
id?: string
consumer_id?: string
AND?: Prisma.LicenseWhereInput | Prisma.LicenseWhereInput[]
OR?: Prisma.LicenseWhereInput[]
NOT?: Prisma.LicenseWhereInput | Prisma.LicenseWhereInput[]
@@ -227,8 +237,8 @@ export type LicenseWhereUniqueInput = Prisma.AtLeast<{
updated_at?: Prisma.DateTimeFilter<"License"> | Date | string
partner_id?: Prisma.StringNullableFilter<"License"> | string | null
partner?: Prisma.XOR<Prisma.PartnerNullableScalarRelationFilter, Prisma.PartnerWhereInput> | null
consumers?: Prisma.ConsumerListRelationFilter
}, "id">
consumer?: Prisma.XOR<Prisma.ConsumerScalarRelationFilter, Prisma.ConsumerWhereInput>
}, "id" | "consumer_id">
export type LicenseOrderByWithAggregationInput = {
id?: Prisma.SortOrder
@@ -238,6 +248,7 @@ export type LicenseOrderByWithAggregationInput = {
created_at?: Prisma.SortOrder
updated_at?: Prisma.SortOrder
partner_id?: Prisma.SortOrderInput | Prisma.SortOrder
consumer_id?: Prisma.SortOrder
_count?: Prisma.LicenseCountOrderByAggregateInput
_max?: Prisma.LicenseMaxOrderByAggregateInput
_min?: Prisma.LicenseMinOrderByAggregateInput
@@ -254,6 +265,7 @@ export type LicenseScalarWhereWithAggregatesInput = {
created_at?: Prisma.DateTimeWithAggregatesFilter<"License"> | Date | string
updated_at?: Prisma.DateTimeWithAggregatesFilter<"License"> | Date | string
partner_id?: Prisma.StringNullableWithAggregatesFilter<"License"> | string | null
consumer_id?: Prisma.StringWithAggregatesFilter<"License"> | string
}
export type LicenseCreateInput = {
@@ -264,7 +276,7 @@ export type LicenseCreateInput = {
created_at?: Date | string
updated_at?: Date | string
partner?: Prisma.PartnerCreateNestedOneWithoutLicensesInput
consumers?: Prisma.ConsumerCreateNestedManyWithoutLicenseInput
consumer: Prisma.ConsumerCreateNestedOneWithoutLicenseInput
}
export type LicenseUncheckedCreateInput = {
@@ -275,7 +287,7 @@ export type LicenseUncheckedCreateInput = {
created_at?: Date | string
updated_at?: Date | string
partner_id?: string | null
consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutLicenseInput
consumer_id: string
}
export type LicenseUpdateInput = {
@@ -286,7 +298,7 @@ export type LicenseUpdateInput = {
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
partner?: Prisma.PartnerUpdateOneWithoutLicensesNestedInput
consumers?: Prisma.ConsumerUpdateManyWithoutLicenseNestedInput
consumer?: Prisma.ConsumerUpdateOneRequiredWithoutLicenseNestedInput
}
export type LicenseUncheckedUpdateInput = {
@@ -297,7 +309,7 @@ export type LicenseUncheckedUpdateInput = {
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
partner_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutLicenseNestedInput
consumer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type LicenseCreateManyInput = {
@@ -308,6 +320,7 @@ export type LicenseCreateManyInput = {
created_at?: Date | string
updated_at?: Date | string
partner_id?: string | null
consumer_id: string
}
export type LicenseUpdateManyMutationInput = {
@@ -327,6 +340,7 @@ export type LicenseUncheckedUpdateManyInput = {
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
partner_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
consumer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type LicenseNullableScalarRelationFilter = {
@@ -348,6 +362,7 @@ export type LicenseCountOrderByAggregateInput = {
created_at?: Prisma.SortOrder
updated_at?: Prisma.SortOrder
partner_id?: Prisma.SortOrder
consumer_id?: Prisma.SortOrder
}
export type LicenseMaxOrderByAggregateInput = {
@@ -358,6 +373,7 @@ export type LicenseMaxOrderByAggregateInput = {
created_at?: Prisma.SortOrder
updated_at?: Prisma.SortOrder
partner_id?: Prisma.SortOrder
consumer_id?: Prisma.SortOrder
}
export type LicenseMinOrderByAggregateInput = {
@@ -368,6 +384,7 @@ export type LicenseMinOrderByAggregateInput = {
created_at?: Prisma.SortOrder
updated_at?: Prisma.SortOrder
partner_id?: Prisma.SortOrder
consumer_id?: Prisma.SortOrder
}
export type LicenseListRelationFilter = {
@@ -380,20 +397,36 @@ export type LicenseOrderByRelationAggregateInput = {
_count?: Prisma.SortOrder
}
export type LicenseCreateNestedOneWithoutConsumersInput = {
create?: Prisma.XOR<Prisma.LicenseCreateWithoutConsumersInput, Prisma.LicenseUncheckedCreateWithoutConsumersInput>
connectOrCreate?: Prisma.LicenseCreateOrConnectWithoutConsumersInput
export type LicenseCreateNestedOneWithoutConsumerInput = {
create?: Prisma.XOR<Prisma.LicenseCreateWithoutConsumerInput, Prisma.LicenseUncheckedCreateWithoutConsumerInput>
connectOrCreate?: Prisma.LicenseCreateOrConnectWithoutConsumerInput
connect?: Prisma.LicenseWhereUniqueInput
}
export type LicenseUpdateOneWithoutConsumersNestedInput = {
create?: Prisma.XOR<Prisma.LicenseCreateWithoutConsumersInput, Prisma.LicenseUncheckedCreateWithoutConsumersInput>
connectOrCreate?: Prisma.LicenseCreateOrConnectWithoutConsumersInput
upsert?: Prisma.LicenseUpsertWithoutConsumersInput
export type LicenseUncheckedCreateNestedOneWithoutConsumerInput = {
create?: Prisma.XOR<Prisma.LicenseCreateWithoutConsumerInput, Prisma.LicenseUncheckedCreateWithoutConsumerInput>
connectOrCreate?: Prisma.LicenseCreateOrConnectWithoutConsumerInput
connect?: Prisma.LicenseWhereUniqueInput
}
export type LicenseUpdateOneWithoutConsumerNestedInput = {
create?: Prisma.XOR<Prisma.LicenseCreateWithoutConsumerInput, Prisma.LicenseUncheckedCreateWithoutConsumerInput>
connectOrCreate?: Prisma.LicenseCreateOrConnectWithoutConsumerInput
upsert?: Prisma.LicenseUpsertWithoutConsumerInput
disconnect?: Prisma.LicenseWhereInput | boolean
delete?: Prisma.LicenseWhereInput | boolean
connect?: Prisma.LicenseWhereUniqueInput
update?: Prisma.XOR<Prisma.XOR<Prisma.LicenseUpdateToOneWithWhereWithoutConsumersInput, Prisma.LicenseUpdateWithoutConsumersInput>, Prisma.LicenseUncheckedUpdateWithoutConsumersInput>
update?: Prisma.XOR<Prisma.XOR<Prisma.LicenseUpdateToOneWithWhereWithoutConsumerInput, Prisma.LicenseUpdateWithoutConsumerInput>, Prisma.LicenseUncheckedUpdateWithoutConsumerInput>
}
export type LicenseUncheckedUpdateOneWithoutConsumerNestedInput = {
create?: Prisma.XOR<Prisma.LicenseCreateWithoutConsumerInput, Prisma.LicenseUncheckedCreateWithoutConsumerInput>
connectOrCreate?: Prisma.LicenseCreateOrConnectWithoutConsumerInput
upsert?: Prisma.LicenseUpsertWithoutConsumerInput
disconnect?: Prisma.LicenseWhereInput | boolean
delete?: Prisma.LicenseWhereInput | boolean
connect?: Prisma.LicenseWhereUniqueInput
update?: Prisma.XOR<Prisma.XOR<Prisma.LicenseUpdateToOneWithWhereWithoutConsumerInput, Prisma.LicenseUpdateWithoutConsumerInput>, Prisma.LicenseUncheckedUpdateWithoutConsumerInput>
}
export type EnumLicenseStatusFieldUpdateOperationsInput = {
@@ -442,7 +475,7 @@ export type LicenseUncheckedUpdateManyWithoutPartnerNestedInput = {
deleteMany?: Prisma.LicenseScalarWhereInput | Prisma.LicenseScalarWhereInput[]
}
export type LicenseCreateWithoutConsumersInput = {
export type LicenseCreateWithoutConsumerInput = {
id?: string
starts_at: Date | string
expires_at: Date | string
@@ -452,7 +485,7 @@ export type LicenseCreateWithoutConsumersInput = {
partner?: Prisma.PartnerCreateNestedOneWithoutLicensesInput
}
export type LicenseUncheckedCreateWithoutConsumersInput = {
export type LicenseUncheckedCreateWithoutConsumerInput = {
id?: string
starts_at: Date | string
expires_at: Date | string
@@ -462,23 +495,23 @@ export type LicenseUncheckedCreateWithoutConsumersInput = {
partner_id?: string | null
}
export type LicenseCreateOrConnectWithoutConsumersInput = {
export type LicenseCreateOrConnectWithoutConsumerInput = {
where: Prisma.LicenseWhereUniqueInput
create: Prisma.XOR<Prisma.LicenseCreateWithoutConsumersInput, Prisma.LicenseUncheckedCreateWithoutConsumersInput>
create: Prisma.XOR<Prisma.LicenseCreateWithoutConsumerInput, Prisma.LicenseUncheckedCreateWithoutConsumerInput>
}
export type LicenseUpsertWithoutConsumersInput = {
update: Prisma.XOR<Prisma.LicenseUpdateWithoutConsumersInput, Prisma.LicenseUncheckedUpdateWithoutConsumersInput>
create: Prisma.XOR<Prisma.LicenseCreateWithoutConsumersInput, Prisma.LicenseUncheckedCreateWithoutConsumersInput>
export type LicenseUpsertWithoutConsumerInput = {
update: Prisma.XOR<Prisma.LicenseUpdateWithoutConsumerInput, Prisma.LicenseUncheckedUpdateWithoutConsumerInput>
create: Prisma.XOR<Prisma.LicenseCreateWithoutConsumerInput, Prisma.LicenseUncheckedCreateWithoutConsumerInput>
where?: Prisma.LicenseWhereInput
}
export type LicenseUpdateToOneWithWhereWithoutConsumersInput = {
export type LicenseUpdateToOneWithWhereWithoutConsumerInput = {
where?: Prisma.LicenseWhereInput
data: Prisma.XOR<Prisma.LicenseUpdateWithoutConsumersInput, Prisma.LicenseUncheckedUpdateWithoutConsumersInput>
data: Prisma.XOR<Prisma.LicenseUpdateWithoutConsumerInput, Prisma.LicenseUncheckedUpdateWithoutConsumerInput>
}
export type LicenseUpdateWithoutConsumersInput = {
export type LicenseUpdateWithoutConsumerInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
starts_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
@@ -488,7 +521,7 @@ export type LicenseUpdateWithoutConsumersInput = {
partner?: Prisma.PartnerUpdateOneWithoutLicensesNestedInput
}
export type LicenseUncheckedUpdateWithoutConsumersInput = {
export type LicenseUncheckedUpdateWithoutConsumerInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
starts_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
@@ -505,7 +538,7 @@ export type LicenseCreateWithoutPartnerInput = {
status: $Enums.LicenseStatus
created_at?: Date | string
updated_at?: Date | string
consumers?: Prisma.ConsumerCreateNestedManyWithoutLicenseInput
consumer: Prisma.ConsumerCreateNestedOneWithoutLicenseInput
}
export type LicenseUncheckedCreateWithoutPartnerInput = {
@@ -515,7 +548,7 @@ export type LicenseUncheckedCreateWithoutPartnerInput = {
status: $Enums.LicenseStatus
created_at?: Date | string
updated_at?: Date | string
consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutLicenseInput
consumer_id: string
}
export type LicenseCreateOrConnectWithoutPartnerInput = {
@@ -555,6 +588,7 @@ export type LicenseScalarWhereInput = {
created_at?: Prisma.DateTimeFilter<"License"> | Date | string
updated_at?: Prisma.DateTimeFilter<"License"> | Date | string
partner_id?: Prisma.StringNullableFilter<"License"> | string | null
consumer_id?: Prisma.StringFilter<"License"> | string
}
export type LicenseCreateManyPartnerInput = {
@@ -564,6 +598,7 @@ export type LicenseCreateManyPartnerInput = {
status: $Enums.LicenseStatus
created_at?: Date | string
updated_at?: Date | string
consumer_id: string
}
export type LicenseUpdateWithoutPartnerInput = {
@@ -573,7 +608,7 @@ export type LicenseUpdateWithoutPartnerInput = {
status?: Prisma.EnumLicenseStatusFieldUpdateOperationsInput | $Enums.LicenseStatus
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
consumers?: Prisma.ConsumerUpdateManyWithoutLicenseNestedInput
consumer?: Prisma.ConsumerUpdateOneRequiredWithoutLicenseNestedInput
}
export type LicenseUncheckedUpdateWithoutPartnerInput = {
@@ -583,7 +618,7 @@ export type LicenseUncheckedUpdateWithoutPartnerInput = {
status?: Prisma.EnumLicenseStatusFieldUpdateOperationsInput | $Enums.LicenseStatus
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutLicenseNestedInput
consumer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type LicenseUncheckedUpdateManyWithoutPartnerInput = {
@@ -593,38 +628,10 @@ export type LicenseUncheckedUpdateManyWithoutPartnerInput = {
status?: Prisma.EnumLicenseStatusFieldUpdateOperationsInput | $Enums.LicenseStatus
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
consumer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
/**
* Count Type LicenseCountOutputType
*/
export type LicenseCountOutputType = {
consumers: number
}
export type LicenseCountOutputTypeSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
consumers?: boolean | LicenseCountOutputTypeCountConsumersArgs
}
/**
* LicenseCountOutputType without action
*/
export type LicenseCountOutputTypeDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the LicenseCountOutputType
*/
select?: Prisma.LicenseCountOutputTypeSelect<ExtArgs> | null
}
/**
* LicenseCountOutputType without action
*/
export type LicenseCountOutputTypeCountConsumersArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
where?: Prisma.ConsumerWhereInput
}
export type LicenseSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
id?: boolean
@@ -634,9 +641,9 @@ export type LicenseSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs
created_at?: boolean
updated_at?: boolean
partner_id?: boolean
consumer_id?: boolean
partner?: boolean | Prisma.License$partnerArgs<ExtArgs>
consumers?: boolean | Prisma.License$consumersArgs<ExtArgs>
_count?: boolean | Prisma.LicenseCountOutputTypeDefaultArgs<ExtArgs>
consumer?: boolean | Prisma.ConsumerDefaultArgs<ExtArgs>
}, ExtArgs["result"]["license"]>
@@ -649,20 +656,20 @@ export type LicenseSelectScalar = {
created_at?: boolean
updated_at?: boolean
partner_id?: boolean
consumer_id?: boolean
}
export type LicenseOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "starts_at" | "expires_at" | "status" | "created_at" | "updated_at" | "partner_id", ExtArgs["result"]["license"]>
export type LicenseOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "starts_at" | "expires_at" | "status" | "created_at" | "updated_at" | "partner_id" | "consumer_id", ExtArgs["result"]["license"]>
export type LicenseInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
partner?: boolean | Prisma.License$partnerArgs<ExtArgs>
consumers?: boolean | Prisma.License$consumersArgs<ExtArgs>
_count?: boolean | Prisma.LicenseCountOutputTypeDefaultArgs<ExtArgs>
consumer?: boolean | Prisma.ConsumerDefaultArgs<ExtArgs>
}
export type $LicensePayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
name: "License"
objects: {
partner: Prisma.$PartnerPayload<ExtArgs> | null
consumers: Prisma.$ConsumerPayload<ExtArgs>[]
consumer: Prisma.$ConsumerPayload<ExtArgs>
}
scalars: runtime.Types.Extensions.GetPayloadResult<{
id: string
@@ -672,6 +679,7 @@ export type $LicensePayload<ExtArgs extends runtime.Types.Extensions.InternalArg
created_at: Date
updated_at: Date
partner_id: string | null
consumer_id: string
}, ExtArgs["result"]["license"]>
composites: {}
}
@@ -1013,7 +1021,7 @@ readonly fields: LicenseFieldRefs;
export interface Prisma__LicenseClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
partner<T extends Prisma.License$partnerArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.License$partnerArgs<ExtArgs>>): Prisma.Prisma__PartnerClient<runtime.Types.Result.GetResult<Prisma.$PartnerPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
consumers<T extends Prisma.License$consumersArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.License$consumersArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$ConsumerPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
consumer<T extends Prisma.ConsumerDefaultArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.ConsumerDefaultArgs<ExtArgs>>): Prisma.Prisma__ConsumerClient<runtime.Types.Result.GetResult<Prisma.$ConsumerPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
* @param onfulfilled The callback to execute when the Promise is resolved.
@@ -1050,6 +1058,7 @@ export interface LicenseFieldRefs {
readonly created_at: Prisma.FieldRef<"License", 'DateTime'>
readonly updated_at: Prisma.FieldRef<"License", 'DateTime'>
readonly partner_id: Prisma.FieldRef<"License", 'String'>
readonly consumer_id: Prisma.FieldRef<"License", 'String'>
}
@@ -1411,30 +1420,6 @@ export type License$partnerArgs<ExtArgs extends runtime.Types.Extensions.Interna
where?: Prisma.PartnerWhereInput
}
/**
* License.consumers
*/
export type License$consumersArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Consumer
*/
select?: Prisma.ConsumerSelect<ExtArgs> | null
/**
* Omit specific fields from the Consumer
*/
omit?: Prisma.ConsumerOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: Prisma.ConsumerInclude<ExtArgs> | null
where?: Prisma.ConsumerWhereInput
orderBy?: Prisma.ConsumerOrderByWithRelationInput | Prisma.ConsumerOrderByWithRelationInput[]
cursor?: Prisma.ConsumerWhereUniqueInput
take?: number
skip?: number
distinct?: Prisma.ConsumerScalarFieldEnum | Prisma.ConsumerScalarFieldEnum[]
}
/**
* License without action
*/
@@ -123,7 +123,9 @@ export class AdminUsersService {
create: {
starts_at: license.starts_at,
expires_at: new Date(
new Date(license.starts_at).getFullYear() + 1,
new Date(license.starts_at).setFullYear(
new Date(license.starts_at).getFullYear() + 1,
),
).toISOString(),
status: LicenseStatus.ACTIVE,
partner: {
@@ -1,5 +1,5 @@
import { LicenseStatus } from '@/generated/prisma/enums'
import { ApiProperty, OmitType, PartialType } from '@nestjs/swagger'
import { ApiProperty, PartialType } from '@nestjs/swagger'
import { IsDateString, IsEnum } from 'class-validator'
export class CreateLicenseDto {
@@ -21,16 +21,7 @@ export class CreateLicenseDto {
partner_id: string
}
export class UpdateLicenseDto extends OmitType(PartialType(CreateLicenseDto), [
'starts_at',
]) {
@ApiProperty({ required: true, default: new Date().toISOString() })
@IsDateString(
{ strict: true },
{ message: 'invoice_date must be a valid ISO-8601 string' },
)
starts_at: Date
export class UpdateLicenseDto extends PartialType(CreateLicenseDto) {
@ApiProperty({ enum: LicenseStatus })
@IsEnum(LicenseStatus)
status?: LicenseStatus
@@ -1,6 +1,7 @@
import { LicenseStatus } from '@/generated/prisma/enums'
import { LicenseUpdateInput } from '@/generated/prisma/models'
import { PrismaService } from '@/prisma/prisma.service'
import { Injectable } from '@nestjs/common'
import { BadRequestException, Injectable } from '@nestjs/common'
import { ResponseMapper } from 'common/response/response-mapper'
import { CreateLicenseDto, UpdateLicenseDto } from './dto/license.dto'
@@ -25,7 +26,7 @@ export class LicensesService {
id: data.partner_id,
},
},
consumers: {
consumer: {
connect: {
id: consumerId,
},
@@ -37,13 +38,54 @@ export class LicensesService {
}
async update(id: string, data: UpdateLicenseDto) {
const { starts_at, expires_at } = data
const { starts_at, expires_at, partner_id } = data
const currentLicense = await this.prisma.license.findUnique({
where: { id },
select: {
partner_id: true,
},
})
if (partner_id && currentLicense?.partner_id !== partner_id) {
const partner = await this.prisma.partner.findUnique({
where: {
id: partner_id,
},
select: {
name: true,
license_quota: true,
_count: {
select: {
licenses: true,
},
},
},
})
if (!((partner?.license_quota || 0) - (partner?._count.licenses || 0))) {
throw new BadRequestException(`تعداد لایسنس‌های ${partner?.name} کافی نیست.`)
}
}
const dataToUpdate: LicenseUpdateInput = {}
if (partner_id) {
dataToUpdate.partner = {
connect: {
id: partner_id,
},
}
}
if (starts_at) {
dataToUpdate.starts_at = starts_at
dataToUpdate.expires_at = this.setExpireDate(starts_at)
}
const license = await this.prisma.license.update({
where: { id },
data: {
...data,
starts_at,
expires_at: expires_at ?? this.setExpireDate(starts_at),
...dataToUpdate,
},
})
return ResponseMapper.update(license)
+30 -63
View File
@@ -1,4 +1,4 @@
import { LicenseInclude } from '@/generated/prisma/models'
import { LicenseSelect } from '@/generated/prisma/models'
import { PrismaService } from '@/prisma/prisma.service'
import { Injectable } from '@nestjs/common'
import { ResponseMapper } from 'common/response/response-mapper'
@@ -8,80 +8,52 @@ import { UpdateLicenseDto } from './dto/license.dto'
export class PartnerLicensesService {
constructor(private readonly prisma: PrismaService) {}
private readonly licenseInclude = {
partner: true,
pos: {
include: {
complex: true,
provider: true,
accounts: {
include: {
user: true,
},
omit: {
business_id: true,
partner_id: true,
provider_id: true,
pos_id: true,
},
},
device: {
include: {
brand: true,
},
omit: {
brand_id: true,
},
},
private readonly licenseDefaultSelect: LicenseSelect = {
id: true,
starts_at: true,
expires_at: true,
status: true,
consumer: {
select: {
first_name: true,
last_name: true,
mobile_number: true,
status: true,
},
},
} as LicenseInclude
partner: {
select: {
id: true,
name: true,
},
},
}
async findAll() {
async findAll(page = 1, pageSize = 10) {
const [licenses, count] = await this.prisma.$transaction([
this.prisma.license.findMany({
include: this.licenseInclude,
omit: {
partner_id: true,
},
select: this.licenseDefaultSelect,
skip: (page - 1) * pageSize,
take: pageSize,
}),
this.prisma.license.count(),
])
return ResponseMapper.paginate(
licenses.map(license => {
const { ...rest } = license
// @ts-ignore
const { accounts, ...posRest } = pos
return {
account: accounts[0],
pos: posRest,
...rest,
}
}),
{
count,
},
)
return ResponseMapper.paginate(licenses, {
count,
page,
pageSize,
})
}
async findOne(id: string) {
const license = await this.prisma.license.findFirst({
where: { id },
include: this.licenseInclude,
include: this.licenseDefaultSelect,
omit: {
partner_id: true,
},
})
if (license) {
const { ...rest } = license
// @ts-ignore
const { accounts, ...posRest } = pos
return ResponseMapper.single({
account: accounts[0],
pos: posRest,
...rest,
})
}
return ResponseMapper.single(license)
}
@@ -93,9 +65,4 @@ export class PartnerLicensesService {
})
return ResponseMapper.update(license)
}
async delete(id: string) {
await this.prisma.license.delete({ where: { id } })
return ResponseMapper.delete()
}
}
@@ -1,4 +1,4 @@
import { Body, Controller, Delete, Get, Param, Patch, Post } from '@nestjs/common'
import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common'
import { CreatePartnerLicenseDto, UpdateLicenseDto } from './dto/license.dto'
import { PartnerLicensesService } from './licenses.service'
@@ -32,9 +32,4 @@ export class PartnerLicensesController {
) {
return this.licensesService.update(partnerId, id, data)
}
@Delete(':id')
async delete(@Param('partnerId') partnerId: string, @Param('id') id: string) {
return this.licensesService.delete(partnerId, id)
}
}
@@ -7,52 +7,39 @@ import { CreatePartnerLicenseDto, UpdateLicenseDto } from './dto/license.dto'
export class PartnerLicensesService {
constructor(private readonly prisma: PrismaService) {}
async findAll(partnerId: string) {
// const licenses = await this.prisma.license.findMany({
// where: { partner_id: partnerId },
// include: {
// pos: {
// include: {
// complex: true,
// provider: true,
// accounts: {
// include: {
// user: true,
// },
// omit: {
// business_id: true,
// partner_id: true,
// provider_id: true,
// pos_id: true,
// },
// },
// device: {
// include: {
// brand: true,
// },
// omit: {
// brand_id: true,
// },
// },
// },
// },
// },
// omit: {
// pos_id: true,
// partner_id: true,
// },
// })
// return ResponseMapper.list(
// licenses.map(license => {
// const { pos, ...rest } = license
// const { accounts, ...posRest } = pos
// return {
// account: accounts[0],
// pos: posRest,
// ...rest,
// }
// }),
// )
async findAll(partner_id: string, page = 1, pageSize = 10) {
const [licenses, count] = await this.prisma.$transaction(async tx => [
await tx.license.findMany({
where: {
partner_id,
},
skip: (page - 1) * pageSize,
take: pageSize,
select: {
id: true,
starts_at: true,
expires_at: true,
consumer: {
select: {
id: true,
first_name: true,
last_name: true,
},
},
},
}),
await tx.license.count({
where: {
partner_id,
},
}),
])
return ResponseMapper.paginate(licenses, {
page,
pageSize,
count,
})
}
async findOne(partnerId: string, id: string) {