<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
final class Version20251125140332 extends AbstractMigration
{
public function getDescription(): string
{
return 'Insert experience point levels data (1-100)';
}
public function up(Schema $schema): void
{
// Insert all experience point levels
$levels = [
[1, 15, 'BizApprentice'], [2, 50, 'BizApprentice'], [3, 115, 'BizApprentice'], [4, 205, 'BizApprentice'], [5, 325, 'BizApprentice'],
[6, 480, 'BizApprentice'], [7, 670, 'BizApprentice'], [8, 895, 'BizApprentice'], [9, 1155, 'BizApprentice'], [10, 1455, 'BizBuilder'],
[11, 1795, 'BizBuilder'], [12, 2175, 'BizBuilder'], [13, 2595, 'BizBuilder'], [14, 3060, 'BizBuilder'], [15, 3565, 'BizBuilder'],
[16, 4115, 'BizBuilder'], [17, 4710, 'BizBuilder'], [18, 5355, 'BizBuilder'], [19, 6045, 'BizBuilder'], [20, 6780, 'BizConnector'],
[21, 7565, 'BizConnector'], [22, 8400, 'BizConnector'], [23, 9285, 'BizConnector'], [24, 10220, 'BizConnector'], [25, 11205, 'BizConnector'],
[26, 12240, 'BizConnector'], [27, 13330, 'BizConnector'], [28, 14470, 'BizConnector'], [29, 15665, 'BizConnector'], [30, 16915, 'BizMentor'],
[31, 18220, 'BizMentor'], [32, 19580, 'BizMentor'], [33, 20995, 'BizMentor'], [34, 22465, 'BizMentor'], [35, 23990, 'BizMentor'],
[36, 25570, 'BizMentor'], [37, 27210, 'BizMentor'], [38, 28910, 'BizMentor'], [39, 30665, 'BizMentor'], [40, 32480, 'BizLeader'],
[41, 34355, 'BizLeader'], [42, 36290, 'BizLeader'], [43, 38285, 'BizLeader'], [44, 40340, 'BizLeader'], [45, 42455, 'BizLeader'],
[46, 44630, 'BizLeader'], [47, 46870, 'BizLeader'], [48, 49170, 'BizLeader'], [49, 51530, 'BizLeader'], [50, 53955, 'BizVisionary'],
[51, 56445, 'BizVisionary'], [52, 58995, 'BizVisionary'], [53, 61610, 'BizVisionary'], [54, 64290, 'BizVisionary'], [55, 67035, 'BizVisionary'],
[56, 69845, 'BizVisionary'], [57, 72720, 'BizVisionary'], [58, 75660, 'BizVisionary'], [59, 78665, 'BizVisionary'], [60, 81740, 'BizInnovator'],
[61, 84880, 'BizInnovator'], [62, 88090, 'BizInnovator'], [63, 91365, 'BizInnovator'], [64, 94710, 'BizInnovator'], [65, 98120, 'BizInnovator'],
[66, 101600, 'BizInnovator'], [67, 105150, 'BizInnovator'], [68, 108765, 'BizInnovator'], [69, 112450, 'BizInnovator'], [70, 116205, 'BizInfluencer'],
[71, 120030, 'BizInfluencer'], [72, 123925, 'BizInfluencer'], [73, 127890, 'BizInfluencer'], [74, 131925, 'BizInfluencer'], [75, 136035, 'BizInfluencer'],
[76, 140215, 'BizInfluencer'], [77, 144465, 'BizInfluencer'], [78, 148790, 'BizInfluencer'], [79, 153185, 'BizInfluencer'], [80, 157655, 'BizIcon'],
[81, 162195, 'BizIcon'], [82, 166810, 'BizIcon'], [83, 171495, 'BizIcon'], [84, 176255, 'BizIcon'], [85, 181090, 'BizIcon'],
[86, 186000, 'BizIcon'], [87, 190985, 'BizIcon'], [88, 196040, 'BizIcon'], [89, 201170, 'BizIcon'], [90, 206375, 'BizMaster'],
[91, 211660, 'BizMaster'], [92, 217020, 'BizMaster'], [93, 222455, 'BizMaster'], [94, 227965, 'BizMaster'], [95, 233550, 'BizMaster'],
[96, 239215, 'BizMaster'], [97, 244955, 'BizMaster'], [98, 250770, 'BizMaster'], [99, 256665, 'BizMaster'], [100, 262635, 'BizMaster'],
];
foreach ($levels as [$level, $xp, $badgeName]) {
$this->addSql("INSERT INTO mybiz_experience_point_level (level, xp, badge_name) VALUES ({$level}, {$xp}, '{$badgeName}')");
}
}
public function down(Schema $schema): void
{
// Remove all inserted levels
$this->addSql("DELETE FROM mybiz_experience_point_level WHERE level BETWEEN 1 AND 100");
}
}