UNPKG

ddl-manager

Version:

store postgres procedures and triggers in files

114 lines (112 loc) 3.08 kB
import { Database } from "../../../../lib/database/schema/Database"; import { Table } from "../../../../lib/database/schema/Table"; import { Column } from "../../../../lib/database/schema/Column"; import { TableID } from "../../../../lib/database/schema/TableID"; export const testDatabase = new Database([ table("companies", { bigint_orders_ids: "bigint[]", total_profit: "numeric" }), table("orders", { doc_number: "text", companies_ids: "integer[]", clients_ids: "integer[]", partners_ids: "integer[]", order_date: "date", date: "date", profit: "numeric", }), table("order", { some_date: "date" }), table("vats", {vat_value: "numeric"}), table("unit_type", { id_category: "integer", name: "Text" }), table("invoice", { renomination_invoices: "int8[]", payments_ids: "int8[]", orders_ids: "bigint[]", invoice_summ: "numeric" }), table("invoice_positions", { id_invoice: "integer" }), table("train", { units_ids: "int8[]" }), table("train_unit_link", { id_train: "integer" }), table("list_gtd", { orders_ids: "bigint[]", operation_units_ids: "bigint[]", date_clear: "date" }), table("operation.operation", { id_operation_type: "integer", doc_parent_id_order: "bigint", id_order: "bigint", units_ids: "bigint[]", end_expected_date: "date", cost_sale: "numeric", deleted: "smallint", lvl: "integer" }), table("operations", { units_ids: "bigint[]", incoming_date: "date", outgoing_date: "date", doc_number: "text" }), table("arrival_points", { id_point: "integer", actual_date: "date", expected_date: "date", sort: "integer" }), table("user_task", { query_name: "text", row_id: "int8" }), table("tasks", { watchers_ids: "text", orders_managers_ids: "text" }), table("user_task_watcher_link", { id_user: "integer" }), table("units", { orders_ids: "bigint[]" }), table("log_oper", { orders_ids: "bigint[]", buy_vat_type: "integer", buy_vat_value: "numeric", sale_vat_type: "integer", sale_vat_value: "numeric" }), table("rates", { price: "numeric", quantity: "integer", vat_type: "integer", vat_value: "numeric" }), table("countries", { has_surveyor_inspection: "boolean" }), table("comments", { message: "text" }), table("list_contracts", { date_contract: "date" }) ]); function table(schemaName: string, columns: Record<string, string>) { const tableID = TableID.fromString(schemaName); return new Table( tableID.schema, tableID.name, Object.entries(columns).map(([key, type]) => new Column( tableID, key, type )) ); }