Add feedback management features: Implement functions to add bonus points and mark feedback as read in the FeedbackManagement component. Update EventFeedback model to include isRead property, enhancing user interaction and feedback tracking.

This commit is contained in:
Julien Froidefond
2025-12-16 16:43:53 +01:00
parent 3dd82c2bd4
commit 16e4b63ffd
10 changed files with 387 additions and 16 deletions

View File

@@ -211,6 +211,19 @@ export type IntNullableWithAggregatesFilter<$PrismaModel = never> = {
_max?: Prisma.NestedIntNullableFilter<$PrismaModel>
}
export type BoolFilter<$PrismaModel = never> = {
equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
not?: Prisma.NestedBoolFilter<$PrismaModel> | boolean
}
export type BoolWithAggregatesFilter<$PrismaModel = never> = {
equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
not?: Prisma.NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
_count?: Prisma.NestedIntFilter<$PrismaModel>
_min?: Prisma.NestedBoolFilter<$PrismaModel>
_max?: Prisma.NestedBoolFilter<$PrismaModel>
}
export type EnumChallengeStatusFilter<$PrismaModel = never> = {
equals?: $Enums.ChallengeStatus | Prisma.EnumChallengeStatusFieldRefInput<$PrismaModel>
in?: $Enums.ChallengeStatus[]
@@ -467,6 +480,19 @@ export type NestedFloatNullableFilter<$PrismaModel = never> = {
not?: Prisma.NestedFloatNullableFilter<$PrismaModel> | number | null
}
export type NestedBoolFilter<$PrismaModel = never> = {
equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
not?: Prisma.NestedBoolFilter<$PrismaModel> | boolean
}
export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = {
equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
not?: Prisma.NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
_count?: Prisma.NestedIntFilter<$PrismaModel>
_min?: Prisma.NestedBoolFilter<$PrismaModel>
_max?: Prisma.NestedBoolFilter<$PrismaModel>
}
export type NestedEnumChallengeStatusFilter<$PrismaModel = never> = {
equals?: $Enums.ChallengeStatus | Prisma.EnumChallengeStatusFieldRefInput<$PrismaModel>
in?: $Enums.ChallengeStatus[]

File diff suppressed because one or more lines are too long

View File

@@ -1032,6 +1032,7 @@ export const EventFeedbackScalarFieldEnum = {
eventId: 'eventId',
rating: 'rating',
comment: 'comment',
isRead: 'isRead',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
} as const
@@ -1138,6 +1139,13 @@ export type EnumEventTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$Prisma
/**
* Reference to a field of type 'Boolean'
*/
export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'>
/**
* Reference to a field of type 'ChallengeStatus'
*/

View File

@@ -141,6 +141,7 @@ export const EventFeedbackScalarFieldEnum = {
eventId: 'eventId',
rating: 'rating',
comment: 'comment',
isRead: 'isRead',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
} as const

View File

@@ -40,6 +40,7 @@ export type EventFeedbackMinAggregateOutputType = {
eventId: string | null
rating: number | null
comment: string | null
isRead: boolean | null
createdAt: Date | null
updatedAt: Date | null
}
@@ -50,6 +51,7 @@ export type EventFeedbackMaxAggregateOutputType = {
eventId: string | null
rating: number | null
comment: string | null
isRead: boolean | null
createdAt: Date | null
updatedAt: Date | null
}
@@ -60,6 +62,7 @@ export type EventFeedbackCountAggregateOutputType = {
eventId: number
rating: number
comment: number
isRead: number
createdAt: number
updatedAt: number
_all: number
@@ -80,6 +83,7 @@ export type EventFeedbackMinAggregateInputType = {
eventId?: true
rating?: true
comment?: true
isRead?: true
createdAt?: true
updatedAt?: true
}
@@ -90,6 +94,7 @@ export type EventFeedbackMaxAggregateInputType = {
eventId?: true
rating?: true
comment?: true
isRead?: true
createdAt?: true
updatedAt?: true
}
@@ -100,6 +105,7 @@ export type EventFeedbackCountAggregateInputType = {
eventId?: true
rating?: true
comment?: true
isRead?: true
createdAt?: true
updatedAt?: true
_all?: true
@@ -197,6 +203,7 @@ export type EventFeedbackGroupByOutputType = {
eventId: string
rating: number
comment: string | null
isRead: boolean
createdAt: Date
updatedAt: Date
_count: EventFeedbackCountAggregateOutputType | null
@@ -230,6 +237,7 @@ export type EventFeedbackWhereInput = {
eventId?: Prisma.StringFilter<"EventFeedback"> | string
rating?: Prisma.IntFilter<"EventFeedback"> | number
comment?: Prisma.StringNullableFilter<"EventFeedback"> | string | null
isRead?: Prisma.BoolFilter<"EventFeedback"> | boolean
createdAt?: Prisma.DateTimeFilter<"EventFeedback"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"EventFeedback"> | Date | string
event?: Prisma.XOR<Prisma.EventScalarRelationFilter, Prisma.EventWhereInput>
@@ -242,6 +250,7 @@ export type EventFeedbackOrderByWithRelationInput = {
eventId?: Prisma.SortOrder
rating?: Prisma.SortOrder
comment?: Prisma.SortOrderInput | Prisma.SortOrder
isRead?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
event?: Prisma.EventOrderByWithRelationInput
@@ -258,6 +267,7 @@ export type EventFeedbackWhereUniqueInput = Prisma.AtLeast<{
eventId?: Prisma.StringFilter<"EventFeedback"> | string
rating?: Prisma.IntFilter<"EventFeedback"> | number
comment?: Prisma.StringNullableFilter<"EventFeedback"> | string | null
isRead?: Prisma.BoolFilter<"EventFeedback"> | boolean
createdAt?: Prisma.DateTimeFilter<"EventFeedback"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"EventFeedback"> | Date | string
event?: Prisma.XOR<Prisma.EventScalarRelationFilter, Prisma.EventWhereInput>
@@ -270,6 +280,7 @@ export type EventFeedbackOrderByWithAggregationInput = {
eventId?: Prisma.SortOrder
rating?: Prisma.SortOrder
comment?: Prisma.SortOrderInput | Prisma.SortOrder
isRead?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
_count?: Prisma.EventFeedbackCountOrderByAggregateInput
@@ -288,6 +299,7 @@ export type EventFeedbackScalarWhereWithAggregatesInput = {
eventId?: Prisma.StringWithAggregatesFilter<"EventFeedback"> | string
rating?: Prisma.IntWithAggregatesFilter<"EventFeedback"> | number
comment?: Prisma.StringNullableWithAggregatesFilter<"EventFeedback"> | string | null
isRead?: Prisma.BoolWithAggregatesFilter<"EventFeedback"> | boolean
createdAt?: Prisma.DateTimeWithAggregatesFilter<"EventFeedback"> | Date | string
updatedAt?: Prisma.DateTimeWithAggregatesFilter<"EventFeedback"> | Date | string
}
@@ -296,6 +308,7 @@ export type EventFeedbackCreateInput = {
id?: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
event: Prisma.EventCreateNestedOneWithoutFeedbacksInput
@@ -308,6 +321,7 @@ export type EventFeedbackUncheckedCreateInput = {
eventId: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -316,6 +330,7 @@ export type EventFeedbackUpdateInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
event?: Prisma.EventUpdateOneRequiredWithoutFeedbacksNestedInput
@@ -328,6 +343,7 @@ export type EventFeedbackUncheckedUpdateInput = {
eventId?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -338,6 +354,7 @@ export type EventFeedbackCreateManyInput = {
eventId: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -346,6 +363,7 @@ export type EventFeedbackUpdateManyMutationInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -356,6 +374,7 @@ export type EventFeedbackUncheckedUpdateManyInput = {
eventId?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -381,6 +400,7 @@ export type EventFeedbackCountOrderByAggregateInput = {
eventId?: Prisma.SortOrder
rating?: Prisma.SortOrder
comment?: Prisma.SortOrder
isRead?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
}
@@ -395,6 +415,7 @@ export type EventFeedbackMaxOrderByAggregateInput = {
eventId?: Prisma.SortOrder
rating?: Prisma.SortOrder
comment?: Prisma.SortOrder
isRead?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
}
@@ -405,6 +426,7 @@ export type EventFeedbackMinOrderByAggregateInput = {
eventId?: Prisma.SortOrder
rating?: Prisma.SortOrder
comment?: Prisma.SortOrder
isRead?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
}
@@ -497,10 +519,15 @@ export type EventFeedbackUncheckedUpdateManyWithoutEventNestedInput = {
deleteMany?: Prisma.EventFeedbackScalarWhereInput | Prisma.EventFeedbackScalarWhereInput[]
}
export type BoolFieldUpdateOperationsInput = {
set?: boolean
}
export type EventFeedbackCreateWithoutUserInput = {
id?: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
event: Prisma.EventCreateNestedOneWithoutFeedbacksInput
@@ -511,6 +538,7 @@ export type EventFeedbackUncheckedCreateWithoutUserInput = {
eventId: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -549,6 +577,7 @@ export type EventFeedbackScalarWhereInput = {
eventId?: Prisma.StringFilter<"EventFeedback"> | string
rating?: Prisma.IntFilter<"EventFeedback"> | number
comment?: Prisma.StringNullableFilter<"EventFeedback"> | string | null
isRead?: Prisma.BoolFilter<"EventFeedback"> | boolean
createdAt?: Prisma.DateTimeFilter<"EventFeedback"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"EventFeedback"> | Date | string
}
@@ -557,6 +586,7 @@ export type EventFeedbackCreateWithoutEventInput = {
id?: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
user: Prisma.UserCreateNestedOneWithoutEventFeedbacksInput
@@ -567,6 +597,7 @@ export type EventFeedbackUncheckedCreateWithoutEventInput = {
userId: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -601,6 +632,7 @@ export type EventFeedbackCreateManyUserInput = {
eventId: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -609,6 +641,7 @@ export type EventFeedbackUpdateWithoutUserInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
event?: Prisma.EventUpdateOneRequiredWithoutFeedbacksNestedInput
@@ -619,6 +652,7 @@ export type EventFeedbackUncheckedUpdateWithoutUserInput = {
eventId?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -628,6 +662,7 @@ export type EventFeedbackUncheckedUpdateManyWithoutUserInput = {
eventId?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -637,6 +672,7 @@ export type EventFeedbackCreateManyEventInput = {
userId: string
rating: number
comment?: string | null
isRead?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -645,6 +681,7 @@ export type EventFeedbackUpdateWithoutEventInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
user?: Prisma.UserUpdateOneRequiredWithoutEventFeedbacksNestedInput
@@ -655,6 +692,7 @@ export type EventFeedbackUncheckedUpdateWithoutEventInput = {
userId?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -664,6 +702,7 @@ export type EventFeedbackUncheckedUpdateManyWithoutEventInput = {
userId?: Prisma.StringFieldUpdateOperationsInput | string
rating?: Prisma.IntFieldUpdateOperationsInput | number
comment?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
isRead?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -676,6 +715,7 @@ export type EventFeedbackSelect<ExtArgs extends runtime.Types.Extensions.Interna
eventId?: boolean
rating?: boolean
comment?: boolean
isRead?: boolean
createdAt?: boolean
updatedAt?: boolean
event?: boolean | Prisma.EventDefaultArgs<ExtArgs>
@@ -688,6 +728,7 @@ export type EventFeedbackSelectCreateManyAndReturn<ExtArgs extends runtime.Types
eventId?: boolean
rating?: boolean
comment?: boolean
isRead?: boolean
createdAt?: boolean
updatedAt?: boolean
event?: boolean | Prisma.EventDefaultArgs<ExtArgs>
@@ -700,6 +741,7 @@ export type EventFeedbackSelectUpdateManyAndReturn<ExtArgs extends runtime.Types
eventId?: boolean
rating?: boolean
comment?: boolean
isRead?: boolean
createdAt?: boolean
updatedAt?: boolean
event?: boolean | Prisma.EventDefaultArgs<ExtArgs>
@@ -712,11 +754,12 @@ export type EventFeedbackSelectScalar = {
eventId?: boolean
rating?: boolean
comment?: boolean
isRead?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type EventFeedbackOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "userId" | "eventId" | "rating" | "comment" | "createdAt" | "updatedAt", ExtArgs["result"]["eventFeedback"]>
export type EventFeedbackOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "userId" | "eventId" | "rating" | "comment" | "isRead" | "createdAt" | "updatedAt", ExtArgs["result"]["eventFeedback"]>
export type EventFeedbackInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
event?: boolean | Prisma.EventDefaultArgs<ExtArgs>
user?: boolean | Prisma.UserDefaultArgs<ExtArgs>
@@ -742,6 +785,7 @@ export type $EventFeedbackPayload<ExtArgs extends runtime.Types.Extensions.Inter
eventId: string
rating: number
comment: string | null
isRead: boolean
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["eventFeedback"]>
@@ -1174,6 +1218,7 @@ export interface EventFeedbackFieldRefs {
readonly eventId: Prisma.FieldRef<"EventFeedback", 'String'>
readonly rating: Prisma.FieldRef<"EventFeedback", 'Int'>
readonly comment: Prisma.FieldRef<"EventFeedback", 'String'>
readonly isRead: Prisma.FieldRef<"EventFeedback", 'Boolean'>
readonly createdAt: Prisma.FieldRef<"EventFeedback", 'DateTime'>
readonly updatedAt: Prisma.FieldRef<"EventFeedback", 'DateTime'>
}