refund roadmap pr-1 and pr-2

This commit is contained in:
2026-05-11 13:04:20 +07:00
parent d2b0a780d5
commit 54f4569107
36 changed files with 5750 additions and 19 deletions
+183
View File
@@ -302,6 +302,7 @@ export type PaymentWhereInput = {
createdAt?: Prisma.DateTimeFilter<"Payment"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"Payment"> | Date | string
booking?: Prisma.XOR<Prisma.BookingScalarRelationFilter, Prisma.BookingWhereInput>
refunds?: Prisma.RefundListRelationFilter
}
export type PaymentOrderByWithRelationInput = {
@@ -322,6 +323,7 @@ export type PaymentOrderByWithRelationInput = {
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
booking?: Prisma.BookingOrderByWithRelationInput
refunds?: Prisma.RefundOrderByRelationAggregateInput
}
export type PaymentWhereUniqueInput = Prisma.AtLeast<{
@@ -345,6 +347,7 @@ export type PaymentWhereUniqueInput = Prisma.AtLeast<{
createdAt?: Prisma.DateTimeFilter<"Payment"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"Payment"> | Date | string
booking?: Prisma.XOR<Prisma.BookingScalarRelationFilter, Prisma.BookingWhereInput>
refunds?: Prisma.RefundListRelationFilter
}, "id" | "externalOrderId">
export type PaymentOrderByWithAggregationInput = {
@@ -410,6 +413,7 @@ export type PaymentCreateInput = {
createdAt?: Date | string
updatedAt?: Date | string
booking: Prisma.BookingCreateNestedOneWithoutPaymentsInput
refunds?: Prisma.RefundCreateNestedManyWithoutPaymentInput
}
export type PaymentUncheckedCreateInput = {
@@ -429,6 +433,7 @@ export type PaymentUncheckedCreateInput = {
rejectionReason?: string | null
createdAt?: Date | string
updatedAt?: Date | string
refunds?: Prisma.RefundUncheckedCreateNestedManyWithoutPaymentInput
}
export type PaymentUpdateInput = {
@@ -448,6 +453,7 @@ export type PaymentUpdateInput = {
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
booking?: Prisma.BookingUpdateOneRequiredWithoutPaymentsNestedInput
refunds?: Prisma.RefundUpdateManyWithoutPaymentNestedInput
}
export type PaymentUncheckedUpdateInput = {
@@ -467,6 +473,7 @@ export type PaymentUncheckedUpdateInput = {
rejectionReason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
refunds?: Prisma.RefundUncheckedUpdateManyWithoutPaymentNestedInput
}
export type PaymentCreateManyInput = {
@@ -598,6 +605,11 @@ export type PaymentSumOrderByAggregateInput = {
amount?: Prisma.SortOrder
}
export type PaymentNullableScalarRelationFilter = {
is?: Prisma.PaymentWhereInput | null
isNot?: Prisma.PaymentWhereInput | null
}
export type PaymentCreateNestedManyWithoutBookingInput = {
create?: Prisma.XOR<Prisma.PaymentCreateWithoutBookingInput, Prisma.PaymentUncheckedCreateWithoutBookingInput> | Prisma.PaymentCreateWithoutBookingInput[] | Prisma.PaymentUncheckedCreateWithoutBookingInput[]
connectOrCreate?: Prisma.PaymentCreateOrConnectWithoutBookingInput | Prisma.PaymentCreateOrConnectWithoutBookingInput[]
@@ -648,6 +660,22 @@ export type EnumPaymentStatusFieldUpdateOperationsInput = {
set?: $Enums.PaymentStatus
}
export type PaymentCreateNestedOneWithoutRefundsInput = {
create?: Prisma.XOR<Prisma.PaymentCreateWithoutRefundsInput, Prisma.PaymentUncheckedCreateWithoutRefundsInput>
connectOrCreate?: Prisma.PaymentCreateOrConnectWithoutRefundsInput
connect?: Prisma.PaymentWhereUniqueInput
}
export type PaymentUpdateOneWithoutRefundsNestedInput = {
create?: Prisma.XOR<Prisma.PaymentCreateWithoutRefundsInput, Prisma.PaymentUncheckedCreateWithoutRefundsInput>
connectOrCreate?: Prisma.PaymentCreateOrConnectWithoutRefundsInput
upsert?: Prisma.PaymentUpsertWithoutRefundsInput
disconnect?: Prisma.PaymentWhereInput | boolean
delete?: Prisma.PaymentWhereInput | boolean
connect?: Prisma.PaymentWhereUniqueInput
update?: Prisma.XOR<Prisma.XOR<Prisma.PaymentUpdateToOneWithWhereWithoutRefundsInput, Prisma.PaymentUpdateWithoutRefundsInput>, Prisma.PaymentUncheckedUpdateWithoutRefundsInput>
}
export type PaymentCreateWithoutBookingInput = {
id?: string
provider: $Enums.PaymentProvider
@@ -664,6 +692,7 @@ export type PaymentCreateWithoutBookingInput = {
rejectionReason?: string | null
createdAt?: Date | string
updatedAt?: Date | string
refunds?: Prisma.RefundCreateNestedManyWithoutPaymentInput
}
export type PaymentUncheckedCreateWithoutBookingInput = {
@@ -682,6 +711,7 @@ export type PaymentUncheckedCreateWithoutBookingInput = {
rejectionReason?: string | null
createdAt?: Date | string
updatedAt?: Date | string
refunds?: Prisma.RefundUncheckedCreateNestedManyWithoutPaymentInput
}
export type PaymentCreateOrConnectWithoutBookingInput = {
@@ -732,6 +762,98 @@ export type PaymentScalarWhereInput = {
updatedAt?: Prisma.DateTimeFilter<"Payment"> | Date | string
}
export type PaymentCreateWithoutRefundsInput = {
id?: string
provider: $Enums.PaymentProvider
externalOrderId: string
externalTxId?: string | null
method?: string | null
amount: number
status?: $Enums.PaymentStatus
rawCallback?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
snapToken?: string | null
expiresAt?: Date | string | null
paidAt?: Date | string | null
failedAt?: Date | string | null
rejectionReason?: string | null
createdAt?: Date | string
updatedAt?: Date | string
booking: Prisma.BookingCreateNestedOneWithoutPaymentsInput
}
export type PaymentUncheckedCreateWithoutRefundsInput = {
id?: string
bookingId: string
provider: $Enums.PaymentProvider
externalOrderId: string
externalTxId?: string | null
method?: string | null
amount: number
status?: $Enums.PaymentStatus
rawCallback?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
snapToken?: string | null
expiresAt?: Date | string | null
paidAt?: Date | string | null
failedAt?: Date | string | null
rejectionReason?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type PaymentCreateOrConnectWithoutRefundsInput = {
where: Prisma.PaymentWhereUniqueInput
create: Prisma.XOR<Prisma.PaymentCreateWithoutRefundsInput, Prisma.PaymentUncheckedCreateWithoutRefundsInput>
}
export type PaymentUpsertWithoutRefundsInput = {
update: Prisma.XOR<Prisma.PaymentUpdateWithoutRefundsInput, Prisma.PaymentUncheckedUpdateWithoutRefundsInput>
create: Prisma.XOR<Prisma.PaymentCreateWithoutRefundsInput, Prisma.PaymentUncheckedCreateWithoutRefundsInput>
where?: Prisma.PaymentWhereInput
}
export type PaymentUpdateToOneWithWhereWithoutRefundsInput = {
where?: Prisma.PaymentWhereInput
data: Prisma.XOR<Prisma.PaymentUpdateWithoutRefundsInput, Prisma.PaymentUncheckedUpdateWithoutRefundsInput>
}
export type PaymentUpdateWithoutRefundsInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
provider?: Prisma.EnumPaymentProviderFieldUpdateOperationsInput | $Enums.PaymentProvider
externalOrderId?: Prisma.StringFieldUpdateOperationsInput | string
externalTxId?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
method?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
amount?: Prisma.IntFieldUpdateOperationsInput | number
status?: Prisma.EnumPaymentStatusFieldUpdateOperationsInput | $Enums.PaymentStatus
rawCallback?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
snapToken?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
expiresAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
paidAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
failedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
rejectionReason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
booking?: Prisma.BookingUpdateOneRequiredWithoutPaymentsNestedInput
}
export type PaymentUncheckedUpdateWithoutRefundsInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
bookingId?: Prisma.StringFieldUpdateOperationsInput | string
provider?: Prisma.EnumPaymentProviderFieldUpdateOperationsInput | $Enums.PaymentProvider
externalOrderId?: Prisma.StringFieldUpdateOperationsInput | string
externalTxId?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
method?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
amount?: Prisma.IntFieldUpdateOperationsInput | number
status?: Prisma.EnumPaymentStatusFieldUpdateOperationsInput | $Enums.PaymentStatus
rawCallback?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
snapToken?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
expiresAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
paidAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
failedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
rejectionReason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
export type PaymentCreateManyBookingInput = {
id?: string
provider: $Enums.PaymentProvider
@@ -766,6 +888,7 @@ export type PaymentUpdateWithoutBookingInput = {
rejectionReason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
refunds?: Prisma.RefundUpdateManyWithoutPaymentNestedInput
}
export type PaymentUncheckedUpdateWithoutBookingInput = {
@@ -784,6 +907,7 @@ export type PaymentUncheckedUpdateWithoutBookingInput = {
rejectionReason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
refunds?: Prisma.RefundUncheckedUpdateManyWithoutPaymentNestedInput
}
export type PaymentUncheckedUpdateManyWithoutBookingInput = {
@@ -805,6 +929,35 @@ export type PaymentUncheckedUpdateManyWithoutBookingInput = {
}
/**
* Count Type PaymentCountOutputType
*/
export type PaymentCountOutputType = {
refunds: number
}
export type PaymentCountOutputTypeSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
refunds?: boolean | PaymentCountOutputTypeCountRefundsArgs
}
/**
* PaymentCountOutputType without action
*/
export type PaymentCountOutputTypeDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the PaymentCountOutputType
*/
select?: Prisma.PaymentCountOutputTypeSelect<ExtArgs> | null
}
/**
* PaymentCountOutputType without action
*/
export type PaymentCountOutputTypeCountRefundsArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
where?: Prisma.RefundWhereInput
}
export type PaymentSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
id?: boolean
@@ -824,6 +977,8 @@ export type PaymentSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs
createdAt?: boolean
updatedAt?: boolean
booking?: boolean | Prisma.BookingDefaultArgs<ExtArgs>
refunds?: boolean | Prisma.Payment$refundsArgs<ExtArgs>
_count?: boolean | Prisma.PaymentCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["payment"]>
export type PaymentSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
@@ -888,6 +1043,8 @@ export type PaymentSelectScalar = {
export type PaymentOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "bookingId" | "provider" | "externalOrderId" | "externalTxId" | "method" | "amount" | "status" | "rawCallback" | "snapToken" | "expiresAt" | "paidAt" | "failedAt" | "rejectionReason" | "createdAt" | "updatedAt", ExtArgs["result"]["payment"]>
export type PaymentInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
booking?: boolean | Prisma.BookingDefaultArgs<ExtArgs>
refunds?: boolean | Prisma.Payment$refundsArgs<ExtArgs>
_count?: boolean | Prisma.PaymentCountOutputTypeDefaultArgs<ExtArgs>
}
export type PaymentIncludeCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
booking?: boolean | Prisma.BookingDefaultArgs<ExtArgs>
@@ -900,6 +1057,7 @@ export type $PaymentPayload<ExtArgs extends runtime.Types.Extensions.InternalArg
name: "Payment"
objects: {
booking: Prisma.$BookingPayload<ExtArgs>
refunds: Prisma.$RefundPayload<ExtArgs>[]
}
scalars: runtime.Types.Extensions.GetPayloadResult<{
id: string
@@ -1332,6 +1490,7 @@ readonly fields: PaymentFieldRefs;
export interface Prisma__PaymentClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
booking<T extends Prisma.BookingDefaultArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.BookingDefaultArgs<ExtArgs>>): Prisma.Prisma__BookingClient<runtime.Types.Result.GetResult<Prisma.$BookingPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
refunds<T extends Prisma.Payment$refundsArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.Payment$refundsArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$RefundPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
* @param onfulfilled The callback to execute when the Promise is resolved.
@@ -1777,6 +1936,30 @@ export type PaymentDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.Inter
limit?: number
}
/**
* Payment.refunds
*/
export type Payment$refundsArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Refund
*/
select?: Prisma.RefundSelect<ExtArgs> | null
/**
* Omit specific fields from the Refund
*/
omit?: Prisma.RefundOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: Prisma.RefundInclude<ExtArgs> | null
where?: Prisma.RefundWhereInput
orderBy?: Prisma.RefundOrderByWithRelationInput | Prisma.RefundOrderByWithRelationInput[]
cursor?: Prisma.RefundWhereUniqueInput
take?: number
skip?: number
distinct?: Prisma.RefundScalarFieldEnum | Prisma.RefundScalarFieldEnum[]
}
/**
* Payment without action
*/