work_hours_schema.sql 751 B

12345678910111213141516171819202122
  1. -- Work Hours database schema
  2. -- For tracking time spent on tasks
  3. CREATE TABLE IF NOT EXISTS work_hours (
  4. id INT AUTO_INCREMENT PRIMARY KEY,
  5. task_id INT NOT NULL,
  6. user_id INT NOT NULL,
  7. date DATE NOT NULL,
  8. hours DECIMAL(5,2) NOT NULL,
  9. description TEXT NULL,
  10. rate DECIMAL(10,2) NULL,
  11. total_amount DECIMAL(10,2) NULL,
  12. created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  13. updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  14. INDEX idx_task_id (task_id),
  15. INDEX idx_user_id (user_id),
  16. INDEX idx_date (date),
  17. INDEX idx_created_at (created_at),
  18. FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE,
  19. FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
  20. );