UNPKG

synt_backend

Version:

Synt light-weight node backend service

68 lines (65 loc) 1.53 kB
"use strict"; module.exports = { up: async (queryInterface, Sequelize) => { await queryInterface.createTable("LotPhaseUser", { id: { allowNull: false, autoIncrement: true, primaryKey: true, type: Sequelize.INTEGER, }, LotPhaseId: { type: Sequelize.INTEGER, references: { model: "LotPhases", key: "id", }, allowNull: false, defaultValue: Sequelize.UUIDV4, onUpdate: "CASCADE", onDelete: "CASCADE", }, UserId: { type: Sequelize.INTEGER, references: { model: "Users", key: "id", }, allowNull: false, defaultValue: Sequelize.UUIDV4, onUpdate: "CASCADE", onDelete: "CASCADE", }, type: { type: Sequelize.ENUM( "owner", "bare_owner", "usufructuary", "viewer", "manager" ), allowNull: false, defaultValue: "viewer", }, is_commissioner: { type: Sequelize.BOOLEAN, defaultValue: false, }, createdAt: { allowNull: false, type: Sequelize.DATE, }, updatedAt: { allowNull: false, type: Sequelize.DATE, }, }); await queryInterface.addConstraint("LotPhaseUser", { fields: ["LotPhaseId", "UserId"], type: "unique", }); }, down: async (queryInterface) => { await queryInterface.dropTable("LotPhaseUser"); }, };