Passed
Push — master ( 25c839...f8361b )
by Adrien
15:35 queued 10:52
created

Version20221110163059   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 641
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 1
eloc 92
c 1
b 0
f 0
dl 0
loc 641
ccs 0
cts 48
cp 0
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
B up() 0 639 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Application\Migration;
6
7
use Doctrine\DBAL\Schema\Schema;
8
use Doctrine\Migrations\AbstractMigration;
9
10
class Version20221110163059 extends AbstractMigration
11
{
12
    public function up(Schema $schema): void
13
    {
14
        $this->addSql('SET FOREIGN_KEY_CHECKS=0');
15
16
        $this->addSql(
17
            <<<SQL
18
                CREATE TABLE `account` (
19
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
20
                  `creator_id` INT(11) DEFAULT NULL,
21
                  `owner_id` INT(11) DEFAULT NULL,
22
                  `updater_id` INT(11) DEFAULT NULL,
23
                  `parent_id` INT(11) DEFAULT NULL,
24
                  `creation_date` DATETIME DEFAULT NULL,
25
                  `update_date` DATETIME DEFAULT NULL,
26
                  `balance` INT(11) NOT NULL DEFAULT 0 COMMENT '(DC2Type:Money)',
27
                  `type` ENUM('asset','liability','revenue','expense','equity','group') NOT NULL COMMENT '(DC2Type:AccountType)',
28
                  `code` INT(10) UNSIGNED NOT NULL,
29
                  `name` VARCHAR(191) NOT NULL,
30
                  `iban` VARCHAR(34) NOT NULL DEFAULT '',
31
                  `total_balance` INT(11) NOT NULL DEFAULT 0 COMMENT '(DC2Type:Money)',
32
                  PRIMARY KEY (`id`),
33
                  UNIQUE KEY `UNIQ_7D3656A477153098` (`code`),
34
                  UNIQUE KEY `UNIQ_7D3656A47E3C61F9` (`owner_id`),
35
                  KEY `IDX_7D3656A461220EA6` (`creator_id`),
36
                  KEY `IDX_7D3656A4E37ECFB0` (`updater_id`),
37
                  KEY `IDX_7D3656A4727ACA70` (`parent_id`),
38
                  KEY `creation_date` (`creation_date`),
39
                  KEY `update_date` (`update_date`),
40
                  CONSTRAINT `FK_7D3656A461220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
41
                  CONSTRAINT `FK_7D3656A4727ACA70` FOREIGN KEY (`parent_id`) REFERENCES `account` (`id`) ON DELETE CASCADE,
42
                  CONSTRAINT `FK_7D3656A47E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
43
                  CONSTRAINT `FK_7D3656A4E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
44
                  CONSTRAINT `CONSTRAINT_1` CHECK (`type` <> 'group' OR `balance` = 0)
45
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
46
                SQL
47
        );
48
49
        $this->addSql(
50
            <<<SQL
51
                CREATE TABLE `accounting_document` (
52
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
53
                  `creator_id` INT(11) DEFAULT NULL,
54
                  `owner_id` INT(11) DEFAULT NULL,
55
                  `updater_id` INT(11) DEFAULT NULL,
56
                  `expense_claim_id` INT(11) DEFAULT NULL,
57
                  `transaction_id` INT(11) DEFAULT NULL,
58
                  `creation_date` DATETIME DEFAULT NULL,
59
                  `update_date` DATETIME DEFAULT NULL,
60
                  `filename` VARCHAR(190) NOT NULL DEFAULT '',
61
                  `mime` VARCHAR(255) NOT NULL DEFAULT '',
62
                  PRIMARY KEY (`id`),
63
                  UNIQUE KEY `unique_name` (`filename`),
64
                  KEY `IDX_60EDA78461220EA6` (`creator_id`),
65
                  KEY `IDX_60EDA7847E3C61F9` (`owner_id`),
66
                  KEY `IDX_60EDA784E37ECFB0` (`updater_id`),
67
                  KEY `IDX_60EDA784B6F76666` (`expense_claim_id`),
68
                  KEY `IDX_60EDA7842FC0CB0F` (`transaction_id`),
69
                  KEY `creation_date` (`creation_date`),
70
                  KEY `update_date` (`update_date`),
71
                  CONSTRAINT `FK_60EDA7842FC0CB0F` FOREIGN KEY (`transaction_id`) REFERENCES `transaction` (`id`) ON DELETE CASCADE,
72
                  CONSTRAINT `FK_60EDA78461220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
73
                  CONSTRAINT `FK_60EDA7847E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
74
                  CONSTRAINT `FK_60EDA784B6F76666` FOREIGN KEY (`expense_claim_id`) REFERENCES `expense_claim` (`id`) ON DELETE CASCADE,
75
                  CONSTRAINT `FK_60EDA784E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
76
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
77
                SQL
78
        );
79
80
        $this->addSql(
81
            <<<SQL
82
                CREATE TABLE `bookable` (
83
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
84
                  `creator_id` INT(11) DEFAULT NULL,
85
                  `owner_id` INT(11) DEFAULT NULL,
86
                  `updater_id` INT(11) DEFAULT NULL,
87
                  `image_id` INT(11) DEFAULT NULL,
88
                  `credit_account_id` INT(11) DEFAULT NULL,
89
                  `creation_date` DATETIME DEFAULT NULL,
90
                  `update_date` DATETIME DEFAULT NULL,
91
                  `initial_price` INT(11) NOT NULL DEFAULT 0 COMMENT '(DC2Type:Money)',
92
                  `periodic_price` INT(11) NOT NULL DEFAULT 0 COMMENT '(DC2Type:Money)',
93
                  `purchase_price` INT(10) UNSIGNED DEFAULT NULL COMMENT '(DC2Type:Money)',
94
                  `simultaneous_booking_maximum` SMALLINT(6) NOT NULL DEFAULT -1,
95
                  `booking_type` ENUM('self_approved','application','admin_assigned','admin_approved','mandatory') NOT NULL DEFAULT 'admin_approved' COMMENT '(DC2Type:BookingType)',
96
                  `is_active` TINYINT(1) NOT NULL DEFAULT 1,
97
                  `state` ENUM('good','used','degraded') NOT NULL DEFAULT 'good' COMMENT '(DC2Type:BookableState)',
98
                  `verification_date` DATE DEFAULT NULL,
99
                  `name` VARCHAR(191) NOT NULL,
100
                  `description` TEXT NOT NULL,
101
                  `code` VARCHAR(10) DEFAULT NULL,
102
                  `remarks` TEXT NOT NULL,
103
                  PRIMARY KEY (`id`),
104
                  UNIQUE KEY `UNIQ_A10B81243DA5256D` (`image_id`),
105
                  UNIQUE KEY `UNIQ_A10B812477153098` (`code`),
106
                  KEY `IDX_A10B812461220EA6` (`creator_id`),
107
                  KEY `IDX_A10B81247E3C61F9` (`owner_id`),
108
                  KEY `IDX_A10B8124E37ECFB0` (`updater_id`),
109
                  KEY `IDX_A10B81246813E404` (`credit_account_id`),
110
                  KEY `creation_date` (`creation_date`),
111
                  KEY `update_date` (`update_date`),
112
                  CONSTRAINT `FK_A10B81243DA5256D` FOREIGN KEY (`image_id`) REFERENCES `image` (`id`),
113
                  CONSTRAINT `FK_A10B812461220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
114
                  CONSTRAINT `FK_A10B81246813E404` FOREIGN KEY (`credit_account_id`) REFERENCES `account` (`id`) ON DELETE CASCADE,
115
                  CONSTRAINT `FK_A10B81247E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
116
                  CONSTRAINT `FK_A10B8124E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
117
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
118
                SQL
119
        );
120
121
        $this->addSql(
122
            <<<SQL
123
                CREATE TABLE `bookable_metadata` (
124
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
125
                  `creator_id` INT(11) DEFAULT NULL,
126
                  `owner_id` INT(11) DEFAULT NULL,
127
                  `updater_id` INT(11) DEFAULT NULL,
128
                  `bookable_id` INT(11) NOT NULL,
129
                  `creation_date` DATETIME DEFAULT NULL,
130
                  `update_date` DATETIME DEFAULT NULL,
131
                  `value` VARCHAR(191) NOT NULL DEFAULT '',
132
                  `name` VARCHAR(191) NOT NULL,
133
                  PRIMARY KEY (`id`),
134
                  UNIQUE KEY `unique_name` (`name`,`bookable_id`),
135
                  KEY `IDX_F11FB12E61220EA6` (`creator_id`),
136
                  KEY `IDX_F11FB12E7E3C61F9` (`owner_id`),
137
                  KEY `IDX_F11FB12EE37ECFB0` (`updater_id`),
138
                  KEY `IDX_F11FB12EEC4F5B2F` (`bookable_id`),
139
                  KEY `creation_date` (`creation_date`),
140
                  KEY `update_date` (`update_date`),
141
                  CONSTRAINT `FK_F11FB12E61220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
142
                  CONSTRAINT `FK_F11FB12E7E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
143
                  CONSTRAINT `FK_F11FB12EE37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
144
                  CONSTRAINT `FK_F11FB12EEC4F5B2F` FOREIGN KEY (`bookable_id`) REFERENCES `bookable` (`id`) ON DELETE CASCADE
145
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
146
                SQL
147
        );
148
149
        $this->addSql(
150
            <<<SQL
151
                CREATE TABLE `bookable_tag` (
152
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
153
                  `creator_id` INT(11) DEFAULT NULL,
154
                  `owner_id` INT(11) DEFAULT NULL,
155
                  `updater_id` INT(11) DEFAULT NULL,
156
                  `creation_date` DATETIME DEFAULT NULL,
157
                  `update_date` DATETIME DEFAULT NULL,
158
                  `name` VARCHAR(191) NOT NULL,
159
                  `color` VARCHAR(7) NOT NULL DEFAULT '',
160
                  PRIMARY KEY (`id`),
161
                  UNIQUE KEY `unique_name` (`name`),
162
                  KEY `IDX_C360AD1261220EA6` (`creator_id`),
163
                  KEY `IDX_C360AD127E3C61F9` (`owner_id`),
164
                  KEY `IDX_C360AD12E37ECFB0` (`updater_id`),
165
                  KEY `creation_date` (`creation_date`),
166
                  KEY `update_date` (`update_date`),
167
                  CONSTRAINT `FK_C360AD1261220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
168
                  CONSTRAINT `FK_C360AD127E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
169
                  CONSTRAINT `FK_C360AD12E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
170
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
171
                SQL
172
        );
173
174
        $this->addSql(
175
            <<<SQL
176
                CREATE TABLE `bookable_tag_bookable` (
177
                  `bookable_tag_id` INT(11) NOT NULL,
178
                  `bookable_id` INT(11) NOT NULL,
179
                  PRIMARY KEY (`bookable_tag_id`,`bookable_id`),
180
                  KEY `IDX_207F7C112FF81111` (`bookable_tag_id`),
181
                  KEY `IDX_207F7C11EC4F5B2F` (`bookable_id`),
182
                  CONSTRAINT `FK_207F7C112FF81111` FOREIGN KEY (`bookable_tag_id`) REFERENCES `bookable_tag` (`id`) ON DELETE CASCADE,
183
                  CONSTRAINT `FK_207F7C11EC4F5B2F` FOREIGN KEY (`bookable_id`) REFERENCES `bookable` (`id`) ON DELETE CASCADE
184
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
185
                SQL
186
        );
187
188
        $this->addSql(
189
            <<<SQL
190
                CREATE TABLE `booking` (
191
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
192
                  `creator_id` INT(11) DEFAULT NULL,
193
                  `owner_id` INT(11) DEFAULT NULL,
194
                  `updater_id` INT(11) DEFAULT NULL,
195
                  `bookable_id` INT(11) DEFAULT NULL,
196
                  `creation_date` DATETIME DEFAULT NULL,
197
                  `update_date` DATETIME DEFAULT NULL,
198
                  `status` ENUM('application','booked','processed') NOT NULL DEFAULT 'application' COMMENT '(DC2Type:BookingStatus)',
199
                  `participant_count` INT(10) UNSIGNED NOT NULL DEFAULT 1,
200
                  `destination` VARCHAR(50) NOT NULL DEFAULT '',
201
                  `start_comment` TEXT NOT NULL,
202
                  `end_comment` TEXT NOT NULL,
203
                  `start_date` DATETIME NOT NULL,
204
                  `end_date` DATETIME DEFAULT NULL,
205
                  `estimated_end_date` VARCHAR(50) NOT NULL DEFAULT '',
206
                  `remarks` TEXT NOT NULL,
207
                  `internal_remarks` TEXT NOT NULL,
208
                  PRIMARY KEY (`id`),
209
                  KEY `IDX_E00CEDDE61220EA6` (`creator_id`),
210
                  KEY `IDX_E00CEDDE7E3C61F9` (`owner_id`),
211
                  KEY `IDX_E00CEDDEE37ECFB0` (`updater_id`),
212
                  KEY `IDX_E00CEDDEEC4F5B2F` (`bookable_id`),
213
                  KEY `creation_date` (`creation_date`),
214
                  KEY `update_date` (`update_date`),
215
                  CONSTRAINT `FK_E00CEDDE61220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
216
                  CONSTRAINT `FK_E00CEDDE7E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
217
                  CONSTRAINT `FK_E00CEDDEE37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
218
                  CONSTRAINT `FK_E00CEDDEEC4F5B2F` FOREIGN KEY (`bookable_id`) REFERENCES `bookable` (`id`) ON DELETE CASCADE
219
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
220
                SQL
221
        );
222
223
        $this->addSql(
224
            <<<SQL
225
                CREATE TABLE `configuration` (
226
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
227
                  `creator_id` INT(11) DEFAULT NULL,
228
                  `owner_id` INT(11) DEFAULT NULL,
229
                  `updater_id` INT(11) DEFAULT NULL,
230
                  `creation_date` DATETIME DEFAULT NULL,
231
                  `update_date` DATETIME DEFAULT NULL,
232
                  `key` VARCHAR(191) NOT NULL,
233
                  `value` LONGTEXT NOT NULL,
234
                  `description` TEXT NOT NULL,
235
                  PRIMARY KEY (`id`),
236
                  UNIQUE KEY `UNIQ_A5E2A5D74E645A7E` (`key`),
237
                  KEY `IDX_A5E2A5D761220EA6` (`creator_id`),
238
                  KEY `IDX_A5E2A5D77E3C61F9` (`owner_id`),
239
                  KEY `IDX_A5E2A5D7E37ECFB0` (`updater_id`),
240
                  KEY `creation_date` (`creation_date`),
241
                  KEY `update_date` (`update_date`),
242
                  CONSTRAINT `FK_A5E2A5D761220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
243
                  CONSTRAINT `FK_A5E2A5D77E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
244
                  CONSTRAINT `FK_A5E2A5D7E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
245
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
246
                SQL
247
        );
248
249
        $this->addSql(
250
            <<<SQL
251
                CREATE TABLE `country` (
252
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
253
                  `creator_id` INT(11) DEFAULT NULL,
254
                  `owner_id` INT(11) DEFAULT NULL,
255
                  `updater_id` INT(11) DEFAULT NULL,
256
                  `creation_date` DATETIME DEFAULT NULL,
257
                  `update_date` DATETIME DEFAULT NULL,
258
                  `code` VARCHAR(2) NOT NULL,
259
                  `name` VARCHAR(191) NOT NULL,
260
                  PRIMARY KEY (`id`),
261
                  UNIQUE KEY `UNIQ_5373C96677153098` (`code`),
262
                  KEY `IDX_5373C96661220EA6` (`creator_id`),
263
                  KEY `IDX_5373C9667E3C61F9` (`owner_id`),
264
                  KEY `IDX_5373C966E37ECFB0` (`updater_id`),
265
                  KEY `creation_date` (`creation_date`),
266
                  KEY `update_date` (`update_date`),
267
                  CONSTRAINT `FK_5373C96661220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
268
                  CONSTRAINT `FK_5373C9667E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
269
                  CONSTRAINT `FK_5373C966E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
270
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
271
                SQL
272
        );
273
274
        $this->addSql(
275
            <<<SQL
276
                CREATE TABLE `expense_claim` (
277
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
278
                  `creator_id` INT(11) DEFAULT NULL,
279
                  `owner_id` INT(11) NOT NULL,
280
                  `updater_id` INT(11) DEFAULT NULL,
281
                  `reviewer_id` INT(11) DEFAULT NULL,
282
                  `creation_date` DATETIME DEFAULT NULL,
283
                  `update_date` DATETIME DEFAULT NULL,
284
                  `amount` INT(10) UNSIGNED NOT NULL COMMENT '(DC2Type:Money)',
285
                  `status` ENUM('new','processing','processed','rejected') NOT NULL DEFAULT 'new' COMMENT '(DC2Type:ExpenseClaimStatus)',
286
                  `type` ENUM('expenseClaim','refund','invoice') NOT NULL DEFAULT 'expenseClaim' COMMENT '(DC2Type:ExpenseClaimType)',
287
                  `name` VARCHAR(191) NOT NULL,
288
                  `description` TEXT NOT NULL,
289
                  `remarks` TEXT NOT NULL,
290
                  `internal_remarks` TEXT NOT NULL,
291
                  `sector` VARCHAR(191) NOT NULL DEFAULT '',
292
                  PRIMARY KEY (`id`),
293
                  KEY `IDX_461791D61220EA6` (`creator_id`),
294
                  KEY `IDX_461791D7E3C61F9` (`owner_id`),
295
                  KEY `IDX_461791DE37ECFB0` (`updater_id`),
296
                  KEY `IDX_461791D70574616` (`reviewer_id`),
297
                  KEY `creation_date` (`creation_date`),
298
                  KEY `update_date` (`update_date`),
299
                  CONSTRAINT `FK_461791D61220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
300
                  CONSTRAINT `FK_461791D70574616` FOREIGN KEY (`reviewer_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
301
                  CONSTRAINT `FK_461791D7E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE CASCADE,
302
                  CONSTRAINT `FK_461791DE37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
303
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
304
                SQL
305
        );
306
307
        $this->addSql(
308
            <<<SQL
309
                CREATE TABLE `image` (
310
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
311
                  `creator_id` INT(11) DEFAULT NULL,
312
                  `owner_id` INT(11) DEFAULT NULL,
313
                  `updater_id` INT(11) DEFAULT NULL,
314
                  `creation_date` DATETIME DEFAULT NULL,
315
                  `update_date` DATETIME DEFAULT NULL,
316
                  `filename` VARCHAR(190) NOT NULL DEFAULT '',
317
                  `mime` VARCHAR(255) NOT NULL DEFAULT '',
318
                  `width` INT(11) NOT NULL,
319
                  `height` INT(11) NOT NULL,
320
                  PRIMARY KEY (`id`),
321
                  UNIQUE KEY `unique_name` (`filename`),
322
                  KEY `IDX_C53D045F61220EA6` (`creator_id`),
323
                  KEY `IDX_C53D045F7E3C61F9` (`owner_id`),
324
                  KEY `IDX_C53D045FE37ECFB0` (`updater_id`),
325
                  KEY `creation_date` (`creation_date`),
326
                  KEY `update_date` (`update_date`),
327
                  CONSTRAINT `FK_C53D045F61220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
328
                  CONSTRAINT `FK_C53D045F7E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
329
                  CONSTRAINT `FK_C53D045FE37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
330
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
331
                SQL
332
        );
333
334
        $this->addSql(
335
            <<<SQL
336
                CREATE TABLE `license` (
337
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
338
                  `creator_id` INT(11) DEFAULT NULL,
339
                  `owner_id` INT(11) DEFAULT NULL,
340
                  `updater_id` INT(11) DEFAULT NULL,
341
                  `creation_date` DATETIME DEFAULT NULL,
342
                  `update_date` DATETIME DEFAULT NULL,
343
                  `name` VARCHAR(191) NOT NULL,
344
                  PRIMARY KEY (`id`),
345
                  UNIQUE KEY `unique_name` (`name`),
346
                  KEY `IDX_5768F41961220EA6` (`creator_id`),
347
                  KEY `IDX_5768F4197E3C61F9` (`owner_id`),
348
                  KEY `IDX_5768F419E37ECFB0` (`updater_id`),
349
                  KEY `creation_date` (`creation_date`),
350
                  KEY `update_date` (`update_date`),
351
                  CONSTRAINT `FK_5768F41961220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
352
                  CONSTRAINT `FK_5768F4197E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
353
                  CONSTRAINT `FK_5768F419E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
354
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
355
                SQL
356
        );
357
358
        $this->addSql(
359
            <<<SQL
360
                CREATE TABLE `license_bookable` (
361
                  `license_id` INT(11) NOT NULL,
362
                  `bookable_id` INT(11) NOT NULL,
363
                  PRIMARY KEY (`license_id`,`bookable_id`),
364
                  KEY `IDX_5D5B1013460F904B` (`license_id`),
365
                  KEY `IDX_5D5B1013EC4F5B2F` (`bookable_id`),
366
                  CONSTRAINT `FK_5D5B1013460F904B` FOREIGN KEY (`license_id`) REFERENCES `license` (`id`) ON DELETE CASCADE,
367
                  CONSTRAINT `FK_5D5B1013EC4F5B2F` FOREIGN KEY (`bookable_id`) REFERENCES `bookable` (`id`) ON DELETE CASCADE
368
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
369
                SQL
370
        );
371
372
        $this->addSql(
373
            <<<SQL
374
                CREATE TABLE `license_user` (
375
                  `license_id` INT(11) NOT NULL,
376
                  `user_id` INT(11) NOT NULL,
377
                  PRIMARY KEY (`license_id`,`user_id`),
378
                  KEY `IDX_77C835A460F904B` (`license_id`),
379
                  KEY `IDX_77C835AA76ED395` (`user_id`),
380
                  CONSTRAINT `FK_77C835A460F904B` FOREIGN KEY (`license_id`) REFERENCES `license` (`id`) ON DELETE CASCADE,
381
                  CONSTRAINT `FK_77C835AA76ED395` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
382
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
383
                SQL
384
        );
385
386
        $this->addSql(
387
            <<<SQL
388
                CREATE TABLE `log` (
389
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
390
                  `creator_id` INT(11) DEFAULT NULL,
391
                  `owner_id` INT(11) DEFAULT NULL,
392
                  `updater_id` INT(11) DEFAULT NULL,
393
                  `creation_date` DATETIME DEFAULT NULL,
394
                  `update_date` DATETIME DEFAULT NULL,
395
                  `priority` SMALLINT(6) NOT NULL,
396
                  `message` VARCHAR(5000) NOT NULL,
397
                  `referer` VARCHAR(500) NOT NULL,
398
                  `request` VARCHAR(1000) NOT NULL,
399
                  `ip` VARCHAR(40) NOT NULL,
400
                  `extra` LONGTEXT NOT NULL DEFAULT '[]' COMMENT '(DC2Type:json)',
401
                  `url` VARCHAR(2000) NOT NULL DEFAULT '',
402
                  PRIMARY KEY (`id`),
403
                  KEY `IDX_8F3F68C561220EA6` (`creator_id`),
404
                  KEY `IDX_8F3F68C57E3C61F9` (`owner_id`),
405
                  KEY `IDX_8F3F68C5E37ECFB0` (`updater_id`),
406
                  KEY `message` (`message`(191)),
407
                  KEY `update_date` (`update_date`),
408
                  KEY `priority` (`priority`),
409
                  KEY `creation_date` (`creation_date`),
410
                  CONSTRAINT `FK_8F3F68C561220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
411
                  CONSTRAINT `FK_8F3F68C57E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
412
                  CONSTRAINT `FK_8F3F68C5E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
413
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
414
                SQL
415
        );
416
417
        $this->addSql(
418
            <<<SQL
419
                CREATE TABLE `message` (
420
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
421
                  `creator_id` INT(11) DEFAULT NULL,
422
                  `owner_id` INT(11) DEFAULT NULL,
423
                  `updater_id` INT(11) DEFAULT NULL,
424
                  `recipient_id` INT(11) DEFAULT NULL,
425
                  `creation_date` DATETIME DEFAULT NULL,
426
                  `update_date` DATETIME DEFAULT NULL,
427
                  `email` VARCHAR(191) NOT NULL,
428
                  `type` ENUM('register','unregister','reset_password','balance','leave_family','admin_leave_family') NOT NULL COMMENT '(DC2Type:MessageType)',
429
                  `date_sent` DATETIME DEFAULT NULL,
430
                  `subject` VARCHAR(255) NOT NULL DEFAULT '',
431
                  `body` TEXT NOT NULL,
432
                  PRIMARY KEY (`id`),
433
                  KEY `IDX_B6BD307F61220EA6` (`creator_id`),
434
                  KEY `IDX_B6BD307F7E3C61F9` (`owner_id`),
435
                  KEY `IDX_B6BD307FE37ECFB0` (`updater_id`),
436
                  KEY `IDX_B6BD307FE92F8F78` (`recipient_id`),
437
                  KEY `creation_date` (`creation_date`),
438
                  KEY `update_date` (`update_date`),
439
                  CONSTRAINT `FK_B6BD307F61220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
440
                  CONSTRAINT `FK_B6BD307F7E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
441
                  CONSTRAINT `FK_B6BD307FE37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
442
                  CONSTRAINT `FK_B6BD307FE92F8F78` FOREIGN KEY (`recipient_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
443
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
444
                SQL
445
        );
446
447
        $this->addSql(
448
            <<<SQL
449
                CREATE TABLE `transaction` (
450
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
451
                  `creator_id` INT(11) DEFAULT NULL,
452
                  `owner_id` INT(11) DEFAULT NULL,
453
                  `updater_id` INT(11) DEFAULT NULL,
454
                  `expense_claim_id` INT(11) DEFAULT NULL,
455
                  `creation_date` DATETIME DEFAULT NULL,
456
                  `update_date` DATETIME DEFAULT NULL,
457
                  `datatrans_ref` VARCHAR(18) NOT NULL DEFAULT '',
458
                  `name` VARCHAR(191) NOT NULL,
459
                  `remarks` TEXT NOT NULL,
460
                  `internal_remarks` TEXT NOT NULL,
461
                  `transaction_date` DATETIME NOT NULL,
462
                  `balance` INT(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '(DC2Type:Money)',
463
                  PRIMARY KEY (`id`),
464
                  KEY `IDX_723705D161220EA6` (`creator_id`),
465
                  KEY `IDX_723705D17E3C61F9` (`owner_id`),
466
                  KEY `IDX_723705D1E37ECFB0` (`updater_id`),
467
                  KEY `IDX_723705D1B6F76666` (`expense_claim_id`),
468
                  KEY `creation_date` (`creation_date`),
469
                  KEY `update_date` (`update_date`),
470
                  CONSTRAINT `FK_723705D161220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
471
                  CONSTRAINT `FK_723705D17E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
472
                  CONSTRAINT `FK_723705D1B6F76666` FOREIGN KEY (`expense_claim_id`) REFERENCES `expense_claim` (`id`) ON DELETE SET NULL,
473
                  CONSTRAINT `FK_723705D1E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
474
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
475
                SQL
476
        );
477
478
        $this->addSql(
479
            <<<SQL
480
                CREATE TABLE `transaction_line` (
481
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
482
                  `creator_id` INT(11) DEFAULT NULL,
483
                  `owner_id` INT(11) DEFAULT NULL,
484
                  `updater_id` INT(11) DEFAULT NULL,
485
                  `transaction_id` INT(11) NOT NULL,
486
                  `debit_id` INT(11) DEFAULT NULL,
487
                  `credit_id` INT(11) DEFAULT NULL,
488
                  `bookable_id` INT(11) DEFAULT NULL,
489
                  `transaction_tag_id` INT(11) DEFAULT NULL,
490
                  `creation_date` DATETIME DEFAULT NULL,
491
                  `update_date` DATETIME DEFAULT NULL,
492
                  `balance` INT(10) UNSIGNED NOT NULL COMMENT '(DC2Type:Money)',
493
                  `is_reconciled` TINYINT(1) NOT NULL DEFAULT 0,
494
                  `name` VARCHAR(191) NOT NULL,
495
                  `remarks` TEXT NOT NULL,
496
                  `transaction_date` DATETIME NOT NULL,
497
                  `imported_id` VARCHAR(35) DEFAULT NULL,
498
                  PRIMARY KEY (`id`),
499
                  UNIQUE KEY `unique_import` (`transaction_date`,`imported_id`),
500
                  KEY `IDX_33578A5761220EA6` (`creator_id`),
501
                  KEY `IDX_33578A577E3C61F9` (`owner_id`),
502
                  KEY `IDX_33578A57E37ECFB0` (`updater_id`),
503
                  KEY `IDX_33578A572FC0CB0F` (`transaction_id`),
504
                  KEY `IDX_33578A57444E82EE` (`debit_id`),
505
                  KEY `IDX_33578A57CE062FF9` (`credit_id`),
506
                  KEY `IDX_33578A57EC4F5B2F` (`bookable_id`),
507
                  KEY `IDX_33578A57CCAF1151` (`transaction_tag_id`),
508
                  KEY `creation_date` (`creation_date`),
509
                  KEY `update_date` (`update_date`),
510
                  CONSTRAINT `FK_33578A572FC0CB0F` FOREIGN KEY (`transaction_id`) REFERENCES `transaction` (`id`),
511
                  CONSTRAINT `FK_33578A57444E82EE` FOREIGN KEY (`debit_id`) REFERENCES `account` (`id`),
512
                  CONSTRAINT `FK_33578A5761220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
513
                  CONSTRAINT `FK_33578A577E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
514
                  CONSTRAINT `FK_33578A57CCAF1151` FOREIGN KEY (`transaction_tag_id`) REFERENCES `transaction_tag` (`id`) ON DELETE SET NULL,
515
                  CONSTRAINT `FK_33578A57CE062FF9` FOREIGN KEY (`credit_id`) REFERENCES `account` (`id`),
516
                  CONSTRAINT `FK_33578A57E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
517
                  CONSTRAINT `FK_33578A57EC4F5B2F` FOREIGN KEY (`bookable_id`) REFERENCES `bookable` (`id`) ON DELETE SET NULL
518
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
519
                SQL
520
        );
521
522
        $this->addSql(
523
            <<<SQL
524
                CREATE TABLE `transaction_tag` (
525
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
526
                  `creator_id` INT(11) DEFAULT NULL,
527
                  `owner_id` INT(11) DEFAULT NULL,
528
                  `updater_id` INT(11) DEFAULT NULL,
529
                  `creation_date` DATETIME DEFAULT NULL,
530
                  `update_date` DATETIME DEFAULT NULL,
531
                  `name` VARCHAR(191) NOT NULL,
532
                  `color` VARCHAR(7) NOT NULL DEFAULT '',
533
                  PRIMARY KEY (`id`),
534
                  KEY `IDX_F8CD024A61220EA6` (`creator_id`),
535
                  KEY `IDX_F8CD024A7E3C61F9` (`owner_id`),
536
                  KEY `IDX_F8CD024AE37ECFB0` (`updater_id`),
537
                  KEY `creation_date` (`creation_date`),
538
                  KEY `update_date` (`update_date`),
539
                  CONSTRAINT `FK_F8CD024A61220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
540
                  CONSTRAINT `FK_F8CD024A7E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
541
                  CONSTRAINT `FK_F8CD024AE37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
542
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
543
                SQL
544
        );
545
546
        $this->addSql(
547
            <<<SQL
548
                CREATE TABLE `user` (
549
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
550
                  `creator_id` INT(11) DEFAULT NULL,
551
                  `owner_id` INT(11) DEFAULT NULL,
552
                  `updater_id` INT(11) DEFAULT NULL,
553
                  `country_id` INT(11) DEFAULT NULL,
554
                  `creation_date` DATETIME DEFAULT NULL,
555
                  `update_date` DATETIME DEFAULT NULL,
556
                  `login` VARCHAR(50) DEFAULT NULL,
557
                  `first_name` VARCHAR(191) NOT NULL,
558
                  `last_name` VARCHAR(191) NOT NULL,
559
                  `password` VARCHAR(255) NOT NULL,
560
                  `email` VARCHAR(191) DEFAULT NULL,
561
                  `role` ENUM('booking_only','individual','accounting_verificator','member','formation_responsible','trainer','responsible','administrator') NOT NULL DEFAULT 'individual' COMMENT '(DC2Type:UserRole)',
562
                  `status` ENUM('inactive','active','new','archived') NOT NULL DEFAULT 'new' COMMENT '(DC2Type:UserStatus)',
563
                  `welcome_session_date` DATETIME DEFAULT NULL,
564
                  `resign_date` DATETIME DEFAULT NULL,
565
                  `sex` SMALLINT(6) NOT NULL DEFAULT 0,
566
                  `phone` VARCHAR(25) NOT NULL DEFAULT '',
567
                  `mobile_phone` VARCHAR(25) NOT NULL DEFAULT '',
568
                  `swiss_sailing` VARCHAR(25) NOT NULL DEFAULT '',
569
                  `swiss_sailing_type` ENUM('active','passive','junior') DEFAULT NULL COMMENT '(DC2Type:SwissSailingType)',
570
                  `swiss_windsurf_type` ENUM('active','passive') DEFAULT NULL COMMENT '(DC2Type:SwissWindsurfType)',
571
                  `birthday` DATE DEFAULT NULL,
572
                  `terms_agreement` TINYINT(1) NOT NULL DEFAULT 0,
573
                  `has_insurance` TINYINT(1) NOT NULL DEFAULT 0,
574
                  `receives_newsletter` TINYINT(1) NOT NULL DEFAULT 0,
575
                  `family_relationship` ENUM('householder','partner','child','parent','sister','brother') NOT NULL DEFAULT 'householder' COMMENT '(DC2Type:Relationship)',
576
                  `billing_type` ENUM('electronic','paper') NOT NULL DEFAULT 'electronic' COMMENT '(DC2Type:BillingType)',
577
                  `token` VARCHAR(32) DEFAULT NULL,
578
                  `token_creation_date` DATETIME DEFAULT NULL,
579
                  `door1` TINYINT(1) NOT NULL DEFAULT 1,
580
                  `door2` TINYINT(1) NOT NULL DEFAULT 1,
581
                  `door3` TINYINT(1) NOT NULL DEFAULT 1,
582
                  `door4` TINYINT(1) NOT NULL DEFAULT 0,
583
                  `remarks` TEXT NOT NULL,
584
                  `internal_remarks` TEXT NOT NULL,
585
                  `street` VARCHAR(255) NOT NULL,
586
                  `postcode` VARCHAR(20) NOT NULL,
587
                  `locality` VARCHAR(255) NOT NULL,
588
                  `iban` VARCHAR(34) NOT NULL DEFAULT '',
589
                  `first_login` DATETIME DEFAULT NULL,
590
                  `last_login` DATETIME DEFAULT NULL,
591
                  PRIMARY KEY (`id`),
592
                  UNIQUE KEY `UNIQ_8D93D649AA08CB10` (`login`),
593
                  UNIQUE KEY `UNIQ_8D93D649E7927C74` (`email`),
594
                  UNIQUE KEY `UNIQ_8D93D6495F37A13B` (`token`),
595
                  KEY `IDX_8D93D64961220EA6` (`creator_id`),
596
                  KEY `IDX_8D93D6497E3C61F9` (`owner_id`),
597
                  KEY `IDX_8D93D649E37ECFB0` (`updater_id`),
598
                  KEY `IDX_8D93D649F92F3E70` (`country_id`),
599
                  KEY `creation_date` (`creation_date`),
600
                  KEY `update_date` (`update_date`),
601
                  CONSTRAINT `FK_8D93D64961220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
602
                  CONSTRAINT `FK_8D93D6497E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
603
                  CONSTRAINT `FK_8D93D649E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
604
                  CONSTRAINT `FK_8D93D649F92F3E70` FOREIGN KEY (`country_id`) REFERENCES `country` (`id`) ON DELETE SET NULL
605
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
606
                SQL
607
        );
608
609
        $this->addSql(
610
            <<<SQL
611
                CREATE TABLE `user_tag` (
612
                  `id` INT(11) NOT NULL AUTO_INCREMENT,
613
                  `creator_id` INT(11) DEFAULT NULL,
614
                  `owner_id` INT(11) DEFAULT NULL,
615
                  `updater_id` INT(11) DEFAULT NULL,
616
                  `creation_date` DATETIME DEFAULT NULL,
617
                  `update_date` DATETIME DEFAULT NULL,
618
                  `name` VARCHAR(191) NOT NULL,
619
                  `color` VARCHAR(7) NOT NULL DEFAULT '',
620
                  PRIMARY KEY (`id`),
621
                  UNIQUE KEY `unique_name` (`name`),
622
                  KEY `IDX_E89FD60861220EA6` (`creator_id`),
623
                  KEY `IDX_E89FD6087E3C61F9` (`owner_id`),
624
                  KEY `IDX_E89FD608E37ECFB0` (`updater_id`),
625
                  KEY `creation_date` (`creation_date`),
626
                  KEY `update_date` (`update_date`),
627
                  CONSTRAINT `FK_E89FD60861220EA6` FOREIGN KEY (`creator_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
628
                  CONSTRAINT `FK_E89FD6087E3C61F9` FOREIGN KEY (`owner_id`) REFERENCES `user` (`id`) ON DELETE SET NULL,
629
                  CONSTRAINT `FK_E89FD608E37ECFB0` FOREIGN KEY (`updater_id`) REFERENCES `user` (`id`) ON DELETE SET NULL
630
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
631
                SQL
632
        );
633
634
        $this->addSql(
635
            <<<SQL
636
                CREATE TABLE `user_tag_user` (
637
                  `user_tag_id` INT(11) NOT NULL,
638
                  `user_id` INT(11) NOT NULL,
639
                  PRIMARY KEY (`user_tag_id`,`user_id`),
640
                  KEY `IDX_83118DFFDF80782C` (`user_tag_id`),
641
                  KEY `IDX_83118DFFA76ED395` (`user_id`),
642
                  CONSTRAINT `FK_83118DFFA76ED395` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE,
643
                  CONSTRAINT `FK_83118DFFDF80782C` FOREIGN KEY (`user_tag_id`) REFERENCES `user_tag` (`id`) ON DELETE CASCADE
644
                ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
645
                SQL
646
        );
647
648
        $this->addSql('SET FOREIGN_KEY_CHECKS=1');
649
650
        $this->addSql('INSERT INTO country (id, code, name) VALUES
651
(1, "CH", "Suisse"),
652
(2, "FR", "France"),
653
(3, "AU", "Australie"),
654
(4, "AT", "Autriche"),
655
(5, "BE", "Belgique"),
656
(6, "CA", "Canada"),
657
(7, "CZ", "République tchèque"),
658
(8, "DK", "Danemark"),
659
(9, "FI", "Finlande"),
660
(10, "DE", "Allemagne"),
661
(11, "GR", "Grèce"),
662
(12, "HU", "Hongrie"),
663
(13, "IS", "Islande"),
664
(14, "IE", "Irlande"),
665
(15, "IT", "Italie"),
666
(16, "JP", "Japon"),
667
(17, "LU", "Luxembourg"),
668
(18, "MX", "Mexique"),
669
(19, "NL", "Pays-Bas"),
670
(20, "NZ", "Nouvelle-Zélande"),
671
(21, "NO", "Norvège"),
672
(22, "PL", "Pologne"),
673
(23, "PT", "Portugal"),
674
(24, "SK", "Slovaquie"),
675
(25, "KR", "Corée du Sud"),
676
(26, "ES", "Espagne"),
677
(27, "SE", "Suède"),
678
(28, "TR", "Turquie"),
679
(29, "GB", "Angleterre"),
680
(30, "US", "États-Unis"),
681
(31, "AX", "Îles Åland"),
682
(32, "AF", "Afghanistan"),
683
(33, "AL", "Albanie"),
684
(34, "DZ", "Algérie"),
685
(35, "AS", "Samoa américaines"),
686
(36, "AD", "Andorre"),
687
(37, "AO", "Angola"),
688
(38, "AI", "Anguilla"),
689
(39, "AQ", "Antarctique"),
690
(40, "AG", "Antigua et Barbuda"),
691
(41, "AR", "Argentine"),
692
(42, "AM", "Arménie"),
693
(43, "AW", "Aruba"),
694
(44, "AZ", "Azerbaïdjan"),
695
(45, "BS", "Bahamas"),
696
(46, "BH", "Bahreïn"),
697
(47, "BD", "Bangladesh"),
698
(48, "BB", "Barbade"),
699
(49, "BY", "Biélorussie"),
700
(50, "BZ", "Belize"),
701
(51, "BJ", "Bénin"),
702
(52, "BM", "Bermudes"),
703
(53, "BT", "Bhutan"),
704
(54, "BO", "Bolivie"),
705
(55, "BQ", "Bonaire, Saint-Eustache et Saba"),
706
(56, "BA", "Bosnie-Herzégovine"),
707
(57, "BW", "Botswana"),
708
(58, "BV", "Île Bouvet"),
709
(59, "BR", "Brésil"),
710
(60, "IO", "Territoire britannique de l\'océan Indien"),
711
(61, "VG", "Îles Vierges"),
712
(62, "BN", "Brunéi Darussalam"),
713
(63, "BG", "Bulgarie"),
714
(64, "BF", "Burkina Faso"),
715
(65, "BI", "Burundi"),
716
(66, "KH", "Cambodge"),
717
(67, "CM", "Cameroun"),
718
(68, "CV", "Cap-Vert"),
719
(69, "KY", "Îles Caïmans"),
720
(70, "CF", "Centrafrique"),
721
(71, "TD", "Tchad"),
722
(72, "CL", "Chili"),
723
(73, "CN", "Chine"),
724
(74, "CX", "Île Christmas"),
725
(75, "CC", "Îles Cocos"),
726
(76, "CO", "Colombie"),
727
(77, "KM", "Comores"),
728
(78, "CK", "Îles Cook"),
729
(79, "CR", "Costa Rica"),
730
(80, "HR", "Croatie"),
731
(81, "CU", "Cuba"),
732
(82, "CW", "Curaçao"),
733
(83, "CY", "Chypre"),
734
(84, "CD", "République démocratique du Congo"),
735
(85, "DJ", "Djibouti"),
736
(86, "DM", "Dominique"),
737
(87, "DO", "République Dominicaine"),
738
(88, "TL", "Timor Oriental"),
739
(89, "EC", "Équateur"),
740
(90, "EG", "Égypte"),
741
(91, "SV", "Salvador"),
742
(92, "GQ", "Guinée équatoriale"),
743
(93, "ER", "Érythrée"),
744
(94, "EE", "Estonie"),
745
(95, "ET", "Éthiopie"),
746
(96, "FK", "Îles Malouines"),
747
(97, "FO", "Îles Féroé"),
748
(98, "FJ", "Fidji"),
749
(99, "GF", "Guyane"),
750
(100, "PF", "Polynésie Française"),
751
(101, "TF", "Terres australes françaises"),
752
(102, "GA", "Gabon"),
753
(103, "GM", "Gambie"),
754
(104, "GE", "Géorgie"),
755
(105, "GH", "Ghana"),
756
(106, "GI", "Gibraltar"),
757
(107, "GL", "Groenland"),
758
(108, "GD", "Grenade"),
759
(109, "GP", "Guadeloupe"),
760
(110, "GU", "Guam"),
761
(111, "GT", "Guatemala"),
762
(112, "GG", "Guernesey"),
763
(113, "GN", "Guinée"),
764
(114, "GW", "Guinée-Bissau"),
765
(115, "GY", "Guyana"),
766
(116, "HT", "Haïti"),
767
(117, "HM", "Île Heard et îles McDonald"),
768
(118, "HN", "Honduras"),
769
(119, "HK", "Hong Kong"),
770
(120, "IN", "Inde"),
771
(121, "ID", "Indonésie"),
772
(122, "IR", "Iran"),
773
(123, "IQ", "Irak"),
774
(124, "IM", "Île de Man"),
775
(125, "IL", "Israël"),
776
(126, "CI", "Côte d\'Ivoire"),
777
(127, "JM", "Jamaïque"),
778
(128, "JE", "Jersey"),
779
(129, "JO", "Jordanie"),
780
(130, "KZ", "Kazakhstan"),
781
(131, "KE", "Kenya"),
782
(132, "KI", "Kiribati"),
783
(133, "XK", "Kosovo"),
784
(134, "KW", "Koweït"),
785
(135, "KG", "Kirghizistan"),
786
(136, "LA", "Laos"),
787
(137, "LV", "Lettonie"),
788
(138, "LB", "Liban"),
789
(139, "LS", "Lesotho"),
790
(140, "LR", "Liberia"),
791
(141, "LY", "Libye"),
792
(142, "LI", "Liechtenstein"),
793
(143, "LT", "Lituanie"),
794
(144, "MO", "Macao"),
795
(145, "MK", "Macédoine"),
796
(146, "MG", "Madagascar"),
797
(147, "MW", "Malawi"),
798
(148, "MY", "Malaisie"),
799
(149, "MV", "Maldives"),
800
(150, "ML", "Mali"),
801
(151, "MT", "Malte"),
802
(152, "MH", "Îles Marshall"),
803
(153, "MQ", "Martinique"),
804
(154, "MR", "Mauritanie"),
805
(155, "MU", "Maurice"),
806
(156, "YT", "Mayotte"),
807
(157, "FM", "Micronésie"),
808
(158, "MD", "Moldavie"),
809
(159, "MC", "Monaco"),
810
(160, "MN", "Mongolie"),
811
(161, "ME", "Monténégro"),
812
(162, "MS", "Montserrat"),
813
(163, "MA", "Maroc"),
814
(164, "MZ", "Mozambique"),
815
(165, "MM", "Myanmar"),
816
(166, "NA", "Namibie"),
817
(167, "NR", "Nauru"),
818
(168, "NP", "Népal"),
819
(169, "AN", "Antilles néerlandaises"),
820
(170, "NC", "Nouvelle-Calédonie"),
821
(171, "NI", "Nicaragua"),
822
(172, "NE", "Niger"),
823
(173, "NG", "Nigeria"),
824
(174, "NU", "Nioué"),
825
(175, "NF", "Île Norfolk"),
826
(176, "KP", "Corée du Nord"),
827
(177, "MP", "Îles Mariannes du Nord"),
828
(178, "OM", "Oman"),
829
(179, "PK", "Pakistan"),
830
(180, "PW", "Palaos"),
831
(181, "PS", "Territoire palestinien"),
832
(182, "PA", "Panama"),
833
(183, "PG", "Papouasie-Nouvelle Guinée"),
834
(184, "PY", "Paraguay"),
835
(185, "PE", "Pérou"),
836
(186, "PH", "Philippines"),
837
(187, "PN", "Pitcairn"),
838
(188, "PR", "Porto Rico"),
839
(189, "QA", "Qatar"),
840
(190, "RE", "Réunion"),
841
(191, "CG", "Congo-Brazzaville"),
842
(192, "RO", "Roumanie"),
843
(193, "RU", "Russie"),
844
(194, "RW", "Rwanda"),
845
(195, "ST", "São Tomé-et-Príncipe"),
846
(196, "BL", "Saint-Barthélémy"),
847
(197, "SH", "Sainte-Hélène"),
848
(198, "KN", "Saint-Christophe-et-Niévès"),
849
(199, "LC", "Sainte-Lucie"),
850
(200, "MF", "Saint-Martin"), 
851
(201, "PM", "Saint-Pierre et Miquelon"),
852
(202, "VC", "Saint-Vincent-et-les Grenadines"),
853
(203, "WS", "Samoa"),
854
(204, "SM", "Saint-Marin"),
855
(205, "SA", "Arabie saoudite"),
856
(206, "SN", "Sénégal"),
857
(207, "RS", "Serbie"),
858
(208, "SC", "Seychelles"),
859
(209, "SL", "Sierra Leone"),
860
(210, "SG", "Singapour"),
861
(211, "SX", "Saint-Martin"),
862
(212, "SI", "Slovénie"),
863
(213, "SB", "Îles Salomon"),
864
(214, "SO", "Somalie"),
865
(215, "ZA", "Afrique du Sud"),
866
(216, "GS", "Géorgie du Sud et les îles Sandwich du Sud"),
867
(217, "SS", "Sud-Soudan"),
868
(218, "LK", "Sri Lanka"),
869
(219, "SD", "Soudan"),
870
(220, "SR", "Surinam"),
871
(221, "SJ", "Svalbard et Île Jan Mayen"),
872
(222, "SZ", "Swaziland"),
873
(223, "SY", "Syrie"),
874
(224, "TW", "Taïwan"),
875
(225, "TJ", "Tadjikistan"),
876
(226, "TZ", "Tanzanie"),
877
(227, "TH", "Thaïlande"),
878
(228, "TG", "République Togolaise"),
879
(229, "TK", "Tokelau"),
880
(230, "TO", "Tonga"),
881
(231, "TT", "Trinidad et Tobago"),
882
(232, "TN", "Tunisie"),
883
(233, "TM", "Turkménistan"),
884
(234, "TC", "Îles Turques-et-Caïques"),
885
(235, "TV", "Tuvalu"),
886
(236, "UM", "Îles mineures éloignées des États-Unis"),
887
(237, "VI", "Îles Vierges des États-Unis"),
888
(238, "UG", "Ouganda"),
889
(239, "UA", "Ukraine"),
890
(240, "AE", "Émirats Arabes Unis"),
891
(241, "UY", "Uruguay"),
892
(242, "UZ", "Ouzbékistan"),
893
(243, "VU", "Vanuatu"),
894
(244, "VA", "Vatican"),
895
(245, "VE", "Vénézuéla"),
896
(246, "VN", "Vietnam"),
897
(247, "WF", "Wallis-et-Futuna"),
898
(248, "EH", "Sahara Occidental"),
899
(249, "YE", "Yémen"),
900
(250, "ZM", "Zambie"),
901
(251, "ZW", "Zimbabwe")
902
');
903
    }
904
}
905