{ "id": "e00210f9-6176-4489-9289-f616755bacfa", "prevId": "184ea587-d697-48d3-9d1a-1b81a598da72", "version": "7", "dialect": "postgresql", "tables": { "public.app_notification_deliveries": { "name": "app_notification_deliveries", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "notification_id": { "name": "notification_id", "type": "text", "primaryKey": false, "notNull": true }, "channel": { "name": "channel", "type": "text", "primaryKey": false, "notNull": true }, "recipient_address": { "name": "recipient_address", "type": "text", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "attempt_count": { "name": "attempt_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "last_error": { "name": "last_error", "type": "text", "primaryKey": false, "notNull": false }, "sent_at": { "name": "sent_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.app_notification_dispatches": { "name": "app_notification_dispatches", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "event_id": { "name": "event_id", "type": "text", "primaryKey": false, "notNull": true }, "template_id": { "name": "template_id", "type": "text", "primaryKey": false, "notNull": false }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "channel": { "name": "channel", "type": "text", "primaryKey": false, "notNull": true }, "provider_key": { "name": "provider_key", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "recipient_to": { "name": "recipient_to", "type": "jsonb", "primaryKey": false, "notNull": true }, "recipient_cc": { "name": "recipient_cc", "type": "jsonb", "primaryKey": false, "notNull": false }, "recipient_bcc": { "name": "recipient_bcc", "type": "jsonb", "primaryKey": false, "notNull": false }, "reply_to": { "name": "reply_to", "type": "text", "primaryKey": false, "notNull": false }, "subject": { "name": "subject", "type": "text", "primaryKey": false, "notNull": true }, "body_text": { "name": "body_text", "type": "text", "primaryKey": false, "notNull": true }, "body_html": { "name": "body_html", "type": "text", "primaryKey": false, "notNull": false }, "attachments": { "name": "attachments", "type": "jsonb", "primaryKey": false, "notNull": false }, "recipient_user_id": { "name": "recipient_user_id", "type": "text", "primaryKey": false, "notNull": false }, "recipient_address": { "name": "recipient_address", "type": "text", "primaryKey": false, "notNull": false }, "requested_by": { "name": "requested_by", "type": "text", "primaryKey": false, "notNull": true }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "last_error": { "name": "last_error", "type": "text", "primaryKey": false, "notNull": false }, "retry_count": { "name": "retry_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "max_retry_count": { "name": "max_retry_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 3 }, "last_attempt_at": { "name": "last_attempt_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "sent_at": { "name": "sent_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "app_notification_dispatches_org_event_channel_recipient_idx": { "name": "app_notification_dispatches_org_event_channel_recipient_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "channel", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "recipient_address", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.app_notification_events": { "name": "app_notification_events", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "event_type": { "name": "event_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "actor_user_id": { "name": "actor_user_id", "type": "text", "primaryKey": false, "notNull": false }, "payload": { "name": "payload", "type": "jsonb", "primaryKey": false, "notNull": false }, "dedupe_key": { "name": "dedupe_key", "type": "text", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "last_error": { "name": "last_error", "type": "text", "primaryKey": false, "notNull": false }, "published_at": { "name": "published_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "processed_at": { "name": "processed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "app_notification_events_org_dedupe_idx": { "name": "app_notification_events_org_dedupe_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "dedupe_key", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.app_notification_templates": { "name": "app_notification_templates", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "event_type": { "name": "event_type", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true, "default": "''" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "default": "''" }, "channel": { "name": "channel", "type": "text", "primaryKey": false, "notNull": true }, "subject_template": { "name": "subject_template", "type": "text", "primaryKey": false, "notNull": false }, "title_template": { "name": "title_template", "type": "text", "primaryKey": false, "notNull": true }, "body_template": { "name": "body_template", "type": "text", "primaryKey": false, "notNull": true }, "body_format": { "name": "body_format", "type": "text", "primaryKey": false, "notNull": true, "default": "'plain'" }, "link_template": { "name": "link_template", "type": "text", "primaryKey": false, "notNull": false }, "language": { "name": "language", "type": "text", "primaryKey": false, "notNull": true, "default": "'th'" }, "variables": { "name": "variables", "type": "jsonb", "primaryKey": false, "notNull": false }, "version": { "name": "version", "type": "integer", "primaryKey": false, "notNull": true, "default": 1 }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "app_notification_templates_org_event_channel_idx": { "name": "app_notification_templates_org_event_channel_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_type", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "channel", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.app_notifications": { "name": "app_notifications", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "recipient_user_id": { "name": "recipient_user_id", "type": "text", "primaryKey": false, "notNull": true }, "event_id": { "name": "event_id", "type": "text", "primaryKey": false, "notNull": true }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true }, "body": { "name": "body", "type": "text", "primaryKey": false, "notNull": true }, "link_url": { "name": "link_url", "type": "text", "primaryKey": false, "notNull": false }, "severity": { "name": "severity", "type": "text", "primaryKey": false, "notNull": true, "default": "'info'" }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'unread'" }, "read_at": { "name": "read_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "archived_at": { "name": "archived_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "app_notifications_recipient_event_idx": { "name": "app_notifications_recipient_event_idx", "columns": [ { "expression": "recipient_user_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.business_event_outbox": { "name": "business_event_outbox", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "event_type": { "name": "event_type", "type": "text", "primaryKey": false, "notNull": true }, "schema_version": { "name": "schema_version", "type": "integer", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "correlation_id": { "name": "correlation_id", "type": "text", "primaryKey": false, "notNull": true }, "causation_id": { "name": "causation_id", "type": "text", "primaryKey": false, "notNull": false }, "event_envelope": { "name": "event_envelope", "type": "jsonb", "primaryKey": false, "notNull": true }, "delivery_status": { "name": "delivery_status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "attempt_count": { "name": "attempt_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "available_at": { "name": "available_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "claimed_by": { "name": "claimed_by", "type": "text", "primaryKey": false, "notNull": false }, "claimed_at": { "name": "claimed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "claim_expires_at": { "name": "claim_expires_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "processing_started_at": { "name": "processing_started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "dispatched_at": { "name": "dispatched_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "failed_at": { "name": "failed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "dead_lettered_at": { "name": "dead_lettered_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "last_error_code": { "name": "last_error_code", "type": "text", "primaryKey": false, "notNull": false }, "last_error_message": { "name": "last_error_message", "type": "text", "primaryKey": false, "notNull": false }, "occurred_at": { "name": "occurred_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "business_event_outbox_status_available_idx": { "name": "business_event_outbox_status_available_idx", "columns": [ { "expression": "delivery_status", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "available_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "business_event_outbox_claim_lease_idx": { "name": "business_event_outbox_claim_lease_idx", "columns": [ { "expression": "delivery_status", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "claim_expires_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "business_event_outbox_org_event_idx": { "name": "business_event_outbox_org_event_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_type", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_activities": { "name": "crm_activities", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "primary_entity_type": { "name": "primary_entity_type", "type": "text", "primaryKey": false, "notNull": true }, "primary_entity_id": { "name": "primary_entity_id", "type": "text", "primaryKey": false, "notNull": false }, "primary_record_label": { "name": "primary_record_label", "type": "text", "primaryKey": false, "notNull": false }, "related_records": { "name": "related_records", "type": "jsonb", "primaryKey": false, "notNull": true, "default": "'[]'::jsonb" }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": false }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": false }, "lead_id": { "name": "lead_id", "type": "text", "primaryKey": false, "notNull": false }, "opportunity_id": { "name": "opportunity_id", "type": "text", "primaryKey": false, "notNull": false }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": false }, "activity_type": { "name": "activity_type", "type": "text", "primaryKey": false, "notNull": true }, "subject": { "name": "subject", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "owner_id": { "name": "owner_id", "type": "text", "primaryKey": false, "notNull": true }, "assigned_to_id": { "name": "assigned_to_id", "type": "text", "primaryKey": false, "notNull": false }, "scheduled_start_at": { "name": "scheduled_start_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "scheduled_end_at": { "name": "scheduled_end_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "due_at": { "name": "due_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "cancelled_at": { "name": "cancelled_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "skipped_at": { "name": "skipped_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "priority": { "name": "priority", "type": "text", "primaryKey": false, "notNull": true }, "outcome_summary": { "name": "outcome_summary", "type": "text", "primaryKey": false, "notNull": false }, "cancellation_reason": { "name": "cancellation_reason", "type": "text", "primaryKey": false, "notNull": false }, "skip_reason": { "name": "skip_reason", "type": "text", "primaryKey": false, "notNull": false }, "next_action": { "name": "next_action", "type": "text", "primaryKey": false, "notNull": false }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": false }, "is_internal_only": { "name": "is_internal_only", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_pricing_sensitive": { "name": "is_pricing_sensitive", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "parent_activity_id": { "name": "parent_activity_id", "type": "text", "primaryKey": false, "notNull": false }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_actions": { "name": "crm_approval_actions", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "approval_request_id": { "name": "approval_request_id", "type": "text", "primaryKey": false, "notNull": true }, "step_number": { "name": "step_number", "type": "integer", "primaryKey": false, "notNull": true }, "action": { "name": "action", "type": "text", "primaryKey": false, "notNull": true }, "remark": { "name": "remark", "type": "text", "primaryKey": false, "notNull": false }, "acted_by": { "name": "acted_by", "type": "text", "primaryKey": false, "notNull": true }, "acted_at": { "name": "acted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_escalation_policies": { "name": "crm_approval_escalation_policies", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "workflow_id": { "name": "workflow_id", "type": "text", "primaryKey": false, "notNull": true }, "step_number": { "name": "step_number", "type": "integer", "primaryKey": false, "notNull": true }, "trigger_after_hours": { "name": "trigger_after_hours", "type": "integer", "primaryKey": false, "notNull": true }, "target_type": { "name": "target_type", "type": "text", "primaryKey": false, "notNull": true }, "target_value": { "name": "target_value", "type": "text", "primaryKey": false, "notNull": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_matrices": { "name": "crm_approval_matrices", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "workflow_id": { "name": "workflow_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": false }, "min_amount": { "name": "min_amount", "type": "double precision", "primaryKey": false, "notNull": false }, "max_amount": { "name": "max_amount", "type": "double precision", "primaryKey": false, "notNull": false }, "currency": { "name": "currency", "type": "text", "primaryKey": false, "notNull": false }, "priority": { "name": "priority", "type": "integer", "primaryKey": false, "notNull": true, "default": 100 }, "is_default": { "name": "is_default", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_reminder_policies": { "name": "crm_approval_reminder_policies", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "workflow_id": { "name": "workflow_id", "type": "text", "primaryKey": false, "notNull": true }, "step_number": { "name": "step_number", "type": "integer", "primaryKey": false, "notNull": true }, "sla_hours": { "name": "sla_hours", "type": "integer", "primaryKey": false, "notNull": true, "default": 24 }, "reminder_offsets_hours": { "name": "reminder_offsets_hours", "type": "integer[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "calendar_mode": { "name": "calendar_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'calendar_days'" }, "timeout_action": { "name": "timeout_action", "type": "text", "primaryKey": false, "notNull": true, "default": "'none'" }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_approval_reminder_policies_workflow_step_idx": { "name": "crm_approval_reminder_policies_workflow_step_idx", "columns": [ { "expression": "workflow_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "step_number", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_requests": { "name": "crm_approval_requests", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "workflow_id": { "name": "workflow_id", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "current_step": { "name": "current_step", "type": "integer", "primaryKey": false, "notNull": true, "default": 1 }, "current_step_started_at": { "name": "current_step_started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "requested_by": { "name": "requested_by", "type": "text", "primaryKey": false, "notNull": true }, "requested_at": { "name": "requested_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_steps": { "name": "crm_approval_steps", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "workflow_id": { "name": "workflow_id", "type": "text", "primaryKey": false, "notNull": true }, "step_number": { "name": "step_number", "type": "integer", "primaryKey": false, "notNull": true }, "role_code": { "name": "role_code", "type": "text", "primaryKey": false, "notNull": true }, "role_name": { "name": "role_name", "type": "text", "primaryKey": false, "notNull": true }, "approval_mode": { "name": "approval_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'sequential'" }, "is_required": { "name": "is_required", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "sla_hours": { "name": "sla_hours", "type": "integer", "primaryKey": false, "notNull": true, "default": 24 }, "calendar_mode": { "name": "calendar_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'calendar_days'" }, "timeout_action": { "name": "timeout_action", "type": "text", "primaryKey": false, "notNull": true, "default": "'none'" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_approval_steps_workflow_step_idx": { "name": "crm_approval_steps_workflow_step_idx", "columns": [ { "expression": "workflow_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "step_number", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_approval_workflows": { "name": "crm_approval_workflows", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "is_system": { "name": "is_system", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_approval_workflows_org_code_idx": { "name": "crm_approval_workflows_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_contact_shares": { "name": "crm_contact_shares", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": true }, "shared_to_user_id": { "name": "shared_to_user_id", "type": "text", "primaryKey": false, "notNull": true }, "shared_by_user_id": { "name": "shared_by_user_id", "type": "text", "primaryKey": false, "notNull": true }, "shared_at": { "name": "shared_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "remark": { "name": "remark", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_contact_shares_org_contact_shared_user_idx": { "name": "crm_contact_shares_org_contact_shared_user_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "contact_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "shared_to_user_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_customer_contacts": { "name": "crm_customer_contacts", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "position": { "name": "position", "type": "text", "primaryKey": false, "notNull": false }, "department": { "name": "department", "type": "text", "primaryKey": false, "notNull": false }, "phone": { "name": "phone", "type": "text", "primaryKey": false, "notNull": false }, "mobile": { "name": "mobile", "type": "text", "primaryKey": false, "notNull": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false }, "is_primary": { "name": "is_primary", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_customer_owner_history": { "name": "crm_customer_owner_history", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true }, "old_owner_user_id": { "name": "old_owner_user_id", "type": "text", "primaryKey": false, "notNull": false }, "new_owner_user_id": { "name": "new_owner_user_id", "type": "text", "primaryKey": false, "notNull": false }, "changed_by": { "name": "changed_by", "type": "text", "primaryKey": false, "notNull": true }, "changed_at": { "name": "changed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "remark": { "name": "remark", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_customers": { "name": "crm_customers", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "abbr": { "name": "abbr", "type": "text", "primaryKey": false, "notNull": false }, "tax_id": { "name": "tax_id", "type": "text", "primaryKey": false, "notNull": false }, "customer_type": { "name": "customer_type", "type": "text", "primaryKey": false, "notNull": true }, "customer_status": { "name": "customer_status", "type": "text", "primaryKey": false, "notNull": true }, "address": { "name": "address", "type": "text", "primaryKey": false, "notNull": false }, "province": { "name": "province", "type": "text", "primaryKey": false, "notNull": false }, "district": { "name": "district", "type": "text", "primaryKey": false, "notNull": false }, "sub_district": { "name": "sub_district", "type": "text", "primaryKey": false, "notNull": false }, "postal_code": { "name": "postal_code", "type": "text", "primaryKey": false, "notNull": false }, "country": { "name": "country", "type": "text", "primaryKey": false, "notNull": false }, "phone": { "name": "phone", "type": "text", "primaryKey": false, "notNull": false }, "fax": { "name": "fax", "type": "text", "primaryKey": false, "notNull": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false }, "website": { "name": "website", "type": "text", "primaryKey": false, "notNull": false }, "lead_channel": { "name": "lead_channel", "type": "text", "primaryKey": false, "notNull": false }, "customer_group": { "name": "customer_group", "type": "text", "primaryKey": false, "notNull": false }, "customer_sub_group": { "name": "customer_sub_group", "type": "text", "primaryKey": false, "notNull": false }, "owner_user_id": { "name": "owner_user_id", "type": "text", "primaryKey": false, "notNull": false }, "owner_assigned_at": { "name": "owner_assigned_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "owner_assigned_by": { "name": "owner_assigned_by", "type": "text", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_customers_org_code_idx": { "name": "crm_customers_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_artifacts": { "name": "crm_document_artifacts", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "document_type": { "name": "document_type", "type": "text", "primaryKey": false, "notNull": true }, "artifact_type": { "name": "artifact_type", "type": "text", "primaryKey": false, "notNull": true }, "template_version_id": { "name": "template_version_id", "type": "text", "primaryKey": false, "notNull": false }, "storage_provider": { "name": "storage_provider", "type": "text", "primaryKey": false, "notNull": true }, "storage_key": { "name": "storage_key", "type": "text", "primaryKey": false, "notNull": true }, "file_name": { "name": "file_name", "type": "text", "primaryKey": false, "notNull": true }, "content_type": { "name": "content_type", "type": "text", "primaryKey": false, "notNull": true }, "file_size": { "name": "file_size", "type": "integer", "primaryKey": false, "notNull": false }, "checksum": { "name": "checksum", "type": "text", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'active'" }, "generated_by": { "name": "generated_by", "type": "text", "primaryKey": false, "notNull": true }, "generated_at": { "name": "generated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "locked_at": { "name": "locked_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "locked_by": { "name": "locked_by", "type": "text", "primaryKey": false, "notNull": false }, "voided_at": { "name": "voided_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "voided_by": { "name": "voided_by", "type": "text", "primaryKey": false, "notNull": false }, "void_reason": { "name": "void_reason", "type": "text", "primaryKey": false, "notNull": false }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_libraries": { "name": "crm_document_libraries", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "document_type": { "name": "document_type", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "brand": { "name": "brand", "type": "text", "primaryKey": false, "notNull": true }, "language": { "name": "language", "type": "text", "primaryKey": false, "notNull": true }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'active'" }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_document_libraries_org_code_idx": { "name": "crm_document_libraries_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_library_versions": { "name": "crm_document_library_versions", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "library_id": { "name": "library_id", "type": "text", "primaryKey": false, "notNull": true }, "version": { "name": "version", "type": "text", "primaryKey": false, "notNull": true }, "file_name": { "name": "file_name", "type": "text", "primaryKey": false, "notNull": true }, "storage_provider": { "name": "storage_provider", "type": "text", "primaryKey": false, "notNull": true }, "storage_key": { "name": "storage_key", "type": "text", "primaryKey": false, "notNull": true }, "mime_type": { "name": "mime_type", "type": "text", "primaryKey": false, "notNull": true }, "file_size": { "name": "file_size", "type": "integer", "primaryKey": false, "notNull": true }, "checksum": { "name": "checksum", "type": "text", "primaryKey": false, "notNull": true }, "page_count": { "name": "page_count", "type": "integer", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'draft'" }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "published_at": { "name": "published_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "published_by": { "name": "published_by", "type": "text", "primaryKey": false, "notNull": false }, "archived_at": { "name": "archived_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "archived_by": { "name": "archived_by", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_document_library_versions_library_version_idx": { "name": "crm_document_library_versions_library_version_idx", "columns": [ { "expression": "library_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "version", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_template_mappings": { "name": "crm_document_template_mappings", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "template_version_id": { "name": "template_version_id", "type": "text", "primaryKey": false, "notNull": true }, "placeholder_key": { "name": "placeholder_key", "type": "text", "primaryKey": false, "notNull": true }, "source_path": { "name": "source_path", "type": "text", "primaryKey": false, "notNull": true }, "data_type": { "name": "data_type", "type": "text", "primaryKey": false, "notNull": true }, "sheet_name": { "name": "sheet_name", "type": "text", "primaryKey": false, "notNull": false }, "default_value": { "name": "default_value", "type": "text", "primaryKey": false, "notNull": false }, "format_mask": { "name": "format_mask", "type": "text", "primaryKey": false, "notNull": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_document_template_mappings_version_placeholder_idx": { "name": "crm_document_template_mappings_version_placeholder_idx", "columns": [ { "expression": "template_version_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "placeholder_key", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_template_table_columns": { "name": "crm_document_template_table_columns", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "mapping_id": { "name": "mapping_id", "type": "text", "primaryKey": false, "notNull": true }, "column_name": { "name": "column_name", "type": "text", "primaryKey": false, "notNull": true }, "source_field": { "name": "source_field", "type": "text", "primaryKey": false, "notNull": true }, "column_letter": { "name": "column_letter", "type": "text", "primaryKey": false, "notNull": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "format_mask": { "name": "format_mask", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_document_template_table_columns_mapping_name_idx": { "name": "crm_document_template_table_columns_mapping_name_idx", "columns": [ { "expression": "mapping_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "column_name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_template_versions": { "name": "crm_document_template_versions", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "template_id": { "name": "template_id", "type": "text", "primaryKey": false, "notNull": true }, "version": { "name": "version", "type": "text", "primaryKey": false, "notNull": true }, "file_path": { "name": "file_path", "type": "text", "primaryKey": false, "notNull": false }, "schema_json": { "name": "schema_json", "type": "jsonb", "primaryKey": false, "notNull": true }, "metadata_json": { "name": "metadata_json", "type": "jsonb", "primaryKey": false, "notNull": false }, "preview_image_url": { "name": "preview_image_url", "type": "text", "primaryKey": false, "notNull": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_document_template_versions_template_version_idx": { "name": "crm_document_template_versions_template_version_idx", "columns": [ { "expression": "template_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "version", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_document_templates": { "name": "crm_document_templates", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "document_type": { "name": "document_type", "type": "text", "primaryKey": false, "notNull": true }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": true }, "file_type": { "name": "file_type", "type": "text", "primaryKey": false, "notNull": true }, "template_name": { "name": "template_name", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "is_default": { "name": "is_default", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_document_templates_org_doc_product_file_name_idx": { "name": "crm_document_templates_org_doc_product_file_name_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "document_type", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "product_type", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "file_type", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "template_name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_leads": { "name": "crm_leads", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": false }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "project_name": { "name": "project_name", "type": "text", "primaryKey": false, "notNull": false }, "project_location": { "name": "project_location", "type": "text", "primaryKey": false, "notNull": false }, "lead_channel": { "name": "lead_channel", "type": "text", "primaryKey": false, "notNull": false }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": false }, "priority": { "name": "priority", "type": "text", "primaryKey": false, "notNull": false }, "estimated_value": { "name": "estimated_value", "type": "double precision", "primaryKey": false, "notNull": false }, "awareness_id": { "name": "awareness_id", "type": "text", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "followup_status": { "name": "followup_status", "type": "text", "primaryKey": false, "notNull": false }, "lost_reason": { "name": "lost_reason", "type": "text", "primaryKey": false, "notNull": false }, "outcome": { "name": "outcome", "type": "text", "primaryKey": false, "notNull": true, "default": "'open'" }, "owner_marketing_user_id": { "name": "owner_marketing_user_id", "type": "text", "primaryKey": false, "notNull": false }, "assigned_sales_owner_id": { "name": "assigned_sales_owner_id", "type": "text", "primaryKey": false, "notNull": false }, "assigned_at": { "name": "assigned_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "assigned_by": { "name": "assigned_by", "type": "text", "primaryKey": false, "notNull": false }, "assignment_remark": { "name": "assignment_remark", "type": "text", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_leads_org_code_idx": { "name": "crm_leads_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_opportunities": { "name": "crm_opportunities", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "lead_id": { "name": "lead_id", "type": "text", "primaryKey": false, "notNull": false }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": false }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "requirement": { "name": "requirement", "type": "text", "primaryKey": false, "notNull": false }, "project_name": { "name": "project_name", "type": "text", "primaryKey": false, "notNull": false }, "project_location": { "name": "project_location", "type": "text", "primaryKey": false, "notNull": false }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "outcome_status": { "name": "outcome_status", "type": "text", "primaryKey": false, "notNull": true, "default": "'open'" }, "priority": { "name": "priority", "type": "text", "primaryKey": false, "notNull": true }, "lead_channel": { "name": "lead_channel", "type": "text", "primaryKey": false, "notNull": false }, "estimated_value": { "name": "estimated_value", "type": "double precision", "primaryKey": false, "notNull": false }, "chance_percent": { "name": "chance_percent", "type": "integer", "primaryKey": false, "notNull": false }, "expected_close_date": { "name": "expected_close_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "project_close_date": { "name": "project_close_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "delivery_date": { "name": "delivery_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "competitor": { "name": "competitor", "type": "text", "primaryKey": false, "notNull": false }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "is_hot_project": { "name": "is_hot_project", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "hot_project_auto_suggested": { "name": "hot_project_auto_suggested", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "hot_project_manually_overridden": { "name": "hot_project_manually_overridden", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "pipeline_stage": { "name": "pipeline_stage", "type": "text", "primaryKey": false, "notNull": true, "default": "'lead'" }, "closed_at": { "name": "closed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "closed_won_at": { "name": "closed_won_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "closed_lost_at": { "name": "closed_lost_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "closed_by_user_id": { "name": "closed_by_user_id", "type": "text", "primaryKey": false, "notNull": false }, "po_number": { "name": "po_number", "type": "text", "primaryKey": false, "notNull": false }, "po_date": { "name": "po_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "po_amount": { "name": "po_amount", "type": "double precision", "primaryKey": false, "notNull": false }, "po_currency": { "name": "po_currency", "type": "text", "primaryKey": false, "notNull": false }, "lost_reason": { "name": "lost_reason", "type": "text", "primaryKey": false, "notNull": false }, "lost_detail": { "name": "lost_detail", "type": "text", "primaryKey": false, "notNull": false }, "lost_competitor": { "name": "lost_competitor", "type": "text", "primaryKey": false, "notNull": false }, "lost_remark": { "name": "lost_remark", "type": "text", "primaryKey": false, "notNull": false }, "cancel_reason": { "name": "cancel_reason", "type": "text", "primaryKey": false, "notNull": false }, "no_quotation_reason": { "name": "no_quotation_reason", "type": "text", "primaryKey": false, "notNull": false }, "assigned_to_user_id": { "name": "assigned_to_user_id", "type": "text", "primaryKey": false, "notNull": false }, "assigned_at": { "name": "assigned_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "assigned_by": { "name": "assigned_by", "type": "text", "primaryKey": false, "notNull": false }, "assignment_remark": { "name": "assignment_remark", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_opportunities_org_code_idx": { "name": "crm_opportunities_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_opportunity_attachments": { "name": "crm_opportunity_attachments", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "opportunity_id": { "name": "opportunity_id", "type": "text", "primaryKey": false, "notNull": true }, "category": { "name": "category", "type": "text", "primaryKey": false, "notNull": true }, "file_name": { "name": "file_name", "type": "text", "primaryKey": false, "notNull": true }, "original_file_name": { "name": "original_file_name", "type": "text", "primaryKey": false, "notNull": true }, "storage_provider": { "name": "storage_provider", "type": "text", "primaryKey": false, "notNull": true }, "storage_key": { "name": "storage_key", "type": "text", "primaryKey": false, "notNull": true }, "file_size": { "name": "file_size", "type": "integer", "primaryKey": false, "notNull": false }, "file_type": { "name": "file_type", "type": "text", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "uploaded_at": { "name": "uploaded_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "uploaded_by": { "name": "uploaded_by", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_opportunity_customers": { "name": "crm_opportunity_customers", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "opportunity_id": { "name": "opportunity_id", "type": "text", "primaryKey": false, "notNull": true }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true }, "remark": { "name": "remark", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_opportunity_followups": { "name": "crm_opportunity_followups", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "opportunity_id": { "name": "opportunity_id", "type": "text", "primaryKey": false, "notNull": true }, "followup_date": { "name": "followup_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "followup_type": { "name": "followup_type", "type": "text", "primaryKey": false, "notNull": true }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": false }, "outcome": { "name": "outcome", "type": "text", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "next_followup_date": { "name": "next_followup_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "next_action": { "name": "next_action", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotation_attachments": { "name": "crm_quotation_attachments", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": true }, "file_name": { "name": "file_name", "type": "text", "primaryKey": false, "notNull": true }, "original_file_name": { "name": "original_file_name", "type": "text", "primaryKey": false, "notNull": true }, "file_path": { "name": "file_path", "type": "text", "primaryKey": false, "notNull": true }, "file_size": { "name": "file_size", "type": "integer", "primaryKey": false, "notNull": false }, "file_type": { "name": "file_type", "type": "text", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "uploaded_at": { "name": "uploaded_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "uploaded_by": { "name": "uploaded_by", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotation_customers": { "name": "crm_quotation_customers", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": true }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true }, "is_primary": { "name": "is_primary", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "remark": { "name": "remark", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotation_followups": { "name": "crm_quotation_followups", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": true }, "followup_date": { "name": "followup_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "followup_type": { "name": "followup_type", "type": "text", "primaryKey": false, "notNull": true }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": false }, "outcome": { "name": "outcome", "type": "text", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "next_followup_date": { "name": "next_followup_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "next_action": { "name": "next_action", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotation_items": { "name": "crm_quotation_items", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": true }, "item_number": { "name": "item_number", "type": "integer", "primaryKey": false, "notNull": true }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": true }, "quantity": { "name": "quantity", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "unit": { "name": "unit", "type": "text", "primaryKey": false, "notNull": false }, "unit_price": { "name": "unit_price", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "discount": { "name": "discount", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "discount_type": { "name": "discount_type", "type": "text", "primaryKey": false, "notNull": false }, "tax_rate": { "name": "tax_rate", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "total_price": { "name": "total_price", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotation_topic_items": { "name": "crm_quotation_topic_items", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "topic_id": { "name": "topic_id", "type": "text", "primaryKey": false, "notNull": true }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotation_topics": { "name": "crm_quotation_topics", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": true }, "topic_type": { "name": "topic_type", "type": "text", "primaryKey": false, "notNull": true }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_quotations": { "name": "crm_quotations", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "opportunity_id": { "name": "opportunity_id", "type": "text", "primaryKey": false, "notNull": false }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true }, "contact_id": { "name": "contact_id", "type": "text", "primaryKey": false, "notNull": false }, "quotation_date": { "name": "quotation_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "valid_until": { "name": "valid_until", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "quotation_type": { "name": "quotation_type", "type": "text", "primaryKey": false, "notNull": true }, "project_name": { "name": "project_name", "type": "text", "primaryKey": false, "notNull": false }, "project_location": { "name": "project_location", "type": "text", "primaryKey": false, "notNull": false }, "attention": { "name": "attention", "type": "text", "primaryKey": false, "notNull": false }, "reference": { "name": "reference", "type": "text", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "revision": { "name": "revision", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "parent_quotation_id": { "name": "parent_quotation_id", "type": "text", "primaryKey": false, "notNull": false }, "revision_remark": { "name": "revision_remark", "type": "text", "primaryKey": false, "notNull": false }, "currency": { "name": "currency", "type": "text", "primaryKey": false, "notNull": true }, "exchange_rate": { "name": "exchange_rate", "type": "double precision", "primaryKey": false, "notNull": true, "default": 1 }, "subtotal": { "name": "subtotal", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "discount": { "name": "discount", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "discount_type": { "name": "discount_type", "type": "text", "primaryKey": false, "notNull": false }, "tax_rate": { "name": "tax_rate", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "tax_amount": { "name": "tax_amount", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "total_amount": { "name": "total_amount", "type": "double precision", "primaryKey": false, "notNull": true, "default": 0 }, "chance_percent": { "name": "chance_percent", "type": "integer", "primaryKey": false, "notNull": false }, "project_close_date": { "name": "project_close_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "delivery_date": { "name": "delivery_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "is_hot_project": { "name": "is_hot_project", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "hot_project_auto_suggested": { "name": "hot_project_auto_suggested", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "hot_project_manually_overridden": { "name": "hot_project_manually_overridden", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "competitor": { "name": "competitor", "type": "text", "primaryKey": false, "notNull": false }, "salesman_id": { "name": "salesman_id", "type": "text", "primaryKey": false, "notNull": false }, "is_sent": { "name": "is_sent", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "sent_at": { "name": "sent_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "sent_via": { "name": "sent_via", "type": "text", "primaryKey": false, "notNull": false }, "approved_at": { "name": "approved_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "approved_artifact_id": { "name": "approved_artifact_id", "type": "text", "primaryKey": false, "notNull": false }, "approved_pdf_url": { "name": "approved_pdf_url", "type": "text", "primaryKey": false, "notNull": false }, "approved_snapshot": { "name": "approved_snapshot", "type": "jsonb", "primaryKey": false, "notNull": false }, "approved_template_version_id": { "name": "approved_template_version_id", "type": "text", "primaryKey": false, "notNull": false }, "accepted_at": { "name": "accepted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "rejected_at": { "name": "rejected_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "rejection_reason": { "name": "rejection_reason", "type": "text", "primaryKey": false, "notNull": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_quotations_org_code_idx": { "name": "crm_quotations_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_report_definitions": { "name": "crm_report_definitions", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "category": { "name": "category", "type": "text", "primaryKey": false, "notNull": true }, "is_system": { "name": "is_system", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "crm_report_definitions_org_code_idx": { "name": "crm_report_definitions_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_role_profiles": { "name": "crm_role_profiles", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "permissions": { "name": "permissions", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "branch_scope_mode": { "name": "branch_scope_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'assigned'" }, "product_scope_mode": { "name": "product_scope_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'assigned'" }, "ownership_scope": { "name": "ownership_scope", "type": "text", "primaryKey": false, "notNull": true, "default": "'own'" }, "approval_authority": { "name": "approval_authority", "type": "text", "primaryKey": false, "notNull": true, "default": "'none'" }, "is_system": { "name": "is_system", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "crm_role_profiles_org_code_idx": { "name": "crm_role_profiles_org_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_timeline_projection": { "name": "crm_timeline_projection", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": false }, "lead_id": { "name": "lead_id", "type": "text", "primaryKey": false, "notNull": false }, "opportunity_id": { "name": "opportunity_id", "type": "text", "primaryKey": false, "notNull": false }, "quotation_id": { "name": "quotation_id", "type": "text", "primaryKey": false, "notNull": false }, "activity_id": { "name": "activity_id", "type": "text", "primaryKey": false, "notNull": false }, "event_id": { "name": "event_id", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "timeline_type": { "name": "timeline_type", "type": "text", "primaryKey": false, "notNull": true }, "timeline_category": { "name": "timeline_category", "type": "text", "primaryKey": false, "notNull": true }, "occurred_at": { "name": "occurred_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "actor_id": { "name": "actor_id", "type": "text", "primaryKey": false, "notNull": false }, "actor_display": { "name": "actor_display", "type": "text", "primaryKey": false, "notNull": false }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true }, "summary": { "name": "summary", "type": "text", "primaryKey": false, "notNull": false }, "icon": { "name": "icon", "type": "text", "primaryKey": false, "notNull": true }, "color": { "name": "color", "type": "text", "primaryKey": false, "notNull": true }, "priority": { "name": "priority", "type": "text", "primaryKey": false, "notNull": true, "default": "'normal'" }, "visibility": { "name": "visibility", "type": "jsonb", "primaryKey": false, "notNull": true }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "source_event": { "name": "source_event", "type": "jsonb", "primaryKey": false, "notNull": true }, "source_projection_version": { "name": "source_projection_version", "type": "integer", "primaryKey": false, "notNull": true, "default": 1 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "crm_timeline_projection_event_version_idx": { "name": "crm_timeline_projection_event_version_idx", "columns": [ { "expression": "event_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "source_projection_version", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "crm_timeline_projection_org_occurred_idx": { "name": "crm_timeline_projection_org_occurred_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "occurred_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "crm_timeline_projection_customer_occurred_idx": { "name": "crm_timeline_projection_customer_occurred_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "customer_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "occurred_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "crm_timeline_projection_activity_event_idx": { "name": "crm_timeline_projection_activity_event_idx", "columns": [ { "expression": "activity_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.crm_user_role_assignments": { "name": "crm_user_role_assignments", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true }, "role_profile_id": { "name": "role_profile_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_scope_mode": { "name": "branch_scope_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'inherit'" }, "branch_scope_ids": { "name": "branch_scope_ids", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "product_type_scope_mode": { "name": "product_type_scope_mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'inherit'" }, "product_type_scope_ids": { "name": "product_type_scope_ids", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "is_primary": { "name": "is_primary", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "assigned_by": { "name": "assigned_by", "type": "text", "primaryKey": false, "notNull": true }, "assigned_at": { "name": "assigned_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "crm_user_role_assignments_org_user_role_idx": { "name": "crm_user_role_assignments_org_user_role_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "user_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "role_profile_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.document_sequences": { "name": "document_sequences", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": true, "default": "''" }, "product_type": { "name": "product_type", "type": "text", "primaryKey": false, "notNull": true, "default": "'all'" }, "document_type": { "name": "document_type", "type": "text", "primaryKey": false, "notNull": true }, "prefix": { "name": "prefix", "type": "text", "primaryKey": false, "notNull": true }, "period": { "name": "period", "type": "text", "primaryKey": false, "notNull": true }, "current_number": { "name": "current_number", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "padding_length": { "name": "padding_length", "type": "integer", "primaryKey": false, "notNull": true, "default": 3 }, "format": { "name": "format", "type": "text", "primaryKey": false, "notNull": true, "default": "'{prefix}{period}-{running}'" }, "reset_policy": { "name": "reset_policy", "type": "text", "primaryKey": false, "notNull": true, "default": "'period'" }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "document_sequences_org_branch_product_doc_period_idx": { "name": "document_sequences_org_branch_product_doc_period_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "branch_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "product_type", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "document_type", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "period", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.email_configurations": { "name": "email_configurations", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "provider_type": { "name": "provider_type", "type": "text", "primaryKey": false, "notNull": true, "default": "'smtp'" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "host": { "name": "host", "type": "text", "primaryKey": false, "notNull": true }, "port": { "name": "port", "type": "integer", "primaryKey": false, "notNull": true, "default": 587 }, "secure": { "name": "secure", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": false }, "password_encrypted": { "name": "password_encrypted", "type": "text", "primaryKey": false, "notNull": false }, "from_email": { "name": "from_email", "type": "text", "primaryKey": false, "notNull": true }, "from_name": { "name": "from_name", "type": "text", "primaryKey": false, "notNull": false }, "reply_to_email": { "name": "reply_to_email", "type": "text", "primaryKey": false, "notNull": false }, "is_default": { "name": "is_default", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "last_test_status": { "name": "last_test_status", "type": "text", "primaryKey": false, "notNull": true, "default": "'not_tested'" }, "last_tested_at": { "name": "last_tested_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "last_test_error": { "name": "last_test_error", "type": "text", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "email_configurations_org_name_idx": { "name": "email_configurations_org_name_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.memberships": { "name": "memberships", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "default": "'user'" }, "business_role": { "name": "business_role", "type": "text", "primaryKey": false, "notNull": true, "default": "'sales_support'" }, "permissions": { "name": "permissions", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "branch_scope_ids": { "name": "branch_scope_ids", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "product_type_scope_ids": { "name": "product_type_scope_ids", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.ms_options": { "name": "ms_options", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "category": { "name": "category", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "label": { "name": "label", "type": "text", "primaryKey": false, "notNull": true }, "value": { "name": "value", "type": "text", "primaryKey": false, "notNull": false }, "parent_id": { "name": "parent_id", "type": "text", "primaryKey": false, "notNull": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "ms_options_org_category_code_idx": { "name": "ms_options_org_category_code_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "category", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "code", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.organizations": { "name": "organizations", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "slug": { "name": "slug", "type": "text", "primaryKey": false, "notNull": true }, "image_url": { "name": "image_url", "type": "text", "primaryKey": false, "notNull": false }, "plan": { "name": "plan", "type": "text", "primaryKey": false, "notNull": true, "default": "'free'" }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "organizations_slug_idx": { "name": "organizations_slug_idx", "columns": [ { "expression": "slug", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.products": { "name": "products", "schema": "", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "identity": { "type": "always", "name": "products_id_seq", "schema": "public", "increment": "1", "startWith": "1", "minValue": "1", "maxValue": "2147483647", "cache": "1", "cycle": false } }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "category": { "name": "category", "type": "text", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": true }, "photo_url": { "name": "photo_url", "type": "text", "primaryKey": false, "notNull": true }, "price": { "name": "price", "type": "double precision", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.projection_consumer_checkpoints": { "name": "projection_consumer_checkpoints", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "consumer_name": { "name": "consumer_name", "type": "text", "primaryKey": false, "notNull": true }, "projection_name": { "name": "projection_name", "type": "text", "primaryKey": false, "notNull": true }, "event_id": { "name": "event_id", "type": "text", "primaryKey": false, "notNull": true }, "event_type": { "name": "event_type", "type": "text", "primaryKey": false, "notNull": true }, "schema_version": { "name": "schema_version", "type": "integer", "primaryKey": false, "notNull": true }, "processing_status": { "name": "processing_status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "attempt_count": { "name": "attempt_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "first_attempted_at": { "name": "first_attempted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "last_attempted_at": { "name": "last_attempted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "next_retry_at": { "name": "next_retry_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "error_code": { "name": "error_code", "type": "text", "primaryKey": false, "notNull": false }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false }, "processing_duration_ms": { "name": "processing_duration_ms", "type": "integer", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "projection_checkpoints_consumer_event_idx": { "name": "projection_checkpoints_consumer_event_idx", "columns": [ { "expression": "consumer_name", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "projection_checkpoints_status_retry_idx": { "name": "projection_checkpoints_status_retry_idx", "columns": [ { "expression": "processing_status", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "next_retry_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.projection_dead_letters": { "name": "projection_dead_letters", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "consumer_name": { "name": "consumer_name", "type": "text", "primaryKey": false, "notNull": true }, "projection_name": { "name": "projection_name", "type": "text", "primaryKey": false, "notNull": true }, "event_id": { "name": "event_id", "type": "text", "primaryKey": false, "notNull": true }, "event_type": { "name": "event_type", "type": "text", "primaryKey": false, "notNull": true }, "schema_version": { "name": "schema_version", "type": "integer", "primaryKey": false, "notNull": true }, "attempt_count": { "name": "attempt_count", "type": "integer", "primaryKey": false, "notNull": true }, "error_code": { "name": "error_code", "type": "text", "primaryKey": false, "notNull": true }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": true }, "failure_metadata": { "name": "failure_metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'open'" }, "resolved_at": { "name": "resolved_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "resolved_by": { "name": "resolved_by", "type": "text", "primaryKey": false, "notNull": false }, "resolution_reason": { "name": "resolution_reason", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "projection_dead_letters_consumer_event_idx": { "name": "projection_dead_letters_consumer_event_idx", "columns": [ { "expression": "consumer_name", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "event_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "projection_dead_letters_org_status_idx": { "name": "projection_dead_letters_org_status_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "status", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.projection_health_snapshots": { "name": "projection_health_snapshots", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "projection_name": { "name": "projection_name", "type": "text", "primaryKey": false, "notNull": true }, "consumer_name": { "name": "consumer_name", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'healthy'" }, "last_processed_event_id": { "name": "last_processed_event_id", "type": "text", "primaryKey": false, "notNull": false }, "last_successful_processing_at": { "name": "last_successful_processing_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "pending_count": { "name": "pending_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "retry_count": { "name": "retry_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "dead_letter_count": { "name": "dead_letter_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "unsupported_version_count": { "name": "unsupported_version_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "processing_lag_ms": { "name": "processing_lag_ms", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "average_processing_duration_ms": { "name": "average_processing_duration_ms", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "last_rebuild_at": { "name": "last_rebuild_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "rebuild_source": { "name": "rebuild_source", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "projection_health_org_consumer_idx": { "name": "projection_health_org_consumer_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "consumer_name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.projection_rebuild_runs": { "name": "projection_rebuild_runs", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "projection_name": { "name": "projection_name", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": false }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": false }, "occurred_from": { "name": "occurred_from", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "occurred_to": { "name": "occurred_to", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "dry_run": { "name": "dry_run", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "reset_existing": { "name": "reset_existing", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "source_strategy": { "name": "source_strategy", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "processed_count": { "name": "processed_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "skipped_count": { "name": "skipped_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "failed_count": { "name": "failed_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "error_code": { "name": "error_code", "type": "text", "primaryKey": false, "notNull": false }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false }, "requested_by": { "name": "requested_by", "type": "text", "primaryKey": false, "notNull": true }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "projection_rebuild_runs_org_projection_idx": { "name": "projection_rebuild_runs_org_projection_idx", "columns": [ { "expression": "organization_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "projection_name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.seed_manifest_items": { "name": "seed_manifest_items", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "seed_manifest_id": { "name": "seed_manifest_id", "type": "text", "primaryKey": false, "notNull": true }, "item_key": { "name": "item_key", "type": "text", "primaryKey": false, "notNull": true }, "source_file": { "name": "source_file", "type": "text", "primaryKey": false, "notNull": true }, "checksum": { "name": "checksum", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "imported_count": { "name": "imported_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "updated_count": { "name": "updated_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "skipped_count": { "name": "skipped_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "error_count": { "name": "error_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "warning_count": { "name": "warning_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "report_json": { "name": "report_json", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "seed_manifest_items_manifest_item_idx": { "name": "seed_manifest_items_manifest_item_idx", "columns": [ { "expression": "seed_manifest_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "item_key", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.seed_manifests": { "name": "seed_manifests", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "setup_run_id": { "name": "setup_run_id", "type": "text", "primaryKey": false, "notNull": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "version": { "name": "version", "type": "text", "primaryKey": false, "notNull": true }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true }, "checksum": { "name": "checksum", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'pending'" }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true }, "applied_by": { "name": "applied_by", "type": "text", "primaryKey": false, "notNull": false }, "applied_at": { "name": "applied_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "report_json": { "name": "report_json", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.setup_run_steps": { "name": "setup_run_steps", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "setup_run_id": { "name": "setup_run_id", "type": "text", "primaryKey": false, "notNull": true }, "step_key": { "name": "step_key", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'not_started'" }, "input_hash": { "name": "input_hash", "type": "text", "primaryKey": false, "notNull": false }, "output_json": { "name": "output_json", "type": "jsonb", "primaryKey": false, "notNull": false }, "errors_json": { "name": "errors_json", "type": "jsonb", "primaryKey": false, "notNull": false }, "warnings_json": { "name": "warnings_json", "type": "jsonb", "primaryKey": false, "notNull": false }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "setup_run_steps_run_step_idx": { "name": "setup_run_steps_run_step_idx", "columns": [ { "expression": "setup_run_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "step_key", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.setup_runs": { "name": "setup_runs", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'not_started'" }, "mode": { "name": "mode", "type": "text", "primaryKey": false, "notNull": true, "default": "'production'" }, "target_organization_id": { "name": "target_organization_id", "type": "text", "primaryKey": false, "notNull": false }, "started_by": { "name": "started_by", "type": "text", "primaryKey": false, "notNull": true }, "completed_by": { "name": "completed_by", "type": "text", "primaryKey": false, "notNull": false }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "last_error": { "name": "last_error", "type": "text", "primaryKey": false, "notNull": false }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.tr_audit_logs": { "name": "tr_audit_logs", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true }, "branch_id": { "name": "branch_id", "type": "text", "primaryKey": false, "notNull": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": true }, "action": { "name": "action", "type": "text", "primaryKey": false, "notNull": true }, "before_data": { "name": "before_data", "type": "jsonb", "primaryKey": false, "notNull": false }, "after_data": { "name": "after_data", "type": "jsonb", "primaryKey": false, "notNull": false }, "request_id": { "name": "request_id", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.users": { "name": "users", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": true }, "password_hash": { "name": "password_hash", "type": "text", "primaryKey": false, "notNull": true }, "system_role": { "name": "system_role", "type": "text", "primaryKey": false, "notNull": true, "default": "'user'" }, "image": { "name": "image", "type": "text", "primaryKey": false, "notNull": false }, "active_organization_id": { "name": "active_organization_id", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "users_email_idx": { "name": "users_email_idx", "columns": [ { "expression": "email", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false } }, "enums": {}, "schemas": {}, "sequences": {}, "roles": {}, "policies": {}, "views": {}, "_meta": { "columns": {}, "schemas": {}, "tables": {} } }