fixed db scripts

This commit is contained in:
blaisadmin
2026-05-02 10:24:58 -04:00
parent 1bb3002baf
commit 22f344a998
8 changed files with 409 additions and 14 deletions
+56 -7
View File
@@ -253,6 +253,7 @@ export const createBirdMilestoneReminderDelivery = async ({
};
export const createBird = async ({
birdId,
workspaceId,
name,
tagId,
@@ -262,9 +263,13 @@ export const createBird = async ({
gotchaDay,
chartColor,
photoDataUrl,
photoObjectKey = null,
photoContentType = null,
photoUpdatedAt = null,
notifyOnDob,
notifyOnGotchaDay,
}: {
birdId?: string;
workspaceId: number;
name: string;
tagId: string | null;
@@ -274,14 +279,33 @@ export const createBird = async ({
gotchaDay: string | null;
chartColor: string;
photoDataUrl: string | null;
photoObjectKey?: string | null;
photoContentType?: string | null;
photoUpdatedAt?: string | null;
notifyOnDob: boolean;
notifyOnGotchaDay: boolean;
}) => {
const result = await db.query<BirdRow>(
`INSERT INTO birds (workspace_id, name, tag_id, species, gender, date_of_birth, gotcha_day, chart_color, photo_data_url, notify_on_dob, notify_on_gotcha_day)
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11)
`INSERT INTO birds (id, workspace_id, name, tag_id, species, gender, date_of_birth, gotcha_day, chart_color, photo_data_url, photo_object_key, photo_content_type, photo_updated_at, notify_on_dob, notify_on_gotcha_day)
VALUES (COALESCE($1::uuid, gen_random_uuid()), $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15)
RETURNING id, workspace_id, name, tag_id, species, gender, date_of_birth::text, gotcha_day::text, chart_color, photo_data_url, photo_object_key, photo_content_type, photo_updated_at, notify_on_dob, notify_on_gotcha_day, memorialized_at, memorialized_on::text, memorial_note, notify_on_memorial_day, created_at, NULL::text AS latest_weight_grams, NULL::text AS latest_recorded_on`,
[workspaceId, name, tagId, species, gender, dateOfBirth, gotchaDay, chartColor, photoDataUrl, notifyOnDob, notifyOnGotchaDay],
[
birdId ?? null,
workspaceId,
name,
tagId,
species,
gender,
dateOfBirth,
gotchaDay,
chartColor,
photoDataUrl,
photoObjectKey,
photoContentType,
photoUpdatedAt,
notifyOnDob,
notifyOnGotchaDay,
],
);
return result.rows[0] ?? null;
@@ -298,6 +322,9 @@ export const updateBird = async ({
gotchaDay,
chartColor,
photoDataUrl,
photoObjectKey = null,
photoContentType = null,
photoUpdatedAt = null,
notifyOnDob,
notifyOnGotchaDay,
}: {
@@ -311,6 +338,9 @@ export const updateBird = async ({
gotchaDay: string | null;
chartColor: string;
photoDataUrl: string | null;
photoObjectKey?: string | null;
photoContentType?: string | null;
photoUpdatedAt?: string | null;
notifyOnDob: boolean;
notifyOnGotchaDay: boolean;
}) => {
@@ -324,10 +354,13 @@ export const updateBird = async ({
gotcha_day = $7,
chart_color = $8,
photo_data_url = $9,
notify_on_dob = $10,
notify_on_gotcha_day = $11
photo_object_key = $10,
photo_content_type = $11,
photo_updated_at = $12,
notify_on_dob = $13,
notify_on_gotcha_day = $14
WHERE id = $1
AND workspace_id = $12
AND workspace_id = $15
AND memorialized_at IS NULL
RETURNING id, workspace_id, name, tag_id, species, gender, date_of_birth::text, gotcha_day::text, chart_color, photo_data_url, photo_object_key, photo_content_type, photo_updated_at, notify_on_dob, notify_on_gotcha_day, memorialized_at, memorialized_on::text, memorial_note, notify_on_memorial_day, created_at,
(
@@ -344,7 +377,23 @@ export const updateBird = async ({
ORDER BY recorded_on DESC
LIMIT 1
) AS latest_recorded_on`,
[birdId, name, tagId, species, gender, dateOfBirth, gotchaDay, chartColor, photoDataUrl, notifyOnDob, notifyOnGotchaDay, workspaceId],
[
birdId,
name,
tagId,
species,
gender,
dateOfBirth,
gotchaDay,
chartColor,
photoDataUrl,
photoObjectKey,
photoContentType,
photoUpdatedAt,
notifyOnDob,
notifyOnGotchaDay,
workspaceId,
],
);
return result.rows[0] ?? null;