Files
AI_Pharmacy_Api/migrate_multitenant.js
T

36 lines
1.3 KiB
JavaScript

const { Pool } = require('pg');
require('dotenv').config();
const pool = new Pool({ connectionString: process.env.DATABASE_URL });
async function migrate() {
try {
const DEFAULT_TENANT = 'act_admin'; // Fallback tenant for existing data
await pool.query(`
ALTER TABLE prescriptions ADD COLUMN IF NOT EXISTS tenant_id VARCHAR(50);
UPDATE prescriptions SET tenant_id = '${DEFAULT_TENANT}' WHERE tenant_id IS NULL;
ALTER TABLE batches ADD COLUMN IF NOT EXISTS tenant_id VARCHAR(50);
UPDATE batches SET tenant_id = '${DEFAULT_TENANT}' WHERE tenant_id IS NULL;
ALTER TABLE patients ADD COLUMN IF NOT EXISTS tenant_id VARCHAR(50);
UPDATE patients SET tenant_id = '${DEFAULT_TENANT}' WHERE tenant_id IS NULL;
ALTER TABLE suppliers ADD COLUMN IF NOT EXISTS tenant_id VARCHAR(50);
UPDATE suppliers SET tenant_id = '${DEFAULT_TENANT}' WHERE tenant_id IS NULL;
ALTER TABLE order_drafts ADD COLUMN IF NOT EXISTS tenant_id VARCHAR(50);
UPDATE order_drafts SET tenant_id = '${DEFAULT_TENANT}' WHERE tenant_id IS NULL;
`);
console.log('Multi-tenant migration completed successfully');
} catch (err) {
console.error('Error during migration:', err);
} finally {
pool.end();
}
}
migrate();