foreignkeys
This commit is contained in:
+158
@@ -0,0 +1,158 @@
|
||||
const colors = require('colors')
|
||||
const Carrito = require('./tables/Carrito')
|
||||
const Carrera = require('./tables/Carrera')
|
||||
const CarreraPlantel = require('./tables/CarreraPlantel')
|
||||
const Plantel = require('./tables/Plantel')
|
||||
const Equipo = require('./tables/Equipo')
|
||||
const Horario = require('./tables/Horario')
|
||||
const Mesa = require('./tables/Mesa')
|
||||
const Multa = require('./tables/Multa')
|
||||
const Operador = require('./tables/Operador')
|
||||
const Parte = require('./tables/Parte')
|
||||
const Prestamo = require('./tables/Prestamo')
|
||||
const Reporte = require('./tables/Reporte')
|
||||
const Salon = require('./tables/Salon')
|
||||
const Status = require('./tables/Status')
|
||||
const TipoCarrito = require('./tables/TipoCarrito')
|
||||
const TipoMulta = require('./tables/TipoMulta')
|
||||
const TipoOperador = require('./tables/TipoOperador')
|
||||
const TipoUsuario = require('./tables/TipoUsuario')
|
||||
const Usuario = require('./tables/Usuario')
|
||||
|
||||
const drop = async () => {
|
||||
console.log('\nPaso 1) Desinstalando la db.'.bold.blue)
|
||||
|
||||
await Multa.drop()
|
||||
console.log('La tabla Multa se desinstalo correctamente.'.magenta)
|
||||
|
||||
await TipoMulta.drop()
|
||||
console.log('La tabla TipoMulta se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Reporte.drop()
|
||||
console.log('La tabla Reporte se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Parte.drop()
|
||||
console.log('La tabla Parte se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Prestamo.drop()
|
||||
console.log('La tabla Prestamo se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Operador.drop()
|
||||
console.log('La tabla Operador se desinstalo correctamente.'.magenta)
|
||||
|
||||
await TipoOperador.drop()
|
||||
console.log('La tabla TipoOperador se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Equipo.drop()
|
||||
console.log('La tabla Equipo se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Carrito.drop()
|
||||
console.log('La tabla Carrito se desinstalo correctamente.'.magenta)
|
||||
|
||||
await TipoCarrito.drop()
|
||||
console.log('La tabla TipoCarrito se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Salon.drop()
|
||||
console.log('La tabla Salon se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Mesa.drop()
|
||||
console.log('La tabla Mesa se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Status.drop()
|
||||
console.log('La tabla Status se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Horario.drop()
|
||||
console.log('La tabla Horario se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Usuario.drop()
|
||||
console.log('La tabla Usuario se desinstalo correctamente.'.magenta)
|
||||
|
||||
await TipoUsuario.drop()
|
||||
console.log('La tabla TipoUsuario se desinstalo correctamente.'.magenta)
|
||||
|
||||
await CarreraPlantel.drop()
|
||||
console.log(
|
||||
'La tabla CarreraPlantel se desinstalo correctamente.'.magenta
|
||||
)
|
||||
|
||||
await Carrera.drop()
|
||||
console.log('La tabla Carrera se desinstalo correctamente.'.magenta)
|
||||
|
||||
await Plantel.drop()
|
||||
console.log('La tabla Plantel se desinstalo correctamente.'.magenta)
|
||||
}
|
||||
|
||||
const sync = async () => {
|
||||
console.log('\nPaso 2) Instalando la db'.bold.blue)
|
||||
|
||||
await Carrera.sync()
|
||||
console.log('La tabla Carrera se instalo correctamente.'.magenta)
|
||||
|
||||
await Plantel.sync()
|
||||
console.log('La tabla Plantel se instalo correctamente.'.magenta)
|
||||
|
||||
await CarreraPlantel.sync()
|
||||
console.log(
|
||||
'La tabla CarreraPlantel se instalo correctamente.'.magenta
|
||||
)
|
||||
|
||||
await TipoUsuario.sync()
|
||||
console.log('La tabla TipoUsuario se instalo correctamente.'.magenta)
|
||||
|
||||
await Usuario.sync()
|
||||
console.log('La tabla Usuario se instalo correctamente.'.magenta)
|
||||
|
||||
await Horario.sync()
|
||||
console.log('La tabla Horario se instalo correctamente.'.magenta)
|
||||
|
||||
await Status.sync()
|
||||
console.log('La tabla Status se instalo correctamente.'.magenta)
|
||||
|
||||
await Mesa.sync()
|
||||
console.log('La tabla Mesa se instalo correctamente.'.magenta)
|
||||
|
||||
await Salon.sync()
|
||||
console.log('La tabla Salon se instalo correctamente.'.magenta)
|
||||
|
||||
await TipoCarrito.sync()
|
||||
console.log('La tabla TipoCarrito se instalo correctamente.'.magenta)
|
||||
|
||||
await Carrito.sync()
|
||||
console.log('La tabla Carrito se instalo correctamente.'.magenta)
|
||||
|
||||
await Equipo.sync()
|
||||
console.log('La tabla Equipo se instalo correctamente.'.magenta)
|
||||
|
||||
await TipoOperador.sync()
|
||||
console.log('La tabla TipoOperador se instalo correctamente.'.magenta)
|
||||
|
||||
await Operador.sync()
|
||||
console.log('La tabla Operador se instalo correctamente.'.magenta)
|
||||
|
||||
await Prestamo.sync()
|
||||
console.log('La tabla Prestamo se instalo correctamente.'.magenta)
|
||||
|
||||
await Parte.sync()
|
||||
console.log('La tabla Parte se instalo correctamente.'.magenta)
|
||||
|
||||
await Reporte.sync()
|
||||
console.log('La tabla Reporte se instalo correctamente.'.magenta)
|
||||
|
||||
await TipoMulta.sync()
|
||||
console.log('La tabla TipoMulta se instalo correctamente.'.magenta)
|
||||
|
||||
await Multa.sync()
|
||||
console.log('La tabla Multa se instalo correctamente.'.magenta)
|
||||
}
|
||||
|
||||
const install = async () => {
|
||||
await drop()
|
||||
await sync()
|
||||
|
||||
console.log(
|
||||
'\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green
|
||||
)
|
||||
process.exit()
|
||||
}
|
||||
|
||||
install()
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
|
||||
class CatalogoCarrera extends Model {}
|
||||
CatalogoCarrera.init(
|
||||
class Carrera extends Model {}
|
||||
Carrera.init(
|
||||
{
|
||||
idCatalogoCarrera: {
|
||||
idCarrera: {
|
||||
type: DataTypes.INTEGER,
|
||||
primaryKey: true,
|
||||
allowNull: false,
|
||||
autoIncrement: true,
|
||||
unique: true,
|
||||
},
|
||||
carrera: {
|
||||
@@ -22,9 +21,10 @@ CatalogoCarrera.init(
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
modelName: 'CatalogoCarrera',
|
||||
tableName: 'catalogo_carrera',
|
||||
modelName: 'Carrera',
|
||||
tableName: '_carrera',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
module.exports = CatalogoCarrera
|
||||
module.exports = Carrera
|
||||
@@ -0,0 +1,41 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const Carrera = require('./Carrera')
|
||||
const Plantel = require('./Plantel')
|
||||
|
||||
class CarreraPlantel extends Model {}
|
||||
CarreraPlantel.init(
|
||||
{
|
||||
idCarreraPlantel: {
|
||||
type: DataTypes.INTEGER,
|
||||
primaryKey: true,
|
||||
allowNull: false,
|
||||
autoIncrement: true,
|
||||
unique: true,
|
||||
},
|
||||
idPlantel: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Plantel,
|
||||
key: 'idPlantel',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idCarrera: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Carrera,
|
||||
key: 'idCarrera',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
modelName: 'CarreraPlantel',
|
||||
tableName: '_carrera_plantel',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
module.exports = CarreraPlantel
|
||||
@@ -1,5 +1,6 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const TipoCarrito = require('./TipoCarrito')
|
||||
|
||||
class Carrito extends Model {}
|
||||
Carrito.init(
|
||||
@@ -19,6 +20,14 @@ Carrito.init(
|
||||
type: DataTypes.STRING(50),
|
||||
allowNull: false,
|
||||
},
|
||||
idTipoCarrito: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: TipoCarrito,
|
||||
key: 'idTipoCarrito',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
|
||||
class CatalogoCarreraPlantel extends Model {}
|
||||
CatalogoCarreraPlantel.init(
|
||||
{
|
||||
idCatalogoCarreraPlantel: {
|
||||
type: DataTypes.INTEGER,
|
||||
primaryKey: true,
|
||||
allowNull: false,
|
||||
autoIncrement: true,
|
||||
unique: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
modelName: 'CatalogoCarreraPlantel',
|
||||
tableName: 'catalogo_carrera_plantel',
|
||||
}
|
||||
)
|
||||
|
||||
module.exports = CatalogoCarreraPlantel
|
||||
@@ -1,5 +1,7 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const Carrito = require('./Carrito')
|
||||
const Status = require('./Status')
|
||||
|
||||
class Equipo extends Model {}
|
||||
Equipo.init(
|
||||
@@ -27,6 +29,22 @@ Equipo.init(
|
||||
type: DataTypes.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
idCarrito: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Carrito,
|
||||
key: 'idCarrito',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idStatus: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Status,
|
||||
key: 'idStatus',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
@@ -20,6 +20,7 @@ Horario.init(
|
||||
sequelize,
|
||||
modelName: 'Horario',
|
||||
tableName: 'horario',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const Status = require('./Status')
|
||||
|
||||
class Mesa extends Model {}
|
||||
Mesa.init(
|
||||
@@ -15,6 +16,18 @@ Mesa.init(
|
||||
type: DataTypes.STRING(50),
|
||||
allowNull: false,
|
||||
},
|
||||
activo: {
|
||||
type: DataTypes.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
idStatus: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Status,
|
||||
key: 'idStatus',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const TipoMulta = require('./TipoMulta')
|
||||
const Prestamo = require('./Prestamo')
|
||||
|
||||
class Multa extends Model {}
|
||||
Multa.init(
|
||||
{
|
||||
idMulta: {
|
||||
type: DataTypes.INTEGER,
|
||||
primaryKey: true,
|
||||
allowNull: false,
|
||||
autoIncrement: true,
|
||||
unique: true,
|
||||
},
|
||||
descripcion: {
|
||||
type: DataTypes.STRING(100),
|
||||
allowNull: false,
|
||||
},
|
||||
multa: {
|
||||
type: DataTypes.STRING(100),
|
||||
allowNull: false,
|
||||
},
|
||||
idTipoMulta: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: TipoMulta,
|
||||
key: 'idTipoMulta',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idPrestamo: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Prestamo,
|
||||
key: 'idPrestamo',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
modelName: 'Multa',
|
||||
tableName: 'multa',
|
||||
}
|
||||
)
|
||||
|
||||
module.exports = Multa
|
||||
@@ -1,5 +1,6 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const TipoOperador = require('./TipoOperador')
|
||||
|
||||
class Operador extends Model {}
|
||||
Operador.init(
|
||||
@@ -19,6 +20,14 @@ Operador.init(
|
||||
type: DataTypes.STRING(100),
|
||||
allowNull: false,
|
||||
},
|
||||
idTipoOperador: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: TipoOperador,
|
||||
key: 'idTipoOperador',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
@@ -20,6 +20,7 @@ Parte.init(
|
||||
sequelize,
|
||||
modelName: 'Parte',
|
||||
tableName: 'parte',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
|
||||
class CatalogoPlantel extends Model {}
|
||||
CatalogoPlantel.init(
|
||||
class Plantel extends Model {}
|
||||
Plantel.init(
|
||||
{
|
||||
idCatalogoPlantel: {
|
||||
idPlantel: {
|
||||
type: DataTypes.INTEGER,
|
||||
primaryKey: true,
|
||||
allowNull: false,
|
||||
autoIncrement: true,
|
||||
unique: true,
|
||||
},
|
||||
plantel: {
|
||||
@@ -18,9 +17,10 @@ CatalogoPlantel.init(
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
modelName: 'CatalogoPlantel',
|
||||
tableName: 'catalogo_plantel',
|
||||
modelName: 'Plantel',
|
||||
tableName: '_plantel',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
module.exports = CatalogoPlantel
|
||||
module.exports = Plantel
|
||||
@@ -1,5 +1,11 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const Usuario = require('./Usuario')
|
||||
const Operador = require('./Operador')
|
||||
const Equipo = require('./Equipo')
|
||||
const Horario = require('./Horario')
|
||||
const Mesa = require('./Mesa')
|
||||
const Salon = require('./Salon')
|
||||
|
||||
class Prestamo extends Model {}
|
||||
Prestamo.init(
|
||||
@@ -27,6 +33,59 @@ Prestamo.init(
|
||||
type: DataTypes.BOOLEAN,
|
||||
allowNull: false,
|
||||
},
|
||||
idUsuario: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Usuario,
|
||||
key: 'idUsuario',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idOperadorEntrega: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Operador,
|
||||
key: 'idOperador',
|
||||
},
|
||||
},
|
||||
idOperadorRegreso: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Operador,
|
||||
key: 'idOperador',
|
||||
},
|
||||
},
|
||||
idEquipo: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Equipo,
|
||||
key: 'idEquipo',
|
||||
},
|
||||
},
|
||||
idHorario: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Horario,
|
||||
key: 'idHorario',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idMesa: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Mesa,
|
||||
key: 'idMesa',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idSalon: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Salon,
|
||||
key: 'idSalon',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const Prestamo = require('./Prestamo')
|
||||
|
||||
class Reporte extends Model {}
|
||||
Reporte.init(
|
||||
@@ -15,6 +16,14 @@ Reporte.init(
|
||||
type: DataTypes.STRING(100),
|
||||
allowNull: false,
|
||||
},
|
||||
idPrestamo: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Prestamo,
|
||||
key: 'idPrestamo',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const Status = require('./Status')
|
||||
|
||||
class Salon extends Model {}
|
||||
Salon.init(
|
||||
@@ -15,11 +16,20 @@ Salon.init(
|
||||
type: DataTypes.STRING(50),
|
||||
allowNull: false,
|
||||
},
|
||||
idStatus: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: Status,
|
||||
key: 'idStatus',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
modelName: 'Salon',
|
||||
tableName: 'salon',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ Status.init(
|
||||
sequelize,
|
||||
modelName: 'Status',
|
||||
tableName: 'status',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ TipoCarrito.init(
|
||||
sequelize,
|
||||
modelName: 'TipoCarrito',
|
||||
tableName: 'tipo_carrito',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ TipoMulta.init(
|
||||
sequelize,
|
||||
modelName: 'TipoMulta',
|
||||
tableName: 'tipo_multa',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ TipoOperador.init(
|
||||
sequelize,
|
||||
modelName: 'TipoOperador',
|
||||
tableName: 'tipo_operador',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ TipoUsuario.init(
|
||||
sequelize,
|
||||
modelName: 'TipoUsuario',
|
||||
tableName: 'tipo_usuario',
|
||||
timestamps: false,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
const { DataTypes, Model } = require('sequelize')
|
||||
const sequelize = require('../../config/sequelize.conf')
|
||||
const CarreraPlantel = require('./CarreraPlantel')
|
||||
const TipoUsuario = require('./TipoUsuario')
|
||||
|
||||
class Usuario extends Model {}
|
||||
Usuario.init(
|
||||
@@ -46,6 +48,22 @@ Usuario.init(
|
||||
type: DataTypes.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
idCarreraPlantel: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: CarreraPlantel,
|
||||
key: 'idCarreraPlantel',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
idTipoUsuario: {
|
||||
type: DataTypes.INTEGER,
|
||||
references: {
|
||||
model: TipoUsuario,
|
||||
key: 'idTipoUsuario',
|
||||
},
|
||||
allowNull: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
|
||||
+2
-1
@@ -4,7 +4,8 @@
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"db:test": "node ./config/test"
|
||||
"db:test": "node ./config/test",
|
||||
"db:install": "node ./db/install"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
||||
Reference in New Issue
Block a user