32 lines
No EOL
1.2 KiB
PL/PgSQL
32 lines
No EOL
1.2 KiB
PL/PgSQL
-- Migration pour ajouter les colonnes DocuSeal à la table cddu_contracts si elles n'existent pas
|
|
|
|
-- Ajouter les colonnes pour DocuSeal
|
|
ALTER TABLE public.cddu_contracts
|
|
ADD COLUMN IF NOT EXISTS docuseal_template_id TEXT,
|
|
ADD COLUMN IF NOT EXISTS docuseal_submission_id TEXT,
|
|
ADD COLUMN IF NOT EXISTS signature_status TEXT DEFAULT 'Non initiée',
|
|
ADD COLUMN IF NOT EXISTS signature_link TEXT,
|
|
ADD COLUMN IF NOT EXISTS updated_at TIMESTAMPTZ DEFAULT now();
|
|
|
|
-- Créer un index sur docuseal_submission_id pour les recherches
|
|
CREATE INDEX IF NOT EXISTS idx_cddu_contracts_docuseal_submission_id
|
|
ON public.cddu_contracts(docuseal_submission_id);
|
|
|
|
-- Créer un index sur signature_status pour les filtres
|
|
CREATE INDEX IF NOT EXISTS idx_cddu_contracts_signature_status
|
|
ON public.cddu_contracts(signature_status);
|
|
|
|
-- Ajouter un trigger pour mettre à jour updated_at automatiquement
|
|
CREATE OR REPLACE FUNCTION update_updated_at_column()
|
|
RETURNS TRIGGER AS $$
|
|
BEGIN
|
|
NEW.updated_at = now();
|
|
RETURN NEW;
|
|
END;
|
|
$$ language 'plpgsql';
|
|
|
|
DROP TRIGGER IF EXISTS update_cddu_contracts_updated_at ON public.cddu_contracts;
|
|
CREATE TRIGGER update_cddu_contracts_updated_at
|
|
BEFORE UPDATE ON public.cddu_contracts
|
|
FOR EACH ROW
|
|
EXECUTE FUNCTION update_updated_at_column(); |