Files
musadeq/db-fix.sh

46 lines
1.4 KiB
Bash

#!/bin/bash
echo "🛠️ Applying manual schema updates to PostgreSQL..."
DOCKER_CMD="docker compose"
if ! docker compose version > /dev/null 2>&1; then
DOCKER_CMD="docker-compose"
fi
DB_CONTAINER=$($DOCKER_CMD ps -q db)
if [ -z "$DB_CONTAINER" ]; then
echo "❌ Database container is not running!"
exit 1
fi
if [ -f ".env" ]; then
source .env
else
echo "⚠️ .env file not found. Using default values..."
DB_USER="musadaq_user"
DB_NAME="musadaq_db"
fi
echo "📦 Database container found. Executing ALTER statements..."
docker exec -i $DB_CONTAINER psql -U $DB_USER -d $DB_NAME <<EOF
-- Add missing columns to User
ALTER TABLE "users" ADD COLUMN IF NOT EXISTS "company_id" uuid;
-- Add missing columns to Invoice
ALTER TABLE "invoices" ADD COLUMN IF NOT EXISTS "qr_code" text;
ALTER TABLE "invoices" ADD COLUMN IF NOT EXISTS "ai_confidence_score" numeric(4,3);
ALTER TABLE "invoices" ADD COLUMN IF NOT EXISTS "ai_prompt_tokens" integer DEFAULT 0;
ALTER TABLE "invoices" ADD COLUMN IF NOT EXISTS "ai_completion_tokens" integer DEFAULT 0;
ALTER TABLE "invoices" ADD COLUMN IF NOT EXISTS "ai_total_cost" numeric(10,6) DEFAULT 0;
-- Add missing columns to Company
ALTER TABLE "companies" ADD COLUMN IF NOT EXISTS "certificate_path" varchar(255);
ALTER TABLE "companies" ADD COLUMN IF NOT EXISTS "certificate_password_encrypted" varchar(500);
EOF
echo "✅ Schema updates applied successfully!"