Fix review lifecycle tracking

This commit is contained in:
gpt-engineer-app[bot]
2025-10-17 20:29:32 +00:00
parent f36ef04a54
commit 9f5e19922c
4 changed files with 59 additions and 16 deletions

View File

@@ -94,7 +94,7 @@ export interface ReviewLifecycleDetails {
entity_id: string;
entity_name?: string;
rating?: number;
review_text?: string;
content?: string;
deletion_reason?: string;
was_moderated?: boolean;
}
@@ -590,14 +590,14 @@ export async function fetchSystemActivities(
// Fetch review lifecycle events
// 1. Review creations (recent 7 days)
const { data: newReviews, error: reviewsError } = await supabase
const { data: newReviews, error: newReviewsError } = await supabase
.from('reviews')
.select('id, user_id, park_id, ride_id, rating, review_text, created_at')
.select('id, user_id, park_id, ride_id, rating, content, created_at')
.gte('created_at', sevenDaysAgo.toISOString())
.order('created_at', { ascending: false })
.limit(Math.ceil(limit / 2));
if (!reviewsError && newReviews) {
if (!newReviewsError && newReviews) {
for (const review of newReviews) {
const entityType = review.park_id ? 'park' : 'ride';
const entityId = review.park_id || review.ride_id;
@@ -614,20 +614,20 @@ export async function fetchSystemActivities(
entity_type: entityType as 'park' | 'ride',
entity_id: entityId!,
rating: review.rating,
review_text: review.review_text,
content: review.content,
} as ReviewLifecycleDetails,
});
}
}
// 2. Review deletions
const { data: deletedReviews, error: deletionsError } = await supabase
const { data: deletedReviews, error: deletedReviewsError } = await supabase
.from('review_deletions')
.select('id, review_id, user_id, park_id, ride_id, rating, review_text, deleted_by, deleted_at, deletion_reason, was_moderated')
.select('id, review_id, user_id, park_id, ride_id, rating, content, deleted_by, deleted_at, deletion_reason, was_moderated')
.order('deleted_at', { ascending: false })
.limit(limit);
if (!deletionsError && deletedReviews) {
if (!deletedReviewsError && deletedReviews) {
for (const deletion of deletedReviews) {
const entityType = deletion.park_id ? 'park' : 'ride';
const entityId = deletion.park_id || deletion.ride_id;
@@ -644,7 +644,7 @@ export async function fetchSystemActivities(
entity_type: entityType as 'park' | 'ride',
entity_id: entityId!,
rating: deletion.rating,
review_text: deletion.review_text || undefined,
content: deletion.content || undefined,
deletion_reason: deletion.deletion_reason || undefined,
was_moderated: deletion.was_moderated,
} as ReviewLifecycleDetails,