diff --git a/server/src/table_definition/docs/push_new_table.txt b/server/src/table_definition/docs/push_new_table.txt index 4e17d2e..f230cf5 100644 --- a/server/src/table_definition/docs/push_new_table.txt +++ b/server/src/table_definition/docs/push_new_table.txt @@ -1,60 +1,111 @@ +❯ grpcurl -plaintext -d '{}' localhost:50051 multieko2.table_definition.TableDefinition/GetProfileTree +{ + "profiles": [ + { + "name": "default", + "tables": [ + { + "name": "2025_adresar3" + }, + { + "name": "2025_adresar2" + }, + { + "name": "2025_adresar" + }, + { + "name": "2025_adresar5" + }, + { + "name": "2025_adresar4" + } + ] + } + ] +} ❯ grpcurl -plaintext -d '{ - "table_name": "company_data3", + "table_name": "adresar6", "columns": [ - {"name": "company_name", "field_type": "text"}, - {"name": "textfield", "field_type": "text"}, - {"name": "textfield2", "field_type": "text"}, - {"name": "textfield3", "field_type": "text"}, - {"name": "headquarters_psc", "field_type": "psc"}, - {"name": "contact_phone", "field_type": "phone"}, - {"name": "office_address", "field_type": "address"}, - {"name": "support_email", "field_type": "email"}, - {"name": "is_active", "field_type": "boolean"}, - {"name": "last_updated", "field_type": "timestamp"} + {"name": "firma", "field_type": "text"}, + {"name": "kz", "field_type": "text"}, + {"name": "drc", "field_type": "text"}, + {"name": "ulica", "field_type": "text"}, + {"name": "psc", "field_type": "psc"}, + {"name": "mesto", "field_type": "text"}, + {"name": "stat", "field_type": "text"}, + {"name": "banka", "field_type": "text"}, + {"name": "ucet", "field_type": "text"}, + {"name": "skladm", "field_type": "text"}, + {"name": "ico", "field_type": "text"}, + {"name": "kontakt", "field_type": "text"}, + {"name": "telefon", "field_type": "phone"}, + {"name": "skladu", "field_type": "text"}, + {"name": "fax", "field_type": "text"} ], - "indexes": ["company_name", "is_active"], - "profile_name": "default", - "linked_table_name": "ud_2025_test_table" + "indexes": ["firma", "mesto"], + "profile_name": "default" }' localhost:50051 multieko2.table_definition.TableDefinition/PostTableDefinition { "success": true, - "sql": "CREATE TABLE \"2025_company_data3\" (\n id BIGSERIAL PRIMARY KEY,\n deleted BOOLEAN NOT NULL DEFAULT FALSE,\n firma TEXT NOT NULL,\n \"2025_test_table_id\" BIGINT NOT NULL REFERENCES \"ud_2025_test_table\"(id),\n \"company_name\" TEXT,\n \"textfield\" TEXT,\n \"textfield2\" TEXT,\n \"textfield3\" TEXT,\n \"headquarters_psc\" TEXT,\n \"contact_phone\" VARCHAR(15),\n \"office_address\" TEXT,\n \"support_email\" VARCHAR(255),\n \"is_active\" BOOLEAN,\n \"last_updated\" TIMESTAMPTZ,\n created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP\n)\nCREATE INDEX idx_2025_company_data3_firma ON \"2025_company_data3\" (firma)\nCREATE INDEX idx_2025_company_data3_2025_test_table_id ON \"2025_company_data3\" (\"2025_test_table_id\")" + "sql": "CREATE TABLE \"2025_adresar6\" (\n id BIGSERIAL PRIMARY KEY,\n deleted BOOLEAN NOT NULL DEFAULT FALSE,\n \"firma\" TEXT,\n \"kz\" TEXT,\n \"drc\" TEXT,\n \"ulica\" TEXT,\n \"psc\" TEXT,\n \"mesto\" TEXT,\n \"stat\" TEXT,\n \"banka\" TEXT,\n \"ucet\" TEXT,\n \"skladm\" TEXT,\n \"ico\" TEXT,\n \"kontakt\" TEXT,\n \"telefon\" VARCHAR(15),\n \"skladu\" TEXT,\n \"fax\" TEXT,\n created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP\n)\nCREATE INDEX idx_2025_adresar6_firma ON \"2025_adresar6\" (\"firma\")\nCREATE INDEX idx_2025_adresar6_mesto ON \"2025_adresar6\" (\"mesto\")" } +❯ grpcurl -plaintext -d '{}' localhost:50051 multieko2.table_definition.TableDefinition/GetProfileTree +{ + "profiles": [ + { + "name": "default", + "tables": [ + { + "name": "2025_adresar2" + }, + { + "name": "2025_adresar3" + }, + { + "name": "2025_adresar" + }, + { + "name": "2025_adresar6" + }, + { + "name": "2025_adresar4" + }, + { + "name": "2025_adresar5" + } + ] + } + ] +} + ❯ psql -U multi_psql_dev -d multi_rust_dev + psql (17.2) Type "help" for help. multi_rust_dev=> \dt - List of relations - Schema | Name | Type | Owner ---------+--------------------------------+-------+---------------- - public | 2025_company_data | table | multi_psql_dev - public | 2025_company_data3 | table | multi_psql_dev - public | 2025_multi_dependent_table3 | table | multi_psql_dev - public | 2025_multi_dependent_table4 | table | multi_psql_dev - public | 2025_multi_dependent_table5 | table | multi_psql_dev - public | _sqlx_migrations | table | multi_psql_dev - public | adresar | table | multi_psql_dev - public | profiles | table | multi_psql_dev - public | table_definitions | table | multi_psql_dev - public | uctovnictvo | table | multi_psql_dev - public | ud_2025_linked_test_table | table | multi_psql_dev - public | ud_2025_linked_test_table2 | table | multi_psql_dev - public | ud_2025_linked_test_table3 | table | multi_psql_dev - public | ud_2025_multi_dependent_table | table | multi_psql_dev - public | ud_2025_multi_dependent_table2 | table | multi_psql_dev - public | ud_2025_profile_table | table | multi_psql_dev - public | ud_2025_test_table | table | multi_psql_dev - public | ud_2025_test_table_no_linked | table | multi_psql_dev -(18 rows) + List of relations + Schema | Name | Type | Owner +--------+-------------------+-------+---------------- + public | 2025_adresar | table | multi_psql_dev + public | 2025_adresar2 | table | multi_psql_dev + public | 2025_adresar5 | table | multi_psql_dev + public | 2025_adresar6 | table | multi_psql_dev + public | _sqlx_migrations | table | multi_psql_dev + public | adresar | table | multi_psql_dev + public | profiles | table | multi_psql_dev + public | table_definitions | table | multi_psql_dev + public | table_scripts | table | multi_psql_dev + public | uctovnictvo | table | multi_psql_dev +(10 rows) -multi_rust_dev=> \d adresar - Table "public.adresar" - Column | Type | Collation | Nullable | Default -------------+--------------------------+-----------+----------+------------------------------------- - id | bigint | | not null | nextval('adresar_id_seq'::regclass) +multi_rust_dev=> \d "2025_adresar6"; + Table "public.2025_adresar6" + Column | Type | Collation | Nullable | Default +------------+--------------------------+-----------+----------+--------------------------------------------- + id | bigint | | not null | nextval('"2025_adresar6_id_seq"'::regclass) deleted | boolean | | not null | false - firma | text | | not null | + firma | text | | | kz | text | | | drc | text | | | ulica | text | | | @@ -66,41 +117,13 @@ multi_rust_dev=> \d adresar skladm | text | | | ico | text | | | kontakt | text | | | - telefon | text | | | + telefon | character varying(15) | | | skladu | text | | | fax | text | | | created_at | timestamp with time zone | | | CURRENT_TIMESTAMP Indexes: - "adresar_pkey" PRIMARY KEY, btree (id) - "idx_adresar_firma" btree (firma) - "idx_adresar_mesto" btree (mesto) -Referenced by: - TABLE "uctovnictvo" CONSTRAINT "uctovnictvo_adresar_id_fkey" FOREIGN KEY (adresar_id) REFERENCES adresar(id) - -multi_rust_dev=> \d 2025_company_data3 - Table "public.2025_company_data3" - Column | Type | Collation | Nullable | Default ---------------------+--------------------------+-----------+----------+-------------------------------------------------- - id | bigint | | not null | nextval('"2025_company_data3_id_seq"'::regclass) - deleted | boolean | | not null | false - firma | text | | not null | - 2025_test_table_id | bigint | | not null | - company_name | text | | | - textfield | text | | | - textfield2 | text | | | - textfield3 | text | | | - headquarters_psc | text | | | - contact_phone | character varying(15) | | | - office_address | text | | | - support_email | character varying(255) | | | - is_active | boolean | | | - last_updated | timestamp with time zone | | | - created_at | timestamp with time zone | | | CURRENT_TIMESTAMP -Indexes: - "2025_company_data3_pkey" PRIMARY KEY, btree (id) - "idx_2025_company_data3_2025_test_table_id" btree ("2025_test_table_id") - "idx_2025_company_data3_firma" btree (firma) -Foreign-key constraints: - "2025_company_data3_2025_test_table_id_fkey" FOREIGN KEY ("2025_test_table_id") REFERENCES ud_2025_test_table(id) + "2025_adresar6_pkey" PRIMARY KEY, btree (id) + "idx_2025_adresar6_firma" btree (firma) + "idx_2025_adresar6_mesto" btree (mesto) multi_rust_dev=>