feat: implement dispensing module with transaction-safe stock management, FEFO allocation, and H1 compliance reporting
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
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();
|
||||
Reference in New Issue
Block a user