Files
timeoverflow/db/structure.sql
2025-03-22 16:40:14 +01:00

1399 lines
33 KiB
PL/PgSQL

SET statement_timeout = 0;
SET lock_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
--
-- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -
--
CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog;
--
-- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner: -
--
COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
--
-- Name: hstore; Type: EXTENSION; Schema: -; Owner: -
--
CREATE EXTENSION IF NOT EXISTS hstore WITH SCHEMA public;
--
-- Name: EXTENSION hstore; Type: COMMENT; Schema: -; Owner: -
--
COMMENT ON EXTENSION hstore IS 'data type for storing sets of (key, value) pairs';
--
-- Name: pg_trgm; Type: EXTENSION; Schema: -; Owner: -
--
CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public;
--
-- Name: EXTENSION pg_trgm; Type: COMMENT; Schema: -; Owner: -
--
COMMENT ON EXTENSION pg_trgm IS 'text similarity measurement and index searching based on trigrams';
--
-- Name: unaccent; Type: EXTENSION; Schema: -; Owner: -
--
CREATE EXTENSION IF NOT EXISTS unaccent WITH SCHEMA public;
--
-- Name: EXTENSION unaccent; Type: COMMENT; Schema: -; Owner: -
--
COMMENT ON EXTENSION unaccent IS 'text search dictionary that removes accents';
--
-- Name: posts_trigger(); Type: FUNCTION; Schema: public; Owner: -
--
CREATE FUNCTION public.posts_trigger() RETURNS trigger
LANGUAGE plpgsql
AS $$
begin
new.tsv :=
to_tsvector('simple', unaccent(coalesce(new.title::text, ''))) ||
to_tsvector('simple', unaccent(coalesce(new.description::text, ''))) ||
to_tsvector('simple', unaccent(coalesce(new.tags::text, '')));
return new;
end
$$;
SET default_tablespace = '';
SET default_with_oids = false;
--
-- Name: accounts; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.accounts (
id integer NOT NULL,
accountable_id integer,
accountable_type character varying,
balance integer DEFAULT 0,
max_allowed_balance integer,
min_allowed_balance integer,
flagged boolean,
created_at timestamp without time zone,
updated_at timestamp without time zone,
organization_id integer
);
--
-- Name: accounts_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.accounts_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: accounts_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.accounts_id_seq OWNED BY public.accounts.id;
--
-- Name: active_admin_comments; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.active_admin_comments (
id integer NOT NULL,
namespace character varying,
body text,
resource_id character varying NOT NULL,
resource_type character varying NOT NULL,
author_id integer,
author_type character varying,
created_at timestamp without time zone,
updated_at timestamp without time zone
);
--
-- Name: active_admin_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.active_admin_comments_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: active_admin_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.active_admin_comments_id_seq OWNED BY public.active_admin_comments.id;
--
-- Name: active_storage_attachments; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.active_storage_attachments (
id bigint NOT NULL,
name character varying NOT NULL,
record_type character varying NOT NULL,
record_id bigint NOT NULL,
blob_id bigint NOT NULL,
created_at timestamp without time zone NOT NULL
);
--
-- Name: active_storage_attachments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.active_storage_attachments_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: active_storage_attachments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.active_storage_attachments_id_seq OWNED BY public.active_storage_attachments.id;
--
-- Name: active_storage_blobs; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.active_storage_blobs (
id bigint NOT NULL,
key character varying NOT NULL,
filename character varying NOT NULL,
content_type character varying,
metadata text,
service_name character varying NOT NULL,
byte_size bigint NOT NULL,
checksum character varying,
created_at timestamp without time zone NOT NULL
);
--
-- Name: active_storage_blobs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.active_storage_blobs_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: active_storage_blobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage_blobs.id;
--
-- Name: active_storage_variant_records; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.active_storage_variant_records (
id bigint NOT NULL,
blob_id bigint NOT NULL,
variation_digest character varying NOT NULL
);
--
-- Name: active_storage_variant_records_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.active_storage_variant_records_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: active_storage_variant_records_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.active_storage_variant_records_id_seq OWNED BY public.active_storage_variant_records.id;
--
-- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.ar_internal_metadata (
key character varying NOT NULL,
value character varying,
created_at timestamp(6) without time zone NOT NULL,
updated_at timestamp(6) without time zone NOT NULL
);
--
-- Name: categories; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.categories (
id integer NOT NULL,
created_at timestamp without time zone,
updated_at timestamp without time zone,
name_translations jsonb DEFAULT '{}'::jsonb NOT NULL,
icon_name character varying
);
--
-- Name: categories_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.categories_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: categories_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.categories_id_seq OWNED BY public.categories.id;
--
-- Name: device_tokens; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.device_tokens (
id integer NOT NULL,
user_id integer NOT NULL,
token character varying NOT NULL,
created_at timestamp without time zone,
updated_at timestamp without time zone
);
--
-- Name: device_tokens_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.device_tokens_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: device_tokens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.device_tokens_id_seq OWNED BY public.device_tokens.id;
--
-- Name: documents; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.documents (
id integer NOT NULL,
documentable_id integer,
documentable_type character varying,
label character varying,
created_at timestamp without time zone,
updated_at timestamp without time zone,
title_translations jsonb DEFAULT '{}'::jsonb NOT NULL,
content_translations jsonb DEFAULT '{}'::jsonb NOT NULL
);
--
-- Name: documents_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.documents_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: documents_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.documents_id_seq OWNED BY public.documents.id;
--
-- Name: events; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.events (
id integer NOT NULL,
action integer NOT NULL,
post_id integer,
member_id integer,
transfer_id integer,
created_at timestamp without time zone,
updated_at timestamp without time zone
);
--
-- Name: events_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.events_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: events_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.events_id_seq OWNED BY public.events.id;
--
-- Name: members; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.members (
id integer NOT NULL,
user_id integer,
organization_id integer,
manager boolean,
created_at timestamp without time zone,
updated_at timestamp without time zone,
entry_date date,
member_uid integer NOT NULL,
active boolean DEFAULT true,
tags text[] DEFAULT '{}'::text[]
);
--
-- Name: members_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.members_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: members_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.members_id_seq OWNED BY public.members.id;
--
-- Name: movements; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.movements (
id integer NOT NULL,
account_id integer,
transfer_id integer,
amount integer,
created_at timestamp without time zone,
updated_at timestamp without time zone
);
--
-- Name: movements_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.movements_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: movements_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.movements_id_seq OWNED BY public.movements.id;
--
-- Name: organizations; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.organizations (
id integer NOT NULL,
name character varying(255) NOT NULL,
created_at timestamp without time zone,
updated_at timestamp without time zone,
reg_number_seq integer,
theme character varying,
email character varying,
phone character varying,
web character varying,
public_opening_times text,
description text,
address text,
neighborhood character varying,
city character varying,
domain character varying,
highlighted boolean DEFAULT false
);
--
-- Name: organizations_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.organizations_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: organizations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.organizations_id_seq OWNED BY public.organizations.id;
--
-- Name: petitions; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.petitions (
id bigint NOT NULL,
user_id bigint NOT NULL,
organization_id bigint NOT NULL,
status integer,
created_at timestamp(6) without time zone NOT NULL,
updated_at timestamp(6) without time zone NOT NULL
);
--
-- Name: petitions_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.petitions_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: petitions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.petitions_id_seq OWNED BY public.petitions.id;
--
-- Name: posts; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.posts (
id integer NOT NULL,
title character varying,
type character varying,
category_id integer,
user_id integer,
description text,
start_on date,
end_on date,
created_at timestamp without time zone,
updated_at timestamp without time zone,
tags text[],
organization_id integer,
active boolean DEFAULT true,
is_group boolean DEFAULT false,
tsv tsvector
);
--
-- Name: posts_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.posts_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: posts_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.posts_id_seq OWNED BY public.posts.id;
--
-- Name: push_notifications; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.push_notifications (
id integer NOT NULL,
event_id integer NOT NULL,
device_token_id integer NOT NULL,
processed_at timestamp without time zone,
created_at timestamp without time zone NOT NULL,
updated_at timestamp without time zone NOT NULL,
title character varying DEFAULT ''::character varying NOT NULL,
body character varying DEFAULT ''::character varying NOT NULL,
data json DEFAULT '{}'::json NOT NULL
);
--
-- Name: push_notifications_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.push_notifications_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: push_notifications_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.push_notifications_id_seq OWNED BY public.push_notifications.id;
--
-- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.schema_migrations (
version character varying NOT NULL
);
--
-- Name: transfers; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.transfers (
id integer NOT NULL,
post_id integer,
reason text,
operator_id integer,
created_at timestamp without time zone,
updated_at timestamp without time zone
);
--
-- Name: transfers_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.transfers_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: transfers_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.transfers_id_seq OWNED BY public.transfers.id;
--
-- Name: users; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.users (
id integer NOT NULL,
username character varying NOT NULL,
email character varying NOT NULL,
date_of_birth date,
phone character varying,
alt_phone character varying,
address text,
created_at timestamp without time zone,
updated_at timestamp without time zone,
deleted_at timestamp without time zone,
gender character varying,
description text,
active boolean DEFAULT true,
terms_accepted_at timestamp without time zone,
encrypted_password character varying DEFAULT ''::character varying NOT NULL,
reset_password_token character varying,
reset_password_sent_at timestamp without time zone,
remember_created_at timestamp without time zone,
sign_in_count integer DEFAULT 0,
current_sign_in_at timestamp without time zone,
last_sign_in_at timestamp without time zone,
current_sign_in_ip character varying,
last_sign_in_ip character varying,
confirmation_token character varying,
confirmed_at timestamp without time zone,
confirmation_sent_at timestamp without time zone,
unconfirmed_email character varying,
failed_attempts integer DEFAULT 0,
unlock_token character varying,
locked_at timestamp without time zone,
locale character varying DEFAULT 'es'::character varying,
notifications boolean DEFAULT true,
push_notifications boolean DEFAULT true NOT NULL,
postcode character varying
);
--
-- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.users_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
--
-- Name: accounts id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.accounts ALTER COLUMN id SET DEFAULT nextval('public.accounts_id_seq'::regclass);
--
-- Name: active_admin_comments id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_admin_comments ALTER COLUMN id SET DEFAULT nextval('public.active_admin_comments_id_seq'::regclass);
--
-- Name: active_storage_attachments id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_attachments ALTER COLUMN id SET DEFAULT nextval('public.active_storage_attachments_id_seq'::regclass);
--
-- Name: active_storage_blobs id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_blobs ALTER COLUMN id SET DEFAULT nextval('public.active_storage_blobs_id_seq'::regclass);
--
-- Name: active_storage_variant_records id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_variant_records ALTER COLUMN id SET DEFAULT nextval('public.active_storage_variant_records_id_seq'::regclass);
--
-- Name: categories id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.categories ALTER COLUMN id SET DEFAULT nextval('public.categories_id_seq'::regclass);
--
-- Name: device_tokens id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.device_tokens ALTER COLUMN id SET DEFAULT nextval('public.device_tokens_id_seq'::regclass);
--
-- Name: documents id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.documents ALTER COLUMN id SET DEFAULT nextval('public.documents_id_seq'::regclass);
--
-- Name: events id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.events ALTER COLUMN id SET DEFAULT nextval('public.events_id_seq'::regclass);
--
-- Name: members id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.members ALTER COLUMN id SET DEFAULT nextval('public.members_id_seq'::regclass);
--
-- Name: movements id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.movements ALTER COLUMN id SET DEFAULT nextval('public.movements_id_seq'::regclass);
--
-- Name: organizations id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.organizations ALTER COLUMN id SET DEFAULT nextval('public.organizations_id_seq'::regclass);
--
-- Name: petitions id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.petitions ALTER COLUMN id SET DEFAULT nextval('public.petitions_id_seq'::regclass);
--
-- Name: posts id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.posts ALTER COLUMN id SET DEFAULT nextval('public.posts_id_seq'::regclass);
--
-- Name: push_notifications id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.push_notifications ALTER COLUMN id SET DEFAULT nextval('public.push_notifications_id_seq'::regclass);
--
-- Name: transfers id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.transfers ALTER COLUMN id SET DEFAULT nextval('public.transfers_id_seq'::regclass);
--
-- Name: users id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
--
-- Name: accounts accounts_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.accounts
ADD CONSTRAINT accounts_pkey PRIMARY KEY (id);
--
-- Name: active_admin_comments active_admin_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_admin_comments
ADD CONSTRAINT active_admin_comments_pkey PRIMARY KEY (id);
--
-- Name: active_storage_attachments active_storage_attachments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_attachments
ADD CONSTRAINT active_storage_attachments_pkey PRIMARY KEY (id);
--
-- Name: active_storage_blobs active_storage_blobs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_blobs
ADD CONSTRAINT active_storage_blobs_pkey PRIMARY KEY (id);
--
-- Name: active_storage_variant_records active_storage_variant_records_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_variant_records
ADD CONSTRAINT active_storage_variant_records_pkey PRIMARY KEY (id);
--
-- Name: ar_internal_metadata ar_internal_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.ar_internal_metadata
ADD CONSTRAINT ar_internal_metadata_pkey PRIMARY KEY (key);
--
-- Name: categories categories_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.categories
ADD CONSTRAINT categories_pkey PRIMARY KEY (id);
--
-- Name: device_tokens device_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.device_tokens
ADD CONSTRAINT device_tokens_pkey PRIMARY KEY (id);
--
-- Name: documents documents_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.documents
ADD CONSTRAINT documents_pkey PRIMARY KEY (id);
--
-- Name: events events_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.events
ADD CONSTRAINT events_pkey PRIMARY KEY (id);
--
-- Name: members members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.members
ADD CONSTRAINT members_pkey PRIMARY KEY (id);
--
-- Name: movements movements_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.movements
ADD CONSTRAINT movements_pkey PRIMARY KEY (id);
--
-- Name: organizations organizations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.organizations
ADD CONSTRAINT organizations_pkey PRIMARY KEY (id);
--
-- Name: petitions petitions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.petitions
ADD CONSTRAINT petitions_pkey PRIMARY KEY (id);
--
-- Name: posts posts_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.posts
ADD CONSTRAINT posts_pkey PRIMARY KEY (id);
--
-- Name: push_notifications push_notifications_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.push_notifications
ADD CONSTRAINT push_notifications_pkey PRIMARY KEY (id);
--
-- Name: transfers transfers_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.transfers
ADD CONSTRAINT transfers_pkey PRIMARY KEY (id);
--
-- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_pkey PRIMARY KEY (id);
--
-- Name: index_accounts_on_accountable_type_and_accountable_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_accounts_on_accountable_type_and_accountable_id ON public.accounts USING btree (accountable_type, accountable_id);
--
-- Name: index_accounts_on_organization_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_accounts_on_organization_id ON public.accounts USING btree (organization_id);
--
-- Name: index_active_admin_comments_on_author_type_and_author_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_active_admin_comments_on_author_type_and_author_id ON public.active_admin_comments USING btree (author_type, author_id);
--
-- Name: index_active_admin_comments_on_namespace; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_active_admin_comments_on_namespace ON public.active_admin_comments USING btree (namespace);
--
-- Name: index_active_admin_comments_on_resource_type_and_resource_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_active_admin_comments_on_resource_type_and_resource_id ON public.active_admin_comments USING btree (resource_type, resource_id);
--
-- Name: index_active_storage_attachments_on_blob_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_active_storage_attachments_on_blob_id ON public.active_storage_attachments USING btree (blob_id);
--
-- Name: index_active_storage_attachments_uniqueness; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX index_active_storage_attachments_uniqueness ON public.active_storage_attachments USING btree (record_type, record_id, name, blob_id);
--
-- Name: index_active_storage_blobs_on_key; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX index_active_storage_blobs_on_key ON public.active_storage_blobs USING btree (key);
--
-- Name: index_active_storage_variant_records_uniqueness; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX index_active_storage_variant_records_uniqueness ON public.active_storage_variant_records USING btree (blob_id, variation_digest);
--
-- Name: index_device_tokens_on_user_id_and_token; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX index_device_tokens_on_user_id_and_token ON public.device_tokens USING btree (user_id, token);
--
-- Name: index_documents_on_documentable_id_and_documentable_type; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_documents_on_documentable_id_and_documentable_type ON public.documents USING btree (documentable_id, documentable_type);
--
-- Name: index_documents_on_label; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_documents_on_label ON public.documents USING btree (label);
--
-- Name: index_events_on_member_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_events_on_member_id ON public.events USING btree (member_id) WHERE (member_id IS NOT NULL);
--
-- Name: index_events_on_post_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_events_on_post_id ON public.events USING btree (post_id) WHERE (post_id IS NOT NULL);
--
-- Name: index_events_on_transfer_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_events_on_transfer_id ON public.events USING btree (transfer_id) WHERE (transfer_id IS NOT NULL);
--
-- Name: index_members_on_organization_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_members_on_organization_id ON public.members USING btree (organization_id);
--
-- Name: index_members_on_organization_id_and_member_uid; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX index_members_on_organization_id_and_member_uid ON public.members USING btree (organization_id, member_uid);
--
-- Name: index_members_on_user_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_members_on_user_id ON public.members USING btree (user_id);
--
-- Name: index_movements_on_account_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_movements_on_account_id ON public.movements USING btree (account_id);
--
-- Name: index_movements_on_transfer_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_movements_on_transfer_id ON public.movements USING btree (transfer_id);
--
-- Name: index_organizations_on_name; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX index_organizations_on_name ON public.organizations USING btree (name);
--
-- Name: index_petitions_on_organization_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_petitions_on_organization_id ON public.petitions USING btree (organization_id);
--
-- Name: index_petitions_on_user_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_petitions_on_user_id ON public.petitions USING btree (user_id);
--
-- Name: index_posts_on_category_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_posts_on_category_id ON public.posts USING btree (category_id);
--
-- Name: index_posts_on_organization_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_posts_on_organization_id ON public.posts USING btree (organization_id);
--
-- Name: index_posts_on_tags; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_posts_on_tags ON public.posts USING gin (tags);
--
-- Name: index_posts_on_tsv; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_posts_on_tsv ON public.posts USING gin (tsv);
--
-- Name: index_posts_on_user_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_posts_on_user_id ON public.posts USING btree (user_id);
--
-- Name: index_transfers_on_operator_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_transfers_on_operator_id ON public.transfers USING btree (operator_id);
--
-- Name: index_transfers_on_post_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_transfers_on_post_id ON public.transfers USING btree (post_id);
--
-- Name: index_users_on_email; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_users_on_email ON public.users USING btree (email);
--
-- Name: unique_schema_migrations; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX unique_schema_migrations ON public.schema_migrations USING btree (version);
--
-- Name: posts tsvectorupdate; Type: TRIGGER; Schema: public; Owner: -
--
CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE ON public.posts FOR EACH ROW EXECUTE PROCEDURE public.posts_trigger();
--
-- Name: events events_member_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.events
ADD CONSTRAINT events_member_id_fkey FOREIGN KEY (member_id) REFERENCES public.members(id);
--
-- Name: events events_post_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.events
ADD CONSTRAINT events_post_id_fkey FOREIGN KEY (post_id) REFERENCES public.posts(id);
--
-- Name: events events_transfer_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.events
ADD CONSTRAINT events_transfer_id_fkey FOREIGN KEY (transfer_id) REFERENCES public.transfers(id);
--
-- Name: petitions fk_rails_0f0c5fe120; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.petitions
ADD CONSTRAINT fk_rails_0f0c5fe120 FOREIGN KEY (organization_id) REFERENCES public.organizations(id);
--
-- Name: petitions fk_rails_148f563e25; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.petitions
ADD CONSTRAINT fk_rails_148f563e25 FOREIGN KEY (user_id) REFERENCES public.users(id);
--
-- Name: accounts fk_rails_1ceb778440; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.accounts
ADD CONSTRAINT fk_rails_1ceb778440 FOREIGN KEY (organization_id) REFERENCES public.organizations(id);
--
-- Name: push_notifications fk_rails_36fb6ef1a8; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.push_notifications
ADD CONSTRAINT fk_rails_36fb6ef1a8 FOREIGN KEY (device_token_id) REFERENCES public.device_tokens(id);
--
-- Name: push_notifications fk_rails_79a395b2d7; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.push_notifications
ADD CONSTRAINT fk_rails_79a395b2d7 FOREIGN KEY (event_id) REFERENCES public.events(id);
--
-- Name: active_storage_variant_records fk_rails_993965df05; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_variant_records
ADD CONSTRAINT fk_rails_993965df05 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id);
--
-- Name: active_storage_attachments fk_rails_c3b3935057; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.active_storage_attachments
ADD CONSTRAINT fk_rails_c3b3935057 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id);
--
-- PostgreSQL database dump complete
--
SET search_path TO "$user", public;
INSERT INTO "schema_migrations" (version) VALUES
('1'),
('2'),
('20121019101022'),
('20121104004639'),
('20121104085711'),
('20121121233818'),
('20130214175758'),
('20130214181128'),
('20130222185624'),
('20130425165150'),
('20130508085004'),
('20130513092219'),
('20130514094755'),
('20130618210236'),
('20130621102219'),
('20130621103053'),
('20130621103501'),
('20130621105452'),
('20130703233851'),
('20130703234011'),
('20130703234042'),
('20130723160206'),
('20131017144321'),
('20131025202608'),
('20131027215517'),
('20131029202724'),
('20131103221044'),
('20131104004235'),
('20131104013634'),
('20131104013829'),
('20131104032622'),
('20131220160257'),
('20131227110122'),
('20131227142805'),
('20131227155440'),
('20131231110424'),
('20140119161433'),
('20140513141718'),
('20140514225527'),
('20150329193421'),
('20150330200315'),
('20150422162806'),
('20180221161343'),
('20180501093846'),
('20180514193153'),
('20180524143938'),
('20180525141138'),
('20180529144243'),
('20180530180546'),
('20180604145622'),
('20180828160700'),
('20180831161349'),
('20180924164456'),
('20181004200104'),
('20190319121401'),
('20190322180602'),
('20190411192828'),
('20190412163011'),
('20190523213421'),
('20190523225323'),
('20210423193937'),
('20210424174640'),
('20210502160343'),
('20210503201944'),
('20221016192111'),
('20230312231058'),
('20230314233504'),
('20230401114456'),
('20231120164231'),
('20231120164346'),
('20241230170753'),
('20250215163404'),
('20250215163405'),
('20250215163406');