%PDF- %PDF-
Direktori : /home/opti/workflow/ |
Current File : /home/opti/workflow/model.sql |
DROP DATABASE IF EXISTS `was`; CREATE DATABASE `was` /*!40100 DEFAULT CHARACTER SET utf8 */; USE `was` ; -- create Comany table CREATE TABLE `company` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL, `description` TEXT, `address` TEXT, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); INSERT INTO `company` (name, description, address) VALUES ('Optisoft', 'A software development company', "marina"); -- Create Users Table CREATE TABLE `users` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `firstName` VARCHAR(255) NOT NULL, `lastName` VARCHAR(255) NOT NULL, `phone` VARCHAR(255) NOT NULL, `email` VARCHAR(255) NOT NULL, `password` VARCHAR(255) NOT NULL, `orgId` INT, CONSTRAINT fk_UserCom FOREIGN KEY (`orgId`) REFERENCES `company`(`id`), `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO users (firstName, lastName, phone, email, password, orgId) VALUES ('Ndifreke', 'Friday', '08030723709', 'iam.ndie@gmail.com', '$2b$10$hz/RlBNEK4RmrtE6B7A3SepHfngG.Ukqu0a45BgvNjTtnYD45.s6C', '1'); INSERT INTO users (firstName, lastName, phone, email, password, orgId) VALUES ('Endurance', 'Johnson', '08087654362', 'endurance@gmail.com', '$2b$10$hz/RlBNEK4RmrtE6B7A3SepHfngG.Ukqu0a45BgvNjTtnYD45.s6C', '1'); INSERT INTO users (firstName, lastName, phone, email, password, orgId) VALUES ('Esther', 'Friday', '08087586953', 'esther@gmail.com', '$2b$10$hz/RlBNEK4RmrtE6B7A3SepHfngG.Ukqu0a45BgvNjTtnYD45.s6C', '1'); INSERT INTO users (firstName, lastName, phone, email, password, orgId) VALUES ('Faith', 'Godwin', '07054326712', 'faith@gmail.com', '$2b$10$hz/RlBNEK4RmrtE6B7A3SepHfngG.Ukqu0a45BgvNjTtnYD45.s6C', '1'); INSERT INTO users (firstName, lastName, phone, email, password, orgId) VALUES ('Abigail', 'Johnson', '09045863251', 'abigail@gmail.com', '$2b$10$hz/RlBNEK4RmrtE6B7A3SepHfngG.Ukqu0a45BgvNjTtnYD45.s6C', '1'); -- Create Region Table CREATE TABLE `region` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL, `address` TEXT, `description` TEXT, `orgId` INT, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, CONSTRAINT fk_ComReg FOREIGN KEY (`orgId`) REFERENCES `company`(`id`) ); -- Create Division Table CREATE TABLE `division` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL, `description` TEXT, `regionId` INT, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, CONSTRAINT fk_RegDiv FOREIGN KEY (`regionId`) REFERENCES `region`(`id`) ); -- Create Department Table CREATE TABLE `department` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL, `description` TEXT, `divisionId` INT, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, CONSTRAINT fk_DivDep FOREIGN KEY (`divisionId`) REFERENCES `division`(`id`) ); -- Create Units Table CREATE TABLE `units` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL, `description` TEXT, `departmentId` INT, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, CONSTRAINT fk_DepUnits FOREIGN KEY (`departmentId`) REFERENCES `department`(`id`) ); CREATE TABLE `notifications` ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, sender_id INT, receiver_id INT, notification_type VARCHAR(150), notifiable_id INT, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); CREATE TABLE `saved_processes` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `table_name` VARCHAR(250) NOT NULL, `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP );