add migrations for new table, columns and modified column names

This commit is contained in:
Bilal Catic
2019-06-09 11:36:34 +02:00
parent 0a712bf501
commit c021b55c26
4 changed files with 103 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.sequelize.transaction((t) => {
return Promise.all([
queryInterface.renameColumn('bookingReservations', 'resource', 'resourceId'),
queryInterface.renameColumn('doorLockIncidents', 'resource', 'resourceId'),
]);
});
},
down: (queryInterface, Sequelize) => {
return queryInterface.sequelize.transaction((t) => {
return Promise.all([
queryInterface.renameColumn('doorLockIncidents', 'resourceId', 'resource'),
queryInterface.renameColumn('bookingReservations', 'resourceId', 'resource'),
]);
});
}
};

View File

@@ -0,0 +1,27 @@
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.sequelize.transaction((t) => {
return Promise.all([
queryInterface.addColumn('bookingReservations', 'timezone', {
type: Sequelize.TEXT,
after: 'end'
}),
queryInterface.addColumn('bookingReservations', 'canceled', {
type: Sequelize.BOOLEAN,
after: 'timezone'
})
]);
});
},
down: (queryInterface, Sequelize) => {
return queryInterface.sequelize.transaction((t) => {
return Promise.all([
queryInterface.removeColumn('bookingReservations', 'canceled'),
queryInterface.removeColumn('bookingReservations', 'timezone')
]);
});
}
};

View File

@@ -0,0 +1,41 @@
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.createTable('officeResourceMappings', {
id: {
allowNull: false,
autoIncrement: true,
primaryKey: true,
type: Sequelize.INTEGER
},
officeSlug: {
allowNull: false,
type: Sequelize.TEXT,
},
officeId: {
allowNull: false,
type: Sequelize.TEXT,
},
resourceSlug: {
allowNull: false,
type: Sequelize.TEXT,
},
resourceId: {
allowNull: false,
type: Sequelize.TEXT,
},
createdAt: {
allowNull: false,
type: Sequelize.DATE
},
updatedAt: {
allowNull: false,
type: Sequelize.DATE
}
});
},
down: (queryInterface, Sequelize) => {
return queryInterface.dropTable('officeResourceMappings');
}
};

View File

@@ -0,0 +1,14 @@
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.addColumn('doorLockEvents', 'resourceId', {
type: Sequelize.TEXT,
after: 'memberId',
});
},
down: (queryInterface, Sequelize) => {
return queryInterface.removeColumn('doorLockEvents', 'resourceId');
}
};