Passed
Push — master ( d0c183...89bdb5 )
by Janko
13:17
created

Version20250623151936_RumpBaseValues::down()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 94
Code Lines 93

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 93
nc 1
nop 1
dl 0
loc 94
rs 8.1527
c 1
b 0
f 0

How to fix   Long Method   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
3
declare(strict_types=1);
4
5
namespace Stu\Migrations\Pgsql;
6
7
use Doctrine\DBAL\Schema\Schema;
8
use Doctrine\Migrations\AbstractMigration;
9
10
final class Version20250623151936_RumpBaseValues extends AbstractMigration
11
{
12
    public function getDescription(): string
13
    {
14
        return 'Extracted rump base values from rump entity.';
15
    }
16
17
    public function up(Schema $schema): void
18
    {
19
        $this->addSql(<<<'SQL'
20
            CREATE TABLE stu_rump_base_values (evade_chance SMALLINT NOT NULL, hit_chance SMALLINT NOT NULL, module_level SMALLINT NOT NULL, base_crew SMALLINT NOT NULL, base_eps SMALLINT NOT NULL, base_reactor SMALLINT NOT NULL, base_hull INT NOT NULL, base_shield INT NOT NULL, base_damage SMALLINT NOT NULL, base_sensor_range SMALLINT NOT NULL, base_warpdrive INT NOT NULL, special_slots INT NOT NULL, rump_id INT NOT NULL, PRIMARY KEY(rump_id))
21
        SQL);
22
        $this->addSql(<<<'SQL'
23
            INSERT INTO stu_rump_base_values 
24
            (rump_id, evade_chance, hit_chance, module_level, base_crew, base_eps, base_reactor, base_hull, base_shield,
25
                base_damage, base_sensor_range, base_warpdrive, special_slots)
26
            SELECT r.id, r.evade_chance, r.hit_chance, r.module_level, r.base_crew, r.base_eps, r.base_reactor, r.base_hull, r.base_shield,
27
                r.base_damage, r.base_sensor_range, r.base_warpdrive, r.special_slots
28
            FROM stu_rump r
29
        SQL);
30
        $this->addSql(<<<'SQL'
31
            ALTER TABLE stu_rump_base_values ADD CONSTRAINT FK_C47ECAED2EE98D4C FOREIGN KEY (rump_id) REFERENCES stu_rump (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE
32
        SQL);
33
        $this->addSql(<<<'SQL'
34
            ALTER TABLE stu_rump DROP evade_chance
35
        SQL);
36
        $this->addSql(<<<'SQL'
37
            ALTER TABLE stu_rump DROP hit_chance
38
        SQL);
39
        $this->addSql(<<<'SQL'
40
            ALTER TABLE stu_rump DROP module_level
41
        SQL);
42
        $this->addSql(<<<'SQL'
43
            ALTER TABLE stu_rump DROP base_crew
44
        SQL);
45
        $this->addSql(<<<'SQL'
46
            ALTER TABLE stu_rump DROP base_eps
47
        SQL);
48
        $this->addSql(<<<'SQL'
49
            ALTER TABLE stu_rump DROP base_reactor
50
        SQL);
51
        $this->addSql(<<<'SQL'
52
            ALTER TABLE stu_rump DROP base_hull
53
        SQL);
54
        $this->addSql(<<<'SQL'
55
            ALTER TABLE stu_rump DROP base_shield
56
        SQL);
57
        $this->addSql(<<<'SQL'
58
            ALTER TABLE stu_rump DROP base_damage
59
        SQL);
60
        $this->addSql(<<<'SQL'
61
            ALTER TABLE stu_rump DROP base_sensor_range
62
        SQL);
63
        $this->addSql(<<<'SQL'
64
            ALTER TABLE stu_rump DROP base_warpdrive
65
        SQL);
66
        $this->addSql(<<<'SQL'
67
            ALTER TABLE stu_rump DROP special_slots
68
        SQL);
69
        $this->addSql(<<<'SQL'
70
            ALTER INDEX rump_role_idx RENAME TO IDX_AD2CDF30D60322AC
71
        SQL);
72
        $this->addSql(<<<'SQL'
73
            ALTER INDEX rump_category_idx RENAME TO IDX_AD2CDF3012469DE2
74
        SQL);
75
    }
76
77
    public function down(Schema $schema): void
78
    {
79
        $this->addSql(<<<'SQL'
80
            ALTER TABLE stu_rump_base_values DROP CONSTRAINT FK_C47ECAED2EE98D4C
81
        SQL);
82
        $this->addSql(<<<'SQL'
83
            ALTER TABLE stu_rump ADD evade_chance SMALLINT DEFAULT NULL
84
        SQL);
85
        $this->addSql(<<<'SQL'
86
            ALTER TABLE stu_rump ADD hit_chance SMALLINT DEFAULT NULL
87
        SQL);
88
        $this->addSql(<<<'SQL'
89
            ALTER TABLE stu_rump ADD module_level SMALLINT DEFAULT NULL
90
        SQL);
91
        $this->addSql(<<<'SQL'
92
            ALTER TABLE stu_rump ADD base_crew SMALLINT DEFAULT NULL
93
        SQL);
94
        $this->addSql(<<<'SQL'
95
            ALTER TABLE stu_rump ADD base_eps SMALLINT DEFAULT NULL
96
        SQL);
97
        $this->addSql(<<<'SQL'
98
            ALTER TABLE stu_rump ADD base_reactor SMALLINT DEFAULT NULL
99
        SQL);
100
        $this->addSql(<<<'SQL'
101
            ALTER TABLE stu_rump ADD base_hull INT DEFAULT NULL
102
        SQL);
103
        $this->addSql(<<<'SQL'
104
            ALTER TABLE stu_rump ADD base_shield INT DEFAULT NULL
105
        SQL);
106
        $this->addSql(<<<'SQL'
107
            ALTER TABLE stu_rump ADD base_damage SMALLINT DEFAULT NULL
108
        SQL);
109
        $this->addSql(<<<'SQL'
110
            ALTER TABLE stu_rump ADD base_sensor_range SMALLINT DEFAULT NULL
111
        SQL);
112
        $this->addSql(<<<'SQL'
113
            ALTER TABLE stu_rump ADD base_warpdrive INT DEFAULT NULL
114
        SQL);
115
        $this->addSql(<<<'SQL'
116
            ALTER TABLE stu_rump ADD special_slots INT DEFAULT NULL
117
        SQL);
118
        $this->addSql(<<<'SQL'
119
            ALTER INDEX idx_ad2cdf30d60322ac RENAME TO rump_role_idx
120
        SQL);
121
        $this->addSql(<<<'SQL'
122
            ALTER INDEX idx_ad2cdf3012469de2 RENAME TO rump_category_idx
123
        SQL);
124
        $this->addSql(<<<'SQL'
125
            UPDATE stu_rump r
126
            SET evade_chance = rbv.evade_chance, hit_chance = rbv.hit_chance, module_level = rbv.module_level,
127
                base_crew = rbv.base_crew, base_eps = rbv.base_eps, base_reactor = rbv.base_reactor,
128
                base_hull = rbv.base_hull, base_shield = rbv.base_shield, base_damage = rbv.base_damage,
129
                base_sensor_range = rbv.base_sensor_range, base_warpdrive = rbv.base_warpdrive, special_slots = rbv.special_slots
130
            FROM stu_rump_base_values rbv
131
            WHERE r.id = rbv.rump_id
132
        SQL);
133
        $this->addSql(<<<'SQL'
134
            DROP TABLE stu_rump_base_values
135
        SQL);
136
137
        $this->addSql(<<<'SQL'
138
            ALTER TABLE stu_rump ALTER evade_chance SET NOT NULL
139
        SQL);
140
        $this->addSql(<<<'SQL'
141
            ALTER TABLE stu_rump ALTER hit_chance SET NOT NULL
142
        SQL);
143
        $this->addSql(<<<'SQL'
144
            ALTER TABLE stu_rump ALTER module_level SET NOT NULL
145
        SQL);
146
        $this->addSql(<<<'SQL'
147
            ALTER TABLE stu_rump ALTER base_crew SET NOT NULL
148
        SQL);
149
        $this->addSql(<<<'SQL'
150
            ALTER TABLE stu_rump ALTER base_eps SET NOT NULL
151
        SQL);
152
        $this->addSql(<<<'SQL'
153
            ALTER TABLE stu_rump ALTER base_reactor SET NOT NULL
154
        SQL);
155
        $this->addSql(<<<'SQL'
156
            ALTER TABLE stu_rump ALTER base_hull SET NOT NULL
157
        SQL);
158
        $this->addSql(<<<'SQL'
159
            ALTER TABLE stu_rump ALTER base_shield SET NOT NULL
160
        SQL);
161
        $this->addSql(<<<'SQL'
162
            ALTER TABLE stu_rump ALTER base_damage SET NOT NULL
163
        SQL);
164
        $this->addSql(<<<'SQL'
165
            ALTER TABLE stu_rump ALTER base_sensor_range SET NOT NULL
166
        SQL);
167
        $this->addSql(<<<'SQL'
168
            ALTER TABLE stu_rump ALTER base_warpdrive SET NOT NULL
169
        SQL);
170
        $this->addSql(<<<'SQL'
171
            ALTER TABLE stu_rump ALTER special_slots SET NOT NULL
172
        SQL);
173
    }
174
}
175