{
  "id": "5c5c783c-2b6b-4c16-9715-4e753a05fffb",
  "prevId": "0da6b6b7-b126-43f2-be2d-4c42a66bafd5",
  "version": "7",
  "dialect": "postgresql",
  "tables": {
    "public.alerts": {
      "name": "alerts",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "type": {
          "name": "type",
          "type": "alert_type",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true
        },
        "severity": {
          "name": "severity",
          "type": "alert_severity",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'WARNING'"
        },
        "title": {
          "name": "title",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "message": {
          "name": "message",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "entity_type": {
          "name": "entity_type",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "entity_id": {
          "name": "entity_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "metrics": {
          "name": "metrics",
          "type": "jsonb",
          "primaryKey": false,
          "notNull": false
        },
        "status": {
          "name": "status",
          "type": "alert_status",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'OPEN'"
        },
        "acknowledged_by": {
          "name": "acknowledged_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "acknowledged_at": {
          "name": "acknowledged_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()"
        }
      },
      "indexes": {
        "alerts_uniq": {
          "name": "alerts_uniq",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "type",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "entity_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "alerts_tenant_status_idx": {
          "name": "alerts_tenant_status_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "status",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "created_at",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.announcements": {
      "name": "announcements",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "title": {
          "name": "title",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "body": {
          "name": "body",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "scope_type": {
          "name": "scope_type",
          "type": "announcement_scope",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'COMPANY'"
        },
        "scope_id": {
          "name": "scope_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "created_by": {
          "name": "created_by",
          "type": "uuid",
          "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()"
        }
      },
      "indexes": {
        "announcements_tenant_active_idx": {
          "name": "announcements_tenant_active_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "is_active",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.audit_logs": {
      "name": "audit_logs",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "action": {
          "name": "action",
          "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": false
        },
        "payload": {
          "name": "payload",
          "type": "jsonb",
          "primaryKey": false,
          "notNull": false
        },
        "ip_address": {
          "name": "ip_address",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "created_at": {
          "name": "created_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "audit_tenant_created_idx": {
          "name": "audit_tenant_created_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "created_at",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.channels": {
      "name": "channels",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "is_active": {
          "name": "is_active",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": true
        }
      },
      "indexes": {
        "channels_tenant_code_idx": {
          "name": "channels_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_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.check_ins": {
      "name": "check_ins",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "plan_item_id": {
          "name": "plan_item_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "checked_at": {
          "name": "checked_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        },
        "lat": {
          "name": "lat",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true
        },
        "lng": {
          "name": "lng",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true
        },
        "accuracy_meters": {
          "name": "accuracy_meters",
          "type": "double precision",
          "primaryKey": false,
          "notNull": false
        },
        "distance_meters": {
          "name": "distance_meters",
          "type": "double precision",
          "primaryKey": false,
          "notNull": false
        },
        "out_of_range": {
          "name": "out_of_range",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": false
        },
        "photo_path": {
          "name": "photo_path",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        }
      },
      "indexes": {
        "check_ins_tenant_user_time_idx": {
          "name": "check_ins_tenant_user_time_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "checked_at",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "check_ins_customer_idx": {
          "name": "check_ins_customer_idx",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "check_ins_user_id_users_id_fk": {
          "name": "check_ins_user_id_users_id_fk",
          "tableFrom": "check_ins",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.custom_kpi_entries": {
      "name": "custom_kpi_entries",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "kpi_id": {
          "name": "kpi_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "target_value": {
          "name": "target_value",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "actual_value": {
          "name": "actual_value",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "updated_by": {
          "name": "updated_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "updated_at": {
          "name": "updated_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "custom_kpi_entries_uniq": {
          "name": "custom_kpi_entries_uniq",
          "columns": [
            {
              "expression": "kpi_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "custom_kpi_entries_user_period_idx": {
          "name": "custom_kpi_entries_user_period_idx",
          "columns": [
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "custom_kpi_entries_kpi_id_custom_kpis_id_fk": {
          "name": "custom_kpi_entries_kpi_id_custom_kpis_id_fk",
          "tableFrom": "custom_kpi_entries",
          "tableTo": "custom_kpis",
          "columnsFrom": [
            "kpi_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        },
        "custom_kpi_entries_user_id_users_id_fk": {
          "name": "custom_kpi_entries_user_id_users_id_fk",
          "tableFrom": "custom_kpi_entries",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.custom_kpis": {
      "name": "custom_kpis",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "unit": {
          "name": "unit",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "created_by": {
          "name": "created_by",
          "type": "uuid",
          "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()"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customer_attachments": {
      "name": "customer_attachments",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "file_name": {
          "name": "file_name",
          "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
        },
        "file_path": {
          "name": "file_path",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "uploaded_by": {
          "name": "uploaded_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "uploaded_at": {
          "name": "uploaded_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "customer_attachments_cust_idx": {
          "name": "customer_attachments_cust_idx",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "customer_attachments_customer_id_customers_id_fk": {
          "name": "customer_attachments_customer_id_customers_id_fk",
          "tableFrom": "customer_attachments",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customer_classifications": {
      "name": "customer_classifications",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "avg_monthly_revenue": {
          "name": "avg_monthly_revenue",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "revenue_tier": {
          "name": "revenue_tier",
          "type": "class_tier",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": false
        },
        "sku_count": {
          "name": "sku_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "sku_tier": {
          "name": "sku_tier",
          "type": "class_tier",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": false
        },
        "reorder_count": {
          "name": "reorder_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "months_purchased_in_quarter": {
          "name": "months_purchased_in_quarter",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "months_purchased_in_year": {
          "name": "months_purchased_in_year",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "months_inactive": {
          "name": "months_inactive",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "computed_at": {
          "name": "computed_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "customer_classifications_uniq": {
          "name": "customer_classifications_uniq",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "customer_classifications_period_idx": {
          "name": "customer_classifications_period_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "customer_classifications_customer_id_customers_id_fk": {
          "name": "customer_classifications_customer_id_customers_id_fk",
          "tableFrom": "customer_classifications",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customer_contacts": {
      "name": "customer_contacts",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "full_name": {
          "name": "full_name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "position": {
          "name": "position",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "phone": {
          "name": "phone",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "created_at": {
          "name": "created_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "customer_contacts_cust_idx": {
          "name": "customer_contacts_cust_idx",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "customer_contacts_customer_id_customers_id_fk": {
          "name": "customer_contacts_customer_id_customers_id_fk",
          "tableFrom": "customer_contacts",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customer_locations": {
      "name": "customer_locations",
      "schema": "",
      "columns": {
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "lat": {
          "name": "lat",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true
        },
        "lng": {
          "name": "lng",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true
        },
        "updated_at": {
          "name": "updated_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {},
      "foreignKeys": {
        "customer_locations_customer_id_customers_id_fk": {
          "name": "customer_locations_customer_id_customers_id_fk",
          "tableFrom": "customer_locations",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customer_notes": {
      "name": "customer_notes",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "content": {
          "name": "content",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "recorded_by": {
          "name": "recorded_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "recorded_at": {
          "name": "recorded_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "customer_notes_cust_idx": {
          "name": "customer_notes_cust_idx",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "customer_notes_customer_id_customers_id_fk": {
          "name": "customer_notes_customer_id_customers_id_fk",
          "tableFrom": "customer_notes",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customer_stage_history": {
      "name": "customer_stage_history",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "from_stage": {
          "name": "from_stage",
          "type": "customer_stage",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": false
        },
        "to_stage": {
          "name": "to_stage",
          "type": "customer_stage",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true
        },
        "changed_by": {
          "name": "changed_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "changed_at": {
          "name": "changed_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "customer_stage_history_cust_idx": {
          "name": "customer_stage_history_cust_idx",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "customer_stage_history_customer_id_customers_id_fk": {
          "name": "customer_stage_history_customer_id_customers_id_fk",
          "tableFrom": "customer_stage_history",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.customers": {
      "name": "customers",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "org_name": {
          "name": "org_name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "contact_name": {
          "name": "contact_name",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "tax_code": {
          "name": "tax_code",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "channel_id": {
          "name": "channel_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "territory_id": {
          "name": "territory_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "address": {
          "name": "address",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "phone": {
          "name": "phone",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "email": {
          "name": "email",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "owner_id": {
          "name": "owner_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "stage": {
          "name": "stage",
          "type": "customer_stage",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'LEAD'"
        },
        "dealer_since": {
          "name": "dealer_since",
          "type": "date",
          "primaryKey": false,
          "notNull": false
        },
        "is_key": {
          "name": "is_key",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": false
        },
        "note": {
          "name": "note",
          "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()"
        }
      },
      "indexes": {
        "customers_tenant_code_idx": {
          "name": "customers_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "code",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "customers_tenant_stage_idx": {
          "name": "customers_tenant_stage_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "stage",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "customers_tenant_owner_idx": {
          "name": "customers_tenant_owner_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "owner_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "customers_tenant_territory_idx": {
          "name": "customers_tenant_territory_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "territory_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.daily_reports": {
      "name": "daily_reports",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "report_date": {
          "name": "report_date",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        },
        "completion_pct": {
          "name": "completion_pct",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "route_compliant": {
          "name": "route_compliant",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": true
        },
        "content": {
          "name": "content",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "results": {
          "name": "results",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "proposals": {
          "name": "proposals",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "pending": {
          "name": "pending",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "next_steps": {
          "name": "next_steps",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "submitted_at": {
          "name": "submitted_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()"
        }
      },
      "indexes": {
        "daily_reports_uniq": {
          "name": "daily_reports_uniq",
          "columns": [
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "report_date",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "daily_reports_tenant_date_idx": {
          "name": "daily_reports_tenant_date_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "report_date",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "daily_reports_user_id_users_id_fk": {
          "name": "daily_reports_user_id_users_id_fk",
          "tableFrom": "daily_reports",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.dealer_inactive_notes": {
      "name": "dealer_inactive_notes",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "reason": {
          "name": "reason",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "recorded_by": {
          "name": "recorded_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "recorded_at": {
          "name": "recorded_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "dealer_inactive_notes_uniq": {
          "name": "dealer_inactive_notes_uniq",
          "columns": [
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "dealer_inactive_notes_period_idx": {
          "name": "dealer_inactive_notes_period_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "dealer_inactive_notes_customer_id_customers_id_fk": {
          "name": "dealer_inactive_notes_customer_id_customers_id_fk",
          "tableFrom": "dealer_inactive_notes",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.departments": {
      "name": "departments",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "parent_id": {
          "name": "parent_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "head_user_id": {
          "name": "head_user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "is_active": {
          "name": "is_active",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": true
        },
        "sort_order": {
          "name": "sort_order",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        }
      },
      "indexes": {
        "departments_tenant_code_idx": {
          "name": "departments_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "code",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "departments_parent_idx": {
          "name": "departments_parent_idx",
          "columns": [
            {
              "expression": "parent_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.events": {
      "name": "events",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "event_date": {
          "name": "event_date",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        },
        "kind": {
          "name": "kind",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "default": "'Chuyên đề'"
        },
        "territory_id": {
          "name": "territory_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "owner_id": {
          "name": "owner_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "invited_count": {
          "name": "invited_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "attended_count": {
          "name": "attended_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "result_order_count": {
          "name": "result_order_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "result_revenue": {
          "name": "result_revenue",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        }
      },
      "indexes": {
        "events_tenant_date_idx": {
          "name": "events_tenant_date_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "event_date",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.forecasts": {
      "name": "forecasts",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "product_id": {
          "name": "product_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "forecast_qty": {
          "name": "forecast_qty",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "adjusted_qty": {
          "name": "adjusted_qty",
          "type": "integer",
          "primaryKey": false,
          "notNull": false
        },
        "method": {
          "name": "method",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "default": "'MOVING_AVG_3M'"
        },
        "confidence": {
          "name": "confidence",
          "type": "double precision",
          "primaryKey": false,
          "notNull": false
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "computed_at": {
          "name": "computed_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "forecasts_uniq": {
          "name": "forecasts_uniq",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "product_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "forecasts_product_id_products_id_fk": {
          "name": "forecasts_product_id_products_id_fk",
          "tableFrom": "forecasts",
          "tableTo": "products",
          "columnsFrom": [
            "product_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.kpi_monthly": {
      "name": "kpi_monthly",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "revenue": {
          "name": "revenue",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "revenue_target": {
          "name": "revenue_target",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "achievement_pct": {
          "name": "achievement_pct",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "order_count": {
          "name": "order_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "visit_count": {
          "name": "visit_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "plan_compliance_pct": {
          "name": "plan_compliance_pct",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "new_customer_count": {
          "name": "new_customer_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "active_dealer_count": {
          "name": "active_dealer_count",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "computed_at": {
          "name": "computed_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "kpi_monthly_uniq": {
          "name": "kpi_monthly_uniq",
          "columns": [
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "kpi_monthly_user_id_users_id_fk": {
          "name": "kpi_monthly_user_id_users_id_fk",
          "tableFrom": "kpi_monthly",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.order_lines": {
      "name": "order_lines",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "order_id": {
          "name": "order_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "product_id": {
          "name": "product_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "qty_sold": {
          "name": "qty_sold",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "qty_promo": {
          "name": "qty_promo",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "unit_price": {
          "name": "unit_price",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "amount": {
          "name": "amount",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "program_id": {
          "name": "program_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "order_date": {
          "name": "order_date",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        }
      },
      "indexes": {
        "order_lines_order_idx": {
          "name": "order_lines_order_idx",
          "columns": [
            {
              "expression": "order_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "order_lines_tenant_product_date_idx": {
          "name": "order_lines_tenant_product_date_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "product_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "order_date",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "order_lines_tenant_program_idx": {
          "name": "order_lines_tenant_program_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "program_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "order_lines_order_id_orders_id_fk": {
          "name": "order_lines_order_id_orders_id_fk",
          "tableFrom": "order_lines",
          "tableTo": "orders",
          "columnsFrom": [
            "order_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        },
        "order_lines_product_id_products_id_fk": {
          "name": "order_lines_product_id_products_id_fk",
          "tableFrom": "order_lines",
          "tableTo": "products",
          "columnsFrom": [
            "product_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "no action",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.order_payments": {
      "name": "order_payments",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "order_id": {
          "name": "order_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "paid_on": {
          "name": "paid_on",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        },
        "amount": {
          "name": "amount",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true
        },
        "method": {
          "name": "method",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "recorded_by": {
          "name": "recorded_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "created_at": {
          "name": "created_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "order_payments_order_idx": {
          "name": "order_payments_order_idx",
          "columns": [
            {
              "expression": "order_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "order_payments_tenant_date_idx": {
          "name": "order_payments_tenant_date_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "paid_on",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "order_payments_order_id_orders_id_fk": {
          "name": "order_payments_order_id_orders_id_fk",
          "tableFrom": "order_payments",
          "tableTo": "orders",
          "columnsFrom": [
            "order_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.orders": {
      "name": "orders",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "order_date": {
          "name": "order_date",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        },
        "sales_user_id": {
          "name": "sales_user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "department_id": {
          "name": "department_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "territory_id": {
          "name": "territory_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "channel_id": {
          "name": "channel_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "status": {
          "name": "status",
          "type": "order_status",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'CONFIRMED'"
        },
        "total_amount": {
          "name": "total_amount",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "promo_value": {
          "name": "promo_value",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "due_date": {
          "name": "due_date",
          "type": "date",
          "primaryKey": false,
          "notNull": false
        },
        "vat_required": {
          "name": "vat_required",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": false
        },
        "receiver_name": {
          "name": "receiver_name",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "receiver_phone": {
          "name": "receiver_phone",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "receiver_address": {
          "name": "receiver_address",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "carrier_name": {
          "name": "carrier_name",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "carrier_phone": {
          "name": "carrier_phone",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "carrier_address": {
          "name": "carrier_address",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "surcharge_amount": {
          "name": "surcharge_amount",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "created_by": {
          "name": "created_by",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "created_at": {
          "name": "created_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true,
          "default": "now()"
        }
      },
      "indexes": {
        "orders_tenant_code_idx": {
          "name": "orders_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "code",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "orders_tenant_date_idx": {
          "name": "orders_tenant_date_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "order_date",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "orders_tenant_customer_idx": {
          "name": "orders_tenant_customer_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "customer_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "orders_tenant_sales_idx": {
          "name": "orders_tenant_sales_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "sales_user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "orders_customer_id_customers_id_fk": {
          "name": "orders_customer_id_customers_id_fk",
          "tableFrom": "orders",
          "tableTo": "customers",
          "columnsFrom": [
            "customer_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "no action",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.password_reset_tokens": {
      "name": "password_reset_tokens",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "token_hash": {
          "name": "token_hash",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "expires_at": {
          "name": "expires_at",
          "type": "timestamp with time zone",
          "primaryKey": false,
          "notNull": true
        },
        "used_at": {
          "name": "used_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()"
        }
      },
      "indexes": {
        "password_reset_tokens_hash_uniq": {
          "name": "password_reset_tokens_hash_uniq",
          "columns": [
            {
              "expression": "token_hash",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "password_reset_tokens_user_idx": {
          "name": "password_reset_tokens_user_idx",
          "columns": [
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "password_reset_tokens_user_id_users_id_fk": {
          "name": "password_reset_tokens_user_id_users_id_fk",
          "tableFrom": "password_reset_tokens",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.plan_items": {
      "name": "plan_items",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "plan_id": {
          "name": "plan_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "plan_date": {
          "name": "plan_date",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        },
        "content": {
          "name": "content",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "objective": {
          "name": "objective",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "time_slot": {
          "name": "time_slot",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "customer_id": {
          "name": "customer_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "territory_id": {
          "name": "territory_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "route_note": {
          "name": "route_note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "status": {
          "name": "status",
          "type": "plan_item_status",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'PLANNED'"
        },
        "missed_reason": {
          "name": "missed_reason",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "sort_order": {
          "name": "sort_order",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        }
      },
      "indexes": {
        "plan_items_plan_idx": {
          "name": "plan_items_plan_idx",
          "columns": [
            {
              "expression": "plan_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "plan_items_tenant_date_idx": {
          "name": "plan_items_tenant_date_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "plan_date",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "plan_items_plan_id_weekly_plans_id_fk": {
          "name": "plan_items_plan_id_weekly_plans_id_fk",
          "tableFrom": "plan_items",
          "tableTo": "weekly_plans",
          "columnsFrom": [
            "plan_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.product_groups": {
      "name": "product_groups",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        }
      },
      "indexes": {
        "product_groups_tenant_code_idx": {
          "name": "product_groups_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_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.products": {
      "name": "products",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "group_id": {
          "name": "group_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "technology_id": {
          "name": "technology_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "unit": {
          "name": "unit",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "default": "'Hộp'"
        },
        "unit_price": {
          "name": "unit_price",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "retail_price": {
          "name": "retail_price",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "discount_percent": {
          "name": "discount_percent",
          "type": "double precision",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "role": {
          "name": "role",
          "type": "product_role",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'NORMAL'"
        },
        "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()"
        }
      },
      "indexes": {
        "products_tenant_code_idx": {
          "name": "products_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "code",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "products_tenant_group_idx": {
          "name": "products_tenant_group_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "group_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.program_products": {
      "name": "program_products",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "program_id": {
          "name": "program_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "product_id": {
          "name": "product_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        }
      },
      "indexes": {
        "program_products_uniq": {
          "name": "program_products_uniq",
          "columns": [
            {
              "expression": "program_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "product_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "program_products_program_id_programs_id_fk": {
          "name": "program_products_program_id_programs_id_fk",
          "tableFrom": "program_products",
          "tableTo": "programs",
          "columnsFrom": [
            "program_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        },
        "program_products_product_id_products_id_fk": {
          "name": "program_products_product_id_products_id_fk",
          "tableFrom": "program_products",
          "tableTo": "products",
          "columnsFrom": [
            "product_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.programs": {
      "name": "programs",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "type": {
          "name": "type",
          "type": "program_type",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true
        },
        "start_date": {
          "name": "start_date",
          "type": "date",
          "primaryKey": false,
          "notNull": false
        },
        "end_date": {
          "name": "end_date",
          "type": "date",
          "primaryKey": false,
          "notNull": false
        },
        "revenue_target": {
          "name": "revenue_target",
          "type": "bigint",
          "primaryKey": false,
          "notNull": false,
          "default": 0
        },
        "qty_target": {
          "name": "qty_target",
          "type": "integer",
          "primaryKey": false,
          "notNull": false,
          "default": 0
        },
        "is_active": {
          "name": "is_active",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": true
        }
      },
      "indexes": {
        "programs_tenant_code_idx": {
          "name": "programs_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_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.targets": {
      "name": "targets",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "period_type": {
          "name": "period_type",
          "type": "period_type",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true
        },
        "period_key": {
          "name": "period_key",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "scope_type": {
          "name": "scope_type",
          "type": "target_scope",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true
        },
        "scope_id": {
          "name": "scope_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "revenue_target": {
          "name": "revenue_target",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "order_target": {
          "name": "order_target",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "new_customer_target": {
          "name": "new_customer_target",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "sku_target": {
          "name": "sku_target",
          "type": "integer",
          "primaryKey": false,
          "notNull": true,
          "default": 0
        },
        "note": {
          "name": "note",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        }
      },
      "indexes": {
        "targets_uniq": {
          "name": "targets_uniq",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "scope_type",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "scope_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "targets_tenant_period_idx": {
          "name": "targets_tenant_period_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "period_key",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.technologies": {
      "name": "technologies",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        }
      },
      "indexes": {
        "technologies_tenant_code_idx": {
          "name": "technologies_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_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.tenants": {
      "name": "tenants",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "tax_code": {
          "name": "tax_code",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "logo_data_url": {
          "name": "logo_data_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()"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {
        "tenants_code_unique": {
          "name": "tenants_code_unique",
          "nullsNotDistinct": false,
          "columns": [
            "code"
          ]
        }
      },
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.territories": {
      "name": "territories",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "code": {
          "name": "code",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "level": {
          "name": "level",
          "type": "territory_level",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true
        },
        "parent_id": {
          "name": "parent_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "is_active": {
          "name": "is_active",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": true
        }
      },
      "indexes": {
        "territories_tenant_code_idx": {
          "name": "territories_tenant_code_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "code",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "territories_parent_idx": {
          "name": "territories_parent_idx",
          "columns": [
            {
              "expression": "parent_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.user_territories": {
      "name": "user_territories",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "territory_id": {
          "name": "territory_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        }
      },
      "indexes": {
        "user_territories_uniq": {
          "name": "user_territories_uniq",
          "columns": [
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "territory_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "user_territories_user_id_users_id_fk": {
          "name": "user_territories_user_id_users_id_fk",
          "tableFrom": "user_territories",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.users": {
      "name": "users",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "email": {
          "name": "email",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "password_hash": {
          "name": "password_hash",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "full_name": {
          "name": "full_name",
          "type": "text",
          "primaryKey": false,
          "notNull": true
        },
        "phone": {
          "name": "phone",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "role": {
          "name": "role",
          "type": "user_role",
          "typeSchema": "public",
          "primaryKey": false,
          "notNull": true,
          "default": "'SALES'"
        },
        "territory_id": {
          "name": "territory_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "department_id": {
          "name": "department_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": false
        },
        "is_active": {
          "name": "is_active",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "default": true
        },
        "last_login_at": {
          "name": "last_login_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()"
        }
      },
      "indexes": {
        "users_tenant_email_idx": {
          "name": "users_tenant_email_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "email",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        },
        "users_tenant_role_idx": {
          "name": "users_tenant_role_idx",
          "columns": [
            {
              "expression": "tenant_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "role",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": false,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "users_tenant_id_tenants_id_fk": {
          "name": "users_tenant_id_tenants_id_fk",
          "tableFrom": "users",
          "tableTo": "tenants",
          "columnsFrom": [
            "tenant_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    },
    "public.weekly_plans": {
      "name": "weekly_plans",
      "schema": "",
      "columns": {
        "id": {
          "name": "id",
          "type": "uuid",
          "primaryKey": true,
          "notNull": true,
          "default": "gen_random_uuid()"
        },
        "tenant_id": {
          "name": "tenant_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "user_id": {
          "name": "user_id",
          "type": "uuid",
          "primaryKey": false,
          "notNull": true
        },
        "week_start": {
          "name": "week_start",
          "type": "date",
          "primaryKey": false,
          "notNull": true
        },
        "objective": {
          "name": "objective",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "summary": {
          "name": "summary",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "next_week_objective": {
          "name": "next_week_objective",
          "type": "text",
          "primaryKey": false,
          "notNull": false
        },
        "submitted_at": {
          "name": "submitted_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()"
        }
      },
      "indexes": {
        "weekly_plans_uniq": {
          "name": "weekly_plans_uniq",
          "columns": [
            {
              "expression": "user_id",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            },
            {
              "expression": "week_start",
              "isExpression": false,
              "asc": true,
              "nulls": "last"
            }
          ],
          "isUnique": true,
          "concurrently": false,
          "method": "btree",
          "with": {}
        }
      },
      "foreignKeys": {
        "weekly_plans_user_id_users_id_fk": {
          "name": "weekly_plans_user_id_users_id_fk",
          "tableFrom": "weekly_plans",
          "tableTo": "users",
          "columnsFrom": [
            "user_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "no action"
        }
      },
      "compositePrimaryKeys": {},
      "uniqueConstraints": {},
      "policies": {},
      "checkConstraints": {},
      "isRLSEnabled": false
    }
  },
  "enums": {
    "public.alert_severity": {
      "name": "alert_severity",
      "schema": "public",
      "values": [
        "INFO",
        "WARNING",
        "CRITICAL"
      ]
    },
    "public.alert_status": {
      "name": "alert_status",
      "schema": "public",
      "values": [
        "OPEN",
        "ACKNOWLEDGED",
        "RESOLVED"
      ]
    },
    "public.alert_type": {
      "name": "alert_type",
      "schema": "public",
      "values": [
        "DEALER_INACTIVE",
        "DEALER_REVENUE_DROP",
        "PRODUCT_NO_REVENUE",
        "PRODUCT_VOLUME_DROP",
        "TERRITORY_NO_REVENUE",
        "TERRITORY_REVENUE_DROP",
        "STAFF_UNDERPERFORM"
      ]
    },
    "public.announcement_scope": {
      "name": "announcement_scope",
      "schema": "public",
      "values": [
        "COMPANY",
        "DEPARTMENT",
        "TERRITORY"
      ]
    },
    "public.class_tier": {
      "name": "class_tier",
      "schema": "public",
      "values": [
        "A",
        "B",
        "C",
        "D",
        "E"
      ]
    },
    "public.customer_stage": {
      "name": "customer_stage",
      "schema": "public",
      "values": [
        "LEAD",
        "PROSPECT",
        "DEALER"
      ]
    },
    "public.order_status": {
      "name": "order_status",
      "schema": "public",
      "values": [
        "DRAFT",
        "CONFIRMED",
        "CANCELLED"
      ]
    },
    "public.period_type": {
      "name": "period_type",
      "schema": "public",
      "values": [
        "MONTH",
        "QUARTER",
        "YEAR"
      ]
    },
    "public.plan_item_status": {
      "name": "plan_item_status",
      "schema": "public",
      "values": [
        "PLANNED",
        "DONE",
        "MISSED"
      ]
    },
    "public.product_role": {
      "name": "product_role",
      "schema": "public",
      "values": [
        "CORE",
        "POTENTIAL",
        "RECOVERY",
        "NORMAL"
      ]
    },
    "public.program_type": {
      "name": "program_type",
      "schema": "public",
      "values": [
        "NEW_PRODUCT",
        "FOCUS_PRODUCT",
        "CAMPAIGN"
      ]
    },
    "public.target_scope": {
      "name": "target_scope",
      "schema": "public",
      "values": [
        "COMPANY",
        "DEPARTMENT",
        "TERRITORY",
        "USER",
        "CUSTOMER"
      ]
    },
    "public.territory_level": {
      "name": "territory_level",
      "schema": "public",
      "values": [
        "REGION",
        "PROVINCE",
        "DISTRICT",
        "WARD"
      ]
    },
    "public.user_role": {
      "name": "user_role",
      "schema": "public",
      "values": [
        "DIRECTOR",
        "MANAGER",
        "SALES"
      ]
    }
  },
  "schemas": {},
  "sequences": {},
  "roles": {},
  "policies": {},
  "views": {},
  "_meta": {
    "columns": {},
    "schemas": {},
    "tables": {}
  }
}