Publier Globinours 1.0.0-rc.3
This commit is contained in:
parent
ea8c24d622
commit
9a2b4068da
325 changed files with 38230 additions and 20 deletions
21
migrations/049_animal_placements.sql
Normal file
21
migrations/049_animal_placements.sql
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
CREATE TABLE animal_placements (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
animal_id INTEGER NOT NULL,
|
||||
event_type TEXT NOT NULL CHECK(event_type IN ('reservation','foster','adoption','return','cancellation')),
|
||||
event_date TEXT NOT NULL,
|
||||
contact_id INTEGER,
|
||||
reason TEXT,
|
||||
notes TEXT,
|
||||
adoption_id INTEGER,
|
||||
created_by INTEGER,
|
||||
created_at TEXT NOT NULL DEFAULT(datetime('now')),
|
||||
FOREIGN KEY(animal_id) REFERENCES animals(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY(contact_id) REFERENCES directory_contacts(id) ON DELETE SET NULL,
|
||||
FOREIGN KEY(adoption_id) REFERENCES adoptions(id) ON DELETE SET NULL,
|
||||
FOREIGN KEY(created_by) REFERENCES users(id) ON DELETE SET NULL
|
||||
);
|
||||
CREATE INDEX idx_animal_placements_animal_date ON animal_placements(animal_id,event_date DESC,id DESC);
|
||||
CREATE UNIQUE INDEX idx_animal_placements_adoption ON animal_placements(adoption_id) WHERE adoption_id IS NOT NULL;
|
||||
|
||||
INSERT OR IGNORE INTO animal_placements(animal_id,event_type,event_date,contact_id,reason,notes,adoption_id,created_at)
|
||||
SELECT animal_id,'adoption',adoption_date,adopter_contact_id,'Adoption définitive',notes,id,COALESCE(created_at,datetime('now')) FROM adoptions;
|
||||
Loading…
Add table
Add a link
Reference in a new issue