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

Merge branch '3-Desarrollo-Cargos-Postulaciones-Categorias-Comentarios' into 'desarrollo'

#3

@gcallejas @tnina documentacion del cargo con el formato correcto añadida, se añadio mensaje de respuesta para entidades inexistentes en una peticion.

See merge request !9
parents 88a8a523 3b2bc9b7
# Cargo ___
## Obtener todos los cargos
Listar los cargos ___
-------------
**URL** **URL**
> /cargos > /cargos
...@@ -63,8 +62,9 @@ Listar los cargos ...@@ -63,8 +62,9 @@ Listar los cargos
>Esta petición cuando no existen datos almacenados en la base de datos >Esta petición cuando no existen datos almacenados en la base de datos
>retorna un array vacio >retorna un array vacio
Crear un nuevo cargo ___
------------- ## Crear un nuevo cargo
___
**URL** **URL**
> /cargos > /cargos
...@@ -72,7 +72,7 @@ Crear un nuevo cargo ...@@ -72,7 +72,7 @@ Crear un nuevo cargo
> <kbd>POST</kbd> > <kbd>POST</kbd>
**Parametros del body** **Parametros del body**
>ejemplo >**Ejemplo**
```json ```json
{ {
"nombre":"Jefe de unidad" "nombre":"Jefe de unidad"
...@@ -81,30 +81,173 @@ Crear un nuevo cargo ...@@ -81,30 +81,173 @@ Crear un nuevo cargo
**Respuesta correcta** **Respuesta correcta**
>**Codigo:** 200 >**Codigo:** 201
>**Ejemplo:**
```json
{
"_id": 81,
"nombre": "Jefe",
"fecha_modificacion": "2016-03-15T22:26:13.065Z",
"fecha_creacion": "2016-03-15T22:26:13.065Z"
}
```
**Respuesta de error**
>**Codigo:** 400
>**Contenido:** >**Contenido:**
```json ```json
{ {
"nombre":"[string]" "name": "SequelizeValidationError",
"message": "Validation error: Ingrese un nombre para el cargo",
"errors": [
{
"message": "Ingrese un nombre para el cargo",
"type": "Validation error",
"path": "nombre",
"value": {},
"__raw": {}
}
]
} }
``` ```
___
## Editar un cargo
___
**URL**
> /cargos/:id
**Metodo**
> <kbd>PUT</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Parametros del body**
>ejemplo
```json
{
"nombre":"Jefe de unidad"
}
```
**Respuesta correcta**
>**Codigo:** 200
>**Ejemplo** >**Ejemplo**
```json ```json
{ {
"nombre":"Jefe de Unidad" "_id": 83,
"nombre": "Jefe modificado",
"fecha_creacion": "2016-03-15T22:28:25.816Z",
"fecha_modificacion": "2016-03-15T22:29:50.184Z"
} }
``` ```
**Respuesta de error** **Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json___
### Eliminar un cargo
___
**URL**
> /cargos/:id
**Metodo**
> <kbd>PUT</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Respuesta correcta**
>**Codigo:** 204
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
{
"message": "Entidad no encontrada"
}
```
>**Codigo:** 400 >**Codigo:** 400
>**Contenido:** >**Contenido:**
```json ```json
{ {
"Error":"El nombre no puede estar vacio" "name": "SequelizeValidationError",
"message": "Validation error: Ingrese un nombre para el cargo",
"errors": [
{
"message": "Ingrese un nombre para el cargo",
"type": "Validation error",
"path": "nombre",
"value": {},
"__raw": {}
}
]
} }
``` ```
___
### Eliminar un cargo
___
**URL**
> /cargos/:id
**Metodo**
> <kbd>PUT</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Respuesta correcta**
>**Codigo:** 204
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
___
## Obtener todas las postulaciones
___
**URL**
> /comentarios
**Metodo**
> <kbd>GET</kbd>
**Respuesta correcta**
>**Codigo:** 200
>**Ejemplo:**
```json
[
{
"_id": 178,
"contenido": "comentario de prueba numero :1",
"fecha_creacion": "2016-03-16T15:40:22.265Z",
"fecha_modificacion": "2016-03-16T15:40:22.265Z",
"fk_postulante": 241
},
{
"_id": 179,
"contenido": "comentario de prueba numero :2",
"fecha_creacion": "2016-03-16T15:40:22.266Z",
"fecha_modificacion": "2016-03-16T15:40:22.266Z",
"fk_postulante": 241
},
{
"_id": 180,
"contenido": "comentario de prueba numero :2",
"fecha_creacion": "2016-03-16T15:40:22.267Z",
"fecha_modificacion": "2016-03-16T15:40:22.267Z",
"fk_postulante": 242
}
]
```
**Respuesta de error**
>**Codigo:** 500
>**Contenido:**
```json
{
"error":"Ocurrio un problema inesperado en el servidor"
}
```
**Observaciones**
>Cuando no existen datos almacenados en la base de datos
>retorna un array vacio
___
## Crear un comentario
___
**URL**
> /comentarios
**Metodo**
> <kbd>POST</kbd>
**Parametros del body**
>**Ejemplo**
```json
{
"contenido": "comentario de prueba",
"fk_postulante":241
}
```
**Respuesta correcta**
>**Codigo:** 201
>**Ejemplo:**
```json
{
"_id": 189,
"contenido": "comentario de prueba",
"fk_postulante": 241,
"fecha_modificacion": "2016-03-16T15:47:04.495Z",
"fecha_creacion": "2016-03-16T15:47:04.495Z"
}
```
**Respuesta de error**
>**Codigo:** 400
>**Contenido:**
```json
{
"name": "SequelizeValidationError",
"message": "Validation error: Por favor ingrese un comentario",
"errors": [
{
"message": "Por favor ingrese un comentario",
"type": "Validation error",
"path": "contenido",
"value": {},
"__raw": {}
}
]
}
```
___
## Editar un comentario
___
**URL**
> /comentarios/:id
**Metodo**
> <kbd>PUT</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Parametros del body**
>ejemplo
```json
{
"contenido": "Comentario modificado",
"fk_postulante":241
}
```
**Respuesta correcta**
>**Codigo:** 200
>**Ejemplo**
```json
{
"_id": 178,
"contenido": "Comentario modificado",
"fecha_creacion": "2016-03-16T15:40:22.265Z",
"fecha_modificacion": "2016-03-16T15:48:49.656Z",
"fk_postulante": 241
}
```
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
>**Codigo:** 400
>**Contenido:**
```json
{
"name": "SequelizeValidationError",
"message": "Validation error: Por favor ingrese un comentario",
"errors": [
{
"message": "Por favor ingrese un comentario",
"type": "Validation error",
"path": "contenido",
"value": {},
"__raw": {}
}
]
}
```
___
### Eliminar un comentario
___
**URL**
> /comentarios/:id
**Metodo**
> <kbd>DELETE</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Respuesta correcta**
>**Codigo:** 204
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
___
### Obtener todas los comentarios de un postulante
___
**URL**
> /comentarios/postulate/:id
**Metodo**
> <kbd>GET</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Respuesta correcta**
>**Codigo:** 200
>**Contenido:**
```json
[
{
"_id": 190,
"contenido": "comentario de prueba numero :1",
"fecha_creacion": "2016-03-16T15:50:28.624Z",
"fecha_modificacion": "2016-03-16T15:50:28.624Z",
"fk_postulante": 246
},
{
"_id": 191,
"contenido": "comentario de prueba numero :2",
"fecha_creacion": "2016-03-16T15:50:28.625Z",
"fecha_modificacion": "2016-03-16T15:50:28.625Z",
"fk_postulante": 246
}
]
```
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
___
### Obtener todos los postulantes a un cargo
___
**URL**
> /postulaciones/cargo/:id
**Metodo**
> <kbd>GET</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Respuesta correcta**
>**Codigo:** 200
>**Contenido:**
```json
[
{
"_id": 241,
"nombres": "Juan Carlos",
"apellidos": "Perez Gomez",
"ci": "6867562",
"sexo": true,
"createdAt": "2016-03-16T15:40:22.195Z",
"updatedAt": "2016-03-16T15:40:22.195Z",
"Postulacion": {
"_id": 28,
"presentacion": "Texto de presentacion1",
"fecha_creacion": "2016-03-16T15:40:22.382Z",
"fecha_modificacion": "2016-03-16T15:40:22.382Z",
"fk_postulante": 241,
"fk_cargo": 286
}
},{
"_id": 242,
"nombres": "Ana Gomez",
"apellidos": "Rodriguez",
"ci": "6867122",
"sexo": true,
"createdAt": "2016-03-16T15:40:22.195Z",
"updatedAt": "2016-03-16T15:40:22.195Z",
"Postulacion": {
"_id": 29,
"presentacion": "Texto de presentacion1",
"fecha_creacion": "2016-03-16T15:40:22.382Z",
"fecha_modificacion": "2016-03-16T15:40:22.382Z",
"fk_postulante": 242,
"fk_cargo": 286
}
}
]
```
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
___
## Obtener todas las postulaciones
___
**URL**
> /postulaciones
**Metodo**
> <kbd>GET</kbd>
**Respuesta correcta**
>**Codigo:** 200
>**Ejemplo:**
```json
[
{
"_id": 21,
"presentacion": "Texto de presentacion1",
"fecha_creacion": "2016-03-16T15:26:38.736Z",
"fecha_modificacion": "2016-03-16T15:26:38.736Z",
"fk_postulante": 236,
"fk_cargo": 276
},
{
"_id": 22,
"presentacion": "Texto de presentacion2",
"fecha_creacion": "2016-03-16T15:26:38.737Z",
"fecha_modificacion": "2016-03-16T15:26:38.737Z",
"fk_postulante": 237,
"fk_cargo": 277
},
{
"_id": 23,
"presentacion": "Texto de presentacion3",
"fecha_creacion": "2016-03-16T15:26:38.755Z",
"fecha_modificacion": "2016-03-16T15:26:38.755Z",
"fk_postulante": 238,
"fk_cargo": 278
},
{
"_id": 24,
"presentacion": "Texto de presentacion4",
"fecha_creacion": "2016-03-16T15:26:38.756Z",
"fecha_modificacion": "2016-03-16T15:26:38.756Z",
"fk_postulante": 239,
"fk_cargo": 279
},
{
"_id": 25,
"presentacion": "Texto de presentacion5",
"fecha_creacion": "2016-03-16T15:26:38.774Z",
"fecha_modificacion": "2016-03-16T15:26:38.774Z",
"fk_postulante": 240,
"fk_cargo": 280
}
]
```
**Respuesta de error**
>**Codigo:** 500
>**Contenido:**
```json
{
"error":"Ocurrio un problema inesperado en el servidor"
}
```
**Observaciones**
>Cuando no existen datos almacenados en la base de datos
>retorna un array vacio
___
## Crear una postulacion
___
**URL**
> /postulaciones
**Metodo**
> <kbd>POST</kbd>
**Parametros del body**
>**Ejemplo**
```json
{
"presentacion":"Texto de presentacion del postulante",
"fk_postulante":236,
"fk_cargo":277
}
```
**Respuesta correcta**
>**Codigo:** 201
>**Ejemplo:**
```json
{
"_id": 26,
"presentacion": "Texto de presentacion del postulante",
"fk_postulante": 236,
"fk_cargo": 277,
"fecha_modificacion": "2016-03-16T15:30:20.292Z",
"fecha_creacion": "2016-03-16T15:30:20.292Z"
}
```
**Respuesta de error**
>**Codigo:** 400
>**Contenido:**
```json
{
"name": "SequelizeValidationError",
"message": "Validation error: Por favor ingrese un mensaje de presentacion",
"errors": [
{
"message": "Por favor ingrese un mensaje de presentacion",
"type": "Validation error",
"path": "presentacion",
"value": {},
"__raw": {}
}
]
}
```
___
## Editar una postulacion
___
**URL**
> /postulaciones/:id
**Metodo**
> <kbd>PUT</kbd>
**Parametros de la url**
>**Parametro requerido:**
```
id=[integer]
```
>**Ejemplo:**
```
id=83
```
**Parametros del body**
>ejemplo
```json
{
"presentacion":"Texto de presentacion del postulante modificado",
"fk_postulante":236,
"fk_cargo":277
}
```
**Respuesta correcta**
>**Codigo:** 200
>**Ejemplo**
```json
{
"_id": 26,
"presentacion": "Texto de presentacion del postulante modificado",
"fecha_creacion": "2016-03-16T15:30:20.292Z",
"fecha_modificacion": "2016-03-16T15:33:51.913Z",
"fk_postulante": 236,
"fk_cargo": 277
}
```
**Respuesta de error**
>**Codigo:** 404
>**Contenido:**
```json
{
"message": "Entidad no encontrada"
}
```
>**Codigo:** 400
>**Contenido:**
```json
{
"name": "SequelizeValidationError",
"message": "Validation error: Por favor ingrese un mensaje de presentacion",
"errors": [