diff --git a/server/db/tablas/Admin.js b/server/db/tablas/Admin.js new file mode 100644 index 0000000..0edf5eb --- /dev/null +++ b/server/db/tablas/Admin.js @@ -0,0 +1,33 @@ +const { DataTypes, Model } = require('sequelize'); +const sequelize = require('../../config/sequelize.conf'); + +class Admin extends Model {} +Admin.init( + { + idAdmin: { + type: DataTypes.INTEGER, + primaryKey: true, + allowNull: false, + unique: true, + autoIncrement: true, + }, + usuario: { + type: DataTypes.STRING(60), + allowNull: false, + unique: true, + }, + password: { + type: DataTypes.STRING(60), + allowNull: false, + defaultValue: null, + }, + }, + { + sequelize, + modelName: 'Admin', + tableName: 'admin', + timestamps: false, + } +); + +module.exports = Admin; diff --git a/server/db/tablas/Area.js b/server/db/tablas/Area.js new file mode 100644 index 0000000..673615d --- /dev/null +++ b/server/db/tablas/Area.js @@ -0,0 +1,27 @@ +const { DataTypes, Model } = require('sequelize'); +const sequelize = require('../../config/sequelize.conf'); + +class Area extends Model {} +Area.init( + { + idArea: { + type: DataTypes.INTEGER, + primaryKey: true, + allowNull: false, + unique: true, + autoIncrement: true, + }, + area: { + type: DataTypes.STRING(15), + allowNull: false, + }, + }, + { + sequelize, + modelName: 'Area', + tableName: 'area', + timestamps: false, + } +); + +module.exports = Area; diff --git a/server/db/tablas/FechaInscripcion.js b/server/db/tablas/FechaInscripcion.js new file mode 100644 index 0000000..7ca7c8d --- /dev/null +++ b/server/db/tablas/FechaInscripcion.js @@ -0,0 +1,33 @@ +const { DataTypes, Model } = require('sequelize'); +const sequelize = require('../../config/sequelize.conf'); + +class FechaInscripcion extends Model {} +FechaInscripcion.init( + { + idFechaInscripcion: { + type: DataTypes.INTEGER, + primaryKey: true, + allowNull: false, + unique: true, + autoIncrement: true, + }, + fechaInicio: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: null, + }, + fechaFin: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: null, + }, + }, + { + sequelize, + modelName: 'FechaInscripcion', + tableName: 'fechaInscripcion', + timestamps: false, + } +); + +module.exports = FechaInscripcion; diff --git a/server/db/tablas/Inscripcion.js b/server/db/tablas/Inscripcion.js new file mode 100644 index 0000000..fa8254d --- /dev/null +++ b/server/db/tablas/Inscripcion.js @@ -0,0 +1,80 @@ +const { DataTypes, Model } = require('sequelize'); +const sequelize = require('../../config/sequelize.conf'); +const Usuario = require('./Usuario'); +const Area = require('./Area'); +const FechaInscripcion = require('./FechaInscripcion'); + +class Inscripcion extends Model {} +Inscripcion.init( + { + idInscripcion: { + type: DataTypes.INTEGER, + prymarykey: true, + allowNull: false, + unique: true, + autoIncrement: true, + }, + validacion: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: null, + }, + confirmacion: { + type: DataTypes.BOOLEAN, + allowNull: false, + }, + folio: { + type: DataTypes.STRING(10), + allowNull: true, + defaultValue: null, + unique: true, + }, + monto: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: null, + }, + fechaInscripcion: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: null, + }, + fechaTicket: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: null, + }, + }, + { + sequelize, + modelName: 'Inscripcion', + tableName: 'inscripcion', + timestamps: false, + } +); + +Inscripcion.belongsTo(Usuario, { + foreignKey: { + name: 'idUsuario', + type: DataTypes.INTEGER, + allowNull: false, + }, +}); + +Inscripcion.belongsTo(Area, { + foreignKey: { + name: 'idArea', + type: DataTypes.INTEGER, + allowNull: false, + }, +}); + +Inscripcion.belongsTo(FechaInscripcion, { + foreignKey: { + name: 'idFechaInscripcion', + type: DataTypes.INTEGER, + allowNull: false, + }, +}); + +module.exports = Inscripcion;