Skip to content

Commit 68089aa

Browse files
committed
1 parent 8991850 commit 68089aa

6 files changed

+193
-6
lines changed

scripts/db/migrations/06_create-organizationSkillsProvider.js

-3
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@ module.exports = {
1111
type: DataTypes.UUID,
1212
defaultValue: DataTypes.UUIDV4
1313
},
14-
skillProviderId: {
15-
type: DataTypes.UUID
16-
},
1714
createdBy: {
1815
type: DataTypes.STRING
1916
},
+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
const { DataTypes } = require('sequelize')
2+
3+
module.exports = {
4+
up: async (query) => {
5+
await query.createTable('Skills', {
6+
id: {
7+
primaryKey: true,
8+
type: DataTypes.UUID,
9+
defaultValue: DataTypes.UUIDV4
10+
},
11+
createdBy: {
12+
type: DataTypes.STRING
13+
},
14+
updatedBy: {
15+
type: DataTypes.STRING
16+
},
17+
name: {
18+
type: DataTypes.STRING
19+
},
20+
externalId: {
21+
type: DataTypes.STRING
22+
},
23+
uri: {
24+
type: DataTypes.STRING
25+
},
26+
created: {
27+
type: DataTypes.DATE,
28+
allowNull: false
29+
},
30+
updated: {
31+
type: DataTypes.DATE
32+
}
33+
})
34+
},
35+
down: async (query) => {
36+
await query.dropTable('Skills')
37+
}
38+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
const { DataTypes } = require('sequelize')
2+
3+
module.exports = {
4+
up: async (query) => {
5+
await query.createTable('SkillsProviders', {
6+
id: {
7+
primaryKey: true,
8+
type: DataTypes.UUID,
9+
defaultValue: DataTypes.UUIDV4
10+
},
11+
createdBy: {
12+
type: DataTypes.STRING
13+
},
14+
updatedBy: {
15+
type: DataTypes.STRING
16+
},
17+
name: {
18+
type: DataTypes.STRING
19+
},
20+
created: {
21+
type: DataTypes.DATE,
22+
allowNull: false
23+
},
24+
updated: {
25+
type: DataTypes.DATE
26+
}
27+
})
28+
},
29+
down: async (query) => {
30+
await query.dropTable('SkillsProviders')
31+
}
32+
}

scripts/db/migrations/13_create-usersSkill.js

-3
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ module.exports = {
88
type: DataTypes.UUID,
99
defaultValue: DataTypes.UUIDV4
1010
},
11-
skillId: {
12-
type: DataTypes.UUID
13-
},
1411
createdBy: {
1512
type: DataTypes.STRING
1613
},

scripts/db/migrations/14_add-relationship.js

+27
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,22 @@ const { DataTypes } = require('sequelize')
22

33
module.exports = {
44
up: async (query) => {
5+
await query.addColumn('Skills', 'skillProviderId', {
6+
type: DataTypes.UUID,
7+
references: {
8+
model: 'SkillsProviders',
9+
key: 'id'
10+
},
11+
onUpdate: 'CASCADE'
12+
})
13+
await query.addColumn('OrganizationSkillsProviders', 'skillProviderId', {
14+
type: DataTypes.UUID,
15+
references: {
16+
model: 'SkillsProviders',
17+
key: 'id'
18+
},
19+
onUpdate: 'CASCADE'
20+
})
521
await query.addColumn('UsersSkills', 'userId', {
622
type: DataTypes.UUID,
723
references: {
@@ -72,6 +88,14 @@ module.exports = {
7288
onUpdate: 'CASCADE',
7389
onDelete: 'CASCADE'
7490
})
91+
await query.addColumn('UsersSkills', 'skillId', {
92+
type: DataTypes.UUID,
93+
references: {
94+
model: 'Skills',
95+
key: 'id'
96+
},
97+
onUpdate: 'CASCADE'
98+
})
7599
await query.addColumn('UsersRoles', 'roleId', {
76100
type: DataTypes.UUID,
77101
references: {
@@ -106,6 +130,8 @@ module.exports = {
106130
})
107131
},
108132
down: async (query) => {
133+
await query.removeColumn('Skills', 'skillProviderId')
134+
await query.removeColumn('OrganizationSkillsProviders', 'skillProviderId')
109135
await query.removeColumn('UsersSkills', 'userId')
110136
await query.removeColumn('Achievements', 'userId')
111137
await query.removeColumn('UserAttributes', 'userId')
@@ -114,6 +140,7 @@ module.exports = {
114140
await query.removeColumn('ExternalProfiles', 'organizationId')
115141
await query.removeColumn('AttributeGroups', 'organizationId')
116142
await query.removeColumn('OrganizationSkillsProviders', 'organizationId')
143+
await query.removeColumn('UsersSkills', 'skillId')
117144
await query.removeColumn('UsersRoles', 'roleId')
118145
await query.removeColumn('Achievements', 'achievementsProviderId')
119146
await query.removeColumn('UserAttributes', 'attributeId')
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
const { DataTypes } = require('sequelize')
2+
3+
module.exports = {
4+
up: async (query) => {
5+
await query.removeColumn('UsersSkills', 'skillId')
6+
await query.removeColumn('OrganizationSkillsProviders', 'skillProviderId')
7+
await query.addColumn('OrganizationSkillsProviders', 'skillProviderId', {
8+
type: DataTypes.UUID
9+
})
10+
await query.addColumn('UsersSkills', 'skillId', {
11+
type: DataTypes.UUID
12+
})
13+
await query.dropTable('SkillsProviders')
14+
await query.dropTable('Skills')
15+
},
16+
down: async (query) => {
17+
await query.createTable('Skills', {
18+
id: {
19+
primaryKey: true,
20+
type: DataTypes.UUID,
21+
defaultValue: DataTypes.UUIDV4
22+
},
23+
createdBy: {
24+
type: DataTypes.STRING
25+
},
26+
updatedBy: {
27+
type: DataTypes.STRING
28+
},
29+
name: {
30+
type: DataTypes.STRING
31+
},
32+
externalId: {
33+
type: DataTypes.STRING
34+
},
35+
uri: {
36+
type: DataTypes.STRING
37+
},
38+
created: {
39+
type: DataTypes.DATE,
40+
allowNull: false
41+
},
42+
updated: {
43+
type: DataTypes.DATE
44+
}
45+
})
46+
await query.createTable('SkillsProviders', {
47+
id: {
48+
primaryKey: true,
49+
type: DataTypes.UUID,
50+
defaultValue: DataTypes.UUIDV4
51+
},
52+
createdBy: {
53+
type: DataTypes.STRING
54+
},
55+
updatedBy: {
56+
type: DataTypes.STRING
57+
},
58+
name: {
59+
type: DataTypes.STRING
60+
},
61+
created: {
62+
type: DataTypes.DATE,
63+
allowNull: false
64+
},
65+
updated: {
66+
type: DataTypes.DATE
67+
}
68+
})
69+
await query.removeColumn('UsersSkills', 'skillId')
70+
await query.removeColumn('OrganizationSkillsProviders', 'skillProviderId')
71+
await query.addColumn('Skills', 'skillProviderId', {
72+
type: DataTypes.UUID,
73+
references: {
74+
model: 'SkillsProviders',
75+
key: 'id'
76+
},
77+
onUpdate: 'CASCADE'
78+
})
79+
await query.addColumn('OrganizationSkillsProviders', 'skillProviderId', {
80+
type: DataTypes.UUID,
81+
references: {
82+
model: 'SkillsProviders',
83+
key: 'id'
84+
},
85+
onUpdate: 'CASCADE'
86+
})
87+
await query.addColumn('UsersSkills', 'skillId', {
88+
type: DataTypes.UUID,
89+
references: {
90+
model: 'Skills',
91+
key: 'id'
92+
},
93+
onUpdate: 'CASCADE'
94+
})
95+
}
96+
}

0 commit comments

Comments
 (0)