Commit 23ff89a9 authored by D’jalmar Gutierrez Titirico's avatar D’jalmar Gutierrez Titirico 🚲

Merge branch 'iss02-postulante' into 'desarrollo'

Corrección Modelos y Controladores - Desarrollo de los servicios Postulantes [iss02]

@dgutierrez @gcallejas, Se actualizo los modelos y metodos -  Desarrollo de los servicios Postulantes [iss02]

See merge request !5
parents c05ff73a f0d3a415
** MANEJO DE POSTULANTES
********
Modulo Personal
********
Tipos de Datos
-------------
> **Titulo**
Mostrar todos Tipos de Datos
> **URL**
/tipoDatos
> **Metodo**
<kbd>GET</kbd>
> **Parametros de la URL**
> **Parametros del body**
> **Respuesta correcta**
> **Codigo:** 200
**Contenido:**
> **Respuesta de error**
**Codigo:** 404
**Contenido:** Recurso no encontrado
Guardar Tipos de Datos
-------------
> **Titulo**
Guardar Tipos de Datos
> **URL**
/tipoDatos
> **Metodo**
<kbd>POST</kbd>
> **Parametros de la URL**
> **Parametros del body**
```json
{
"nombre":"Telefono",
"propiedad":"TEL"
}
```
> **Respuesta correcta**
> **Codigo:** 200
**Contenido:**
> **Respuesta de error**
**Codigo:** 201
**Contenido:** Registro creado.
**Codigo:** 500
**Contenido:** La solicitud contiene sintaxis errónea.
Editar Tipos de Datos
-------------
> **Titulo**
Editar Tipos de Datos
> **URL**
/tipoDatos
> **Metodo**
<kbd>PUT</kbd>
> **Parametros de la URL**
<kbd>id</kbd>
> **Parametros del body**
```json
{
"nombre":"Telefono",
"propiedad":"TELEFONO"
}
```
> **Respuesta correcta**
> **Codigo:** 200
**Contenido:**
> **Respuesta de error**
**Codigo:** 400
**Contenido:** La solicitud contiene sintaxis errónea.
......@@ -11,6 +11,8 @@
import _ from 'lodash';
import {DatoPostulante} from '../../sqldb';
import {Postulante} from '../../sqldb';
import {TipoDato} from '../../sqldb';
function respondWithResult(res, statusCode) {
statusCode = statusCode || 200;
......@@ -111,3 +113,16 @@ export function destroy(req, res) {
.then(removeEntity(res))
.catch(handleError(res));
}
export function obtieneDato(req, res) {
console.log("paramra"+req.params.id);
Postulante.find({
where:{
_id:req.params.id}
})
.then(function(postulante){
postulante.getDatos().then(function(datos){
return res.json(datos);
})
})
}
......@@ -8,13 +8,14 @@ export default function(sequelize, DataTypes) {
autoIncrement: true,
type: DataTypes.INTEGER
},
nombre: {
valor: {
allowNull: false,
type: DataTypes.STRING(50)
},
propiedad: {
allowNull: false,
type: DataTypes.STRING(50)
type: DataTypes.STRING(50),
validate: {
notEmpty: {
msg: 'Ingrese su Dato para el postulante.'
}
}
}
},{
schema: 'public',
......
......@@ -12,4 +12,6 @@ router.put('/:id', controller.update);
router.patch('/:id', controller.update);
router.delete('/:id', controller.destroy);
router.get('/obtieneDato/:id', controller.obtieneDato);
module.exports = router;
......@@ -12,4 +12,5 @@ router.put('/:id', controller.update);
router.patch('/:id', controller.update);
router.delete('/:id', controller.destroy);
module.exports = router;
......@@ -111,3 +111,21 @@ export function destroy(req, res) {
.then(removeEntity(res))
.catch(handleError(res));
}
///
export function postulante(req, res) {
Postulante.find({
where: {
_id: req.params.idPostulante
}
})
.then(handleEntityNotFound(res))
.then(function (postulante) {
postulante.getPostulaciones()
.then(function (postulaciones) {
return res.json(postulaciones);
})
})
.catch(handleError(res));
}
......@@ -9,15 +9,30 @@ export default function(sequelize, DataTypes){
},
nombres: {
allowNull: false,
type: DataTypes.STRING(150)
type: DataTypes.STRING(150),
validate: {
notEmpty: {
msg: 'Ingrese Nombre(s) para el postulante.'
}
}
},
apellidos: {
allowNull: false,
type: DataTypes.STRING(150)
type: DataTypes.STRING(150),
validate: {
notEmpty: {
msg: 'Ingrese Apellido(s) para el postulante.'
}
}
},
ci: {
allowNull: false,
type: DataTypes.STRING(30)
type: DataTypes.STRING(30),
validate: {
notEmpty: {
msg: 'Ingrese Cedula de Identidad (CI) para el postulante.'
}
}
},
sexo: {
allowNull: false,
......
......@@ -69,7 +69,7 @@ export function index(req, res) {
export function show(req, res) {
TipoDato.find({
where: {
_id: req.params.id
propiedad: req.params.id
}
})
.then(handleEntityNotFound(res))
......
......@@ -3,19 +3,19 @@
export default function(sequelize, DataTypes) {
return sequelize.define('TipoDato', {
_id: {
propiedad: {
allowNull: false,
primaryKey: true,
autoIncrement: true,
type: DataTypes.INTEGER
},
nombre: {
allowNull: false,
type: DataTypes.STRING(50)
},
propiedad: {
nombre: {
allowNull: false,
type: DataTypes.STRING(50)
type: DataTypes.STRING(50),
validate: {
notEmpty: {
msg: 'Ingrese nombre al Tipo de Dato.'
}
}
}
},{
schema: 'public',
......
......@@ -32,7 +32,7 @@ db.Postulante.belongsToMany(db.TipoDato,{
}
});
db.TipoDato.belongsToMany(db.Postulante,{
foreignKey: 'fk_tipo_dato',
foreignKey: 'propiedad',
as: 'Postulantes',
through:{
model:db.DatoPostulante, unique:false
......
File added
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment