38808-vm/db/migrations/032_add_charity_members_plans.sql
2026-04-13 04:25:15 +00:00

38 lines
1.6 KiB
SQL

CREATE TABLE IF NOT EXISTS charity_members (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
role VARCHAR(100),
phone VARCHAR(50),
email VARCHAR(100),
join_date DATE,
status ENUM('active', 'inactive') DEFAULT 'active',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
CREATE TABLE IF NOT EXISTS charity_plans (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(255) NOT NULL,
description TEXT,
start_date DATE,
end_date DATE,
target_value INT DEFAULT 100,
achieved_value INT DEFAULT 0,
status ENUM('pending', 'in_progress', 'completed', 'cancelled') DEFAULT 'pending',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS committee_members;
CREATE TABLE IF NOT EXISTS committee_members (
id INT AUTO_INCREMENT PRIMARY KEY,
committee_id INT NOT NULL,
charity_member_id INT NOT NULL,
role VARCHAR(100) DEFAULT 'عضو',
joined_at DATE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (committee_id) REFERENCES committees(id) ON DELETE CASCADE,
FOREIGN KEY (charity_member_id) REFERENCES charity_members(id) ON DELETE CASCADE,
UNIQUE KEY unique_member (committee_id, charity_member_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;