migrations/Version20230908151529.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. final class Version20230908151529 extends AbstractMigration
  7. {
  8.     public function getDescription(): string
  9.     {
  10.         return '';
  11.     }
  12.     public function up(Schema $schema): void
  13.     {
  14.        $this->addSql('CREATE TABLE IF NOT EXISTS `user` (
  15.         `id` int(11) NOT NULL AUTO_INCREMENT,
  16.         `user_name` varchar(255) NOT NULL,
  17.         `email` varchar(100) NOT NULL,
  18.         `roles` text NOT NULL,
  19.         `password` varchar(100) NOT NULL,
  20.         `is_verified` tinyint(2) NOT NULL DEFAULT 0,
  21.         `is_active` tinyint(2) NOT NULL DEFAULT 1,
  22.         `created_at` datetime(6) DEFAULT NULL,
  23.         `updated_at` datetime(6) DEFAULT NULL,
  24.         PRIMARY KEY (`id`)
  25.        ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci');
  26.        $this->addSql('CREATE TABLE  IF NOT EXISTS `user_profile` (
  27.         `id` int(11) NOT NULL AUTO_INCREMENT,
  28.         `user_id` int(11) NOT NULL,
  29.         `first_name` varchar(100) NOT NULL,
  30.         `last_name` varchar(100) NOT NULL,
  31.         `profile_image` varchar(50) DEFAULT NULL,
  32.         `contact_number` varchar(50) DEFAULT NULL,
  33.         `created_at` datetime(6) NOT NULL,
  34.         `updated_at` datetime(6) DEFAULT NULL,
  35.         PRIMARY KEY (`id`),
  36.         KEY `user_id` (`user_id`),
  37.         CONSTRAINT `user_profile_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
  38.        ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci');
  39.         $this->addSql("CREATE TABLE IF NOT EXISTS `reset_password_request` (
  40.           `id` int(11) NOT NULL AUTO_INCREMENT,
  41.           `user_id` int(11) NOT NULL,
  42.           `selector` varchar(20) NOT NULL,
  43.           `hashed_token` varchar(100) NOT NULL,
  44.           `requested_at` datetime NOT NULL COMMENT '(DC2Type:datetime_immutable)',
  45.           `expires_at` datetime NOT NULL COMMENT '(DC2Type:datetime_immutable)',
  46.           PRIMARY KEY (`id`) USING BTREE,
  47.           KEY `IDX_7CE748AA76ED395` (`user_id`) USING BTREE
  48.         ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci");
  49.        // INSERT INTO user
  50.        $userData = array(
  51.         array(1'admin''[email protected]''["ROLE_ADMIN"]','$2y$13$lkpQ20pF267MvLZp8Y8VI.5672BdyRT.ghQoM0gWpWiGj/w8pta2G',  11),
  52.       );
  53.     foreach($userData as $d) {
  54.         $this->addSql('INSERT INTO `user` (`id`,`user_name`, `email`, `roles`, `password`, `is_verified`, `is_active`) '
  55.             ' VALUES (?,?,?,?,?,?,?)'$d);
  56.     }
  57.     // INSERT INTO user
  58.     $userProfileData = array(
  59.         array(11'ADMIN''LTS'),
  60.       );
  61.     foreach($userProfileData as $d) {
  62.         $this->addSql('INSERT INTO `user_profile` (`id`, `user_id`, `first_name`, `last_name`) '
  63.             ' VALUES (?,?,?,?)'$d);
  64.     }
  65.     }
  66.     
  67.     public function down(Schema $schema): void
  68.     {
  69.       $this->addSql('DROP TABLE IF EXISTS `user_profile`;');
  70.       $this->addSql('DROP TABLE IF EXISTS `reset_password_request`;');
  71.       $this->addSql('DROP TABLE IF EXISTS `user`;');  
  72.     }
  73. }