-- Migration 007: Separate service/billing contacts + invoice/receipt preferences
-- Adds optional service-address contact, billing contact, and invoice preferences for business customers.

-- SERVICE ADDRESS CONTACT (for businesses where a different person handles service visits)
ALTER TABLE `customers`
  ADD COLUMN `has_separate_service_contact` tinyint(1) NOT NULL DEFAULT 0 AFTER `location_contact`,
  ADD COLUMN `service_contact_first_name` varchar(100) DEFAULT NULL AFTER `has_separate_service_contact`,
  ADD COLUMN `service_contact_last_name` varchar(100) DEFAULT NULL AFTER `service_contact_first_name`,
  ADD COLUMN `service_contact_phone` varchar(20) DEFAULT NULL AFTER `service_contact_last_name`,
  ADD COLUMN `service_contact_email` varchar(255) DEFAULT NULL AFTER `service_contact_phone`;

-- BILLING CONTACT (for businesses where billing goes to a different person/department)
ALTER TABLE `customers`
  ADD COLUMN `has_separate_billing_contact` tinyint(1) NOT NULL DEFAULT 0 AFTER `service_contact_email`,
  ADD COLUMN `billing_contact_first_name` varchar(100) DEFAULT NULL AFTER `has_separate_billing_contact`,
  ADD COLUMN `billing_contact_last_name` varchar(100) DEFAULT NULL AFTER `billing_contact_first_name`,
  ADD COLUMN `billing_contact_company` varchar(255) DEFAULT NULL AFTER `billing_contact_last_name`,
  ADD COLUMN `billing_contact_email` varchar(255) DEFAULT NULL AFTER `billing_contact_company`,
  ADD COLUMN `billing_mailing_address` varchar(255) DEFAULT NULL AFTER `billing_contact_email`,
  ADD COLUMN `billing_mailing_city` varchar(100) DEFAULT NULL AFTER `billing_mailing_address`,
  ADD COLUMN `billing_mailing_state` varchar(50) DEFAULT NULL AFTER `billing_mailing_city`,
  ADD COLUMN `billing_mailing_zip` varchar(20) DEFAULT NULL AFTER `billing_mailing_state`;

-- INVOICE / RECEIPT PREFERENCES (whether to include pictures and notes)
ALTER TABLE `customers`
  ADD COLUMN `include_pictures_on_invoices` tinyint(1) NOT NULL DEFAULT 0 AFTER `billing_mailing_zip`,
  ADD COLUMN `include_notes_on_invoices` tinyint(1) NOT NULL DEFAULT 0 AFTER `include_pictures_on_invoices`;
