inicio db tablas basicas prestamo

This commit is contained in:
Lemuel Marquez
2021-04-26 13:54:27 -05:00
parent 0156b25b32
commit e6b7b7d0b7
10 changed files with 391 additions and 5 deletions
+27
View File
@@ -0,0 +1,27 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
class Carrera extends Model {}
Carrera.init(
{
idCarrera: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
carrera: {
type: DataTypes.STRING(15),
allowNull: false,
},
},
{
sequelize,
modelName: 'Carrera',
tableName: 'carrera',
timestamps: false,
}
);
module.exports = Carrera;
+53
View File
@@ -0,0 +1,53 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
const TipoCarrito = require('./TipoCarrito');
const Modulo = require('./Modulo');
class Carrito extends Model {}
Carrito.init(
{
idCarrito: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
carrito: {
type: DataTypes.STRING(15),
allowNull: false,
},
sobrenombre: {
type: DataTypes.STRING(15),
allowNull: false,
},
activo: {
type: DataTypes.BOOLEAN,
allowNull: false,
},
},
{
sequelize,
modelName: 'Carrito',
tableName: 'carrito',
timestamps: false,
}
);
Carrito.belongsTo(TipoCarrito, {
foreignKey: {
name: 'idTipoCarrito',
type: DataTypes.INTEGER,
allowNull: false,
},
});
Carrito.belongsTo(Modulo, {
foreignKey: {
name: 'idModulo',
type: DataTypes.INTEGER,
allowNull: false,
},
});
module.exports = Carrito;
+67
View File
@@ -0,0 +1,67 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
const Carrito = require('./Carrito');
const Status = require('./Status');
const Programa = require('./Programa');
class Equipo extends Model {}
Equipo.init(
{
idEquipo: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
numeroSerie: {
type: DataTypes.STRING(15),
allowNull: false,
},
numeroInventario: {
type: DataTypes.STRING(15),
allowNull: false,
},
sobrenombre: {
type: DataTypes.STRING(15),
allowNull: false,
},
activo: {
type: DataTypes.BOOLEAN,
allowNull: false,
},
},
{
sequelize,
modelName: 'Equipo',
tableName: 'equipo',
// activar unicamente updateat
}
);
Equipo.belongsTo(Carrito, {
foreignKey: {
name: 'idCarrito',
type: DataTypes.INTEGER,
allowNull: false,
},
});
Equipo.belongsTo(Status, {
foreignKey: {
name: 'idStatus',
type: DataTypes.INTEGER,
allowNull: false,
},
});
Equipo.belongsTo(Programa, {
foreignKey: {
name: 'idPrograma',
type: DataTypes.INTEGER,
allowNull: true,
defaultValue: null,
},
});
module.exports = Equipo;
+27
View File
@@ -0,0 +1,27 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
class Modulo extends Model {}
Modulo.init(
{
idModulo: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
modulo: {
type: DataTypes.STRING(15),
allowNull: false,
},
},
{
sequelize,
modelName: 'Modulo',
tableName: 'modulo',
timestamps: false,
}
);
module.exports = Modulo;
+46
View File
@@ -0,0 +1,46 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
const TipoUsuario = require('./TipoUsuario');
class Operador extends Model {}
Operador.init(
{
idOperador: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
operador: {
type: DataTypes.STRING(100),
allowNull: false,
unique: true,
},
password: {
type: DataTypes.STRING(60),
allowNull: true,
defaultValue: null,
},
activo: {
type: DataTypes.BOOLEAN,
allowNull: false,
},
},
{
sequelize,
modelName: 'Operador',
tableName: 'operador',
timestamps: false,
}
);
Operador.belongsTo(TipoUsuario, {
foreignKey: {
name: 'idTipoUsuario',
type: DataTypes.INTEGER,
allowNull: false,
},
});
module.exports = Operador;
+74
View File
@@ -0,0 +1,74 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
const Operador = require('./Operador');
const Usuario = require('./Usuario');
const Equipo = require('./Equipo');
class Prestamo extends Model {}
Prestamo.init(
{
idPrestamo: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
horaInicio: {
type: DataTypes.DATE,
allowNull: false,
},
horaFin: {
type: DataTypes.DATE,
allowNull: false,
},
horaEntrega: {
type: DataTypes.DATE,
allowNull: false,
},
activo: {
type: DataTypes.BOOLEAN,
allowNull: false,
},
},
{
sequelize,
modelName: 'Prestamo',
tableName: 'Prestamo',
// activar createdat
}
);
Prestamo.belongsTo(Operador, {
foreignKey: {
name: 'idOperadorEntrega',
type: DataTypes.INTEGER,
allowNull: false,
},
});
Prestamo.belongsTo(Operador, {
foreignKey: {
name: 'idOperadorRegreso',
type: DataTypes.INTEGER,
allowNull: false,
},
});
Prestamo.belongsTo(Usuario, {
foreignKey: {
name: 'idUsuario',
type: DataTypes.INTEGER,
allowNull: false,
},
});
Prestamo.belongsTo(Equipo, {
foreignKey: {
name: 'idEquipo',
type: DataTypes.INTEGER,
allowNull: false,
},
});
module.exports = Prestamo;
+27
View File
@@ -0,0 +1,27 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
class Programa extends Model {}
Programa.init(
{
idPrograma: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
programa: {
type: DataTypes.STRING(15),
allowNull: false,
},
},
{
sequelize,
modelName: 'Programa',
tableName: 'programa',
timestamps: false,
}
);
module.exports = Programa;
+27
View File
@@ -0,0 +1,27 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
class Status extends Model {}
Status.init(
{
idStatus: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
status: {
type: DataTypes.STRING(15),
allowNull: false,
},
},
{
sequelize,
modelName: 'Status',
tableName: 'status',
timestamps: false,
}
);
module.exports = Status;
+27
View File
@@ -0,0 +1,27 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
class TipoCarrito extends Model {}
TipoCarrito.init(
{
idTipoCarrito: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
unique: true,
autoIncrement: true,
},
tipoCarrito: {
type: DataTypes.STRING(15),
allowNull: false,
},
},
{
sequelize,
modelName: 'TipoCarrito',
tableName: 'tipo_carrito',
timestamps: false,
}
);
module.exports = TipoCarrito;
+16 -5
View File
@@ -1,6 +1,7 @@
const { DataTypes, Model } = require('sequelize');
const sequelize = require('../../config/sequelize.conf');
const TipoUsuario = require('./TipoUsuario');
const Carrera = require('./Carrera');
class Usuario extends Model {}
Usuario.init(
@@ -19,15 +20,17 @@ Usuario.init(
},
password: {
type: DataTypes.STRING(60),
allowNull: true,
defaultValue: null,
allowNull: false,
},
nombre: {
type: DataTypes.STRING(70),
allowNull: true,
defaultValue: null,
allowNull: false,
},
activo: {
telefono: {
type: DataTypes.STRING(70),
allowNull: false,
},
multa: {
type: DataTypes.BOOLEAN,
allowNull: false,
},
@@ -48,4 +51,12 @@ Usuario.belongsTo(TipoUsuario, {
},
});
Usuario.belongsTo(Carrera, {
foreignKey: {
name: 'idCarrera',
type: DataTypes.INTEGER,
allowNull: false,
},
});
module.exports = Usuario;