module 4
This commit is contained in:
30
migrations/002_buyer_fields.sql
Normal file
30
migrations/002_buyer_fields.sql
Normal file
@@ -0,0 +1,30 @@
|
||||
-- BizMatch Phase 2 — module 4: the fields the buyer side actually collects
|
||||
-- (NDA form + intake sheet). 001_init.sql stays untouched.
|
||||
|
||||
-- -------------------------------------------------------------- contact
|
||||
ALTER TABLE contact ADD COLUMN cell text;
|
||||
|
||||
-- ---------------------------------------------------------------- buyer
|
||||
ALTER TABLE buyer
|
||||
ADD COLUMN address text,
|
||||
ADD COLUMN state text,
|
||||
ADD COLUMN background_experience text,
|
||||
ADD COLUMN how_heard text,
|
||||
ADD COLUMN interested_in_updates boolean NOT NULL DEFAULT false;
|
||||
|
||||
-- ------------------------------------------------------------------ nda
|
||||
-- Money stays text on purpose: the paper forms contain things like
|
||||
-- "1.2M + inventory" or "TBD" that no numeric type survives.
|
||||
ALTER TABLE nda
|
||||
ADD COLUMN total_purchase_price text,
|
||||
ADD COLUMN down_payment text,
|
||||
ADD COLUMN intro_date date;
|
||||
|
||||
-- ------------------------------------------- dedup anchors (duplicates)
|
||||
-- The duplicate check compares names case-insensitively and phone numbers
|
||||
-- digits-only, so the indexes have to match those expressions exactly.
|
||||
CREATE INDEX contact_name_lower_idx ON contact (lower(btrim(name)));
|
||||
CREATE INDEX contact_phone_digits_idx
|
||||
ON contact ((regexp_replace(phone, '[^0-9]', '', 'g'))) WHERE phone IS NOT NULL;
|
||||
CREATE INDEX contact_cell_digits_idx
|
||||
ON contact ((regexp_replace(cell, '[^0-9]', '', 'g'))) WHERE cell IS NOT NULL;
|
||||
Reference in New Issue
Block a user