diff --git a/apigee/recreacionyturismo-afiliados.json b/apigee/recreacionyturismo-afiliados.json index 256b1cb..fdc541e 100644 --- a/apigee/recreacionyturismo-afiliados.json +++ b/apigee/recreacionyturismo-afiliados.json @@ -27,9 +27,127 @@ { "name": "cols-recreacionyturismo-afiliados", "description": "Informacion de afiliados." + }, + { + "name": "cols-recreacionyturismo-gestionclientes", + "description": "Servicios para el manejo de clientes y sus membresías" } ], "paths": { + "/v1/recreacionyturismo/hoteles/gestionclientes/membresias":{ + "put": { + "tags": [ + "cols-recreacionyturismo-gestionclientes" + ], + "summary": "Actualiza el estado de una membresía", + "description": "Dado un número de cliente le actualiza el estaedo de su membresia", + "operationId": "actualizarMembresia.v1", + "responses": { + "200": { + "description": "Operación exitosa", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/actualizarMembresiaResponse" + } + } + } + }, + "400": { + "description": "Solicitud inválida" + } + }, + "security": [ + { + "apigee_auth": [ + "write:apigee", + "read:apigee" + ] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/actualizarMembresiaRequestBody" + } + }, + "post": { + "tags": [ + "cols-recreacionyturismo-gestionclientes" + ], + "summary": "Registrar membresía", + "description": "Registrar la membresía de un cliente", + "operationId": "registrarMembresia.v1", + "responses": { + "200": { + "description": "Operación exitosa", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/registrarMembresiaResponse" + } + } + } + }, + "400": { + "description": "Solicitud inválida" + } + }, + "security": [ + { + "apigee_auth": [ + "write:apigee", + "read:apigee" + ] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/registrarMembresiaRequestBody" + } + }, + "get": { + "tags": [ + "cols-recreacionyturismo-gestionclientes" + ], + "summary": "Consultar las membresias teniendo en cuenta un id de cliente", + "description": "Función para consultar las membresias", + "operationId": "consultarMembresiasCliente.v1", + "parameters": [ + { + "name": "numeroCliente", + "in": "query", + "required": true, + "description": "Numero de identificacion del cliente.", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "Operación exitosa", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/obtenerMembresiasClienteResponse" + } + } + } + }, + "400": { + "description": "Estado inválido" + } + }, + "security": [ + { + "apigee_auth": [ + "write:apigee", + "read:apigee" + ] + } + ] + } + }, + + "/v1/recreacionyturismo/afiliados/clientes": { "post": { "tags": [ @@ -436,7 +554,7 @@ "required": true, "description": "Numero de documento de identificacion de la persona que se consulta el turno.", "schema": { - "type": "string", + "type": "string" } }, { @@ -445,7 +563,7 @@ "required": true, "description": "cancelable.", "schema": { - "type": "boolean", + "type": "boolean" } }, { @@ -454,7 +572,7 @@ "required": true, "description": "Activo.", "schema": { - "type": "boolean", + "type": "boolean" } }, { @@ -485,9 +603,9 @@ "required": false, "description": "Numero de identificacion del centro de entrenamiento.", "schema": { - "type": "integer", + "type": "integer" } - }, + } ], "responses": { "200": { @@ -529,7 +647,7 @@ "required": true, "description": "Numero de documento de identificacion de la persona que se consulta la suscripcion.", "schema": { - "type": "string", + "type": "string" } }, { @@ -547,7 +665,7 @@ "required": false, "description": "Incluir suscripciones vencidas.", "schema": { - "type": "boolean", + "type": "boolean" } } ], @@ -591,7 +709,7 @@ "required": true, "description": "Numero de documento de identificacion de la reserva.", "schema": { - "type": "string", + "type": "string" } }, { @@ -600,7 +718,7 @@ "required": false, "description": "tipo de referencia.", "schema": { - "type": "string", + "type": "string" } }, { @@ -609,7 +727,7 @@ "required": false, "description": "estado de la reserva.", "schema": { - "type": "string", + "type": "string" } } ], @@ -653,7 +771,7 @@ "required": true, "description": "Numero de documento de identificacion.", "schema": { - "type": "string", + "type": "string" } }, { @@ -662,7 +780,7 @@ "required": true, "description": "codigo de categoria.", "schema": { - "type": "string", + "type": "string" } }, { @@ -671,7 +789,7 @@ "required": false, "description": "estado de la reserva.", "schema": { - "type": "string", + "type": "string" } } ], @@ -911,9 +1029,7 @@ "descripcion":{ "type": "string", "description": "Descripcion de la Tarifa " - }, - - + } } }, @@ -1122,7 +1238,7 @@ } }, -"direccionTitularDocumento":{ + "direccionTitularDocumento":{ "type": "object", "properties": { "tipo":{ @@ -1311,7 +1427,7 @@ }, "prestador": { "$ref": "#/components/schemas/prestador" - }, + } } }, "centroEntrenamiento": { @@ -1576,7 +1692,7 @@ } } } - }, + } } }, "reserva": { @@ -2254,6 +2370,31 @@ } } }, + "actualizarMembresiaRequest": { + "type": "object", + "properties": { + "numeroCliente": { + "type": "string", + "description": "Número interno del cliente" + }, + "estado": { + "type": "string", + "description": "
Tipos de estado
Id Descripción
ACTIVO Activa la membresía
INACTIVO Inactiva la membresía
" + } + } + }, + "registrarMembresiaRequest": { + "type": "object", + "properties": { + "numeroCliente": { + "type": "string", + "description": "Número interno del cliente" + }, + "membresia": { + "$ref": "#/components/schemas/membresia" + } + } + }, "consultarDatosClienteResponse": { "type": "object", "required": [ @@ -2300,6 +2441,64 @@ } } }, + "actualizarMembresiaResponse": { + "type": "object", + "required": [ + "resultado" + ], + "properties": { + "resultado": { + "type": "array", + "xml": { + "name": "resultado" + }, + "items": { + "$ref": "#/components/schemas/resultado" + } + } + } + }, + "registrarMembresiaResponse": { + "type": "object", + "required": [ + "resultado" + ], + "properties": { + "resultado": { + "type": "array", + "xml": { + "name": "resultado" + }, + "items": { + "$ref": "#/components/schemas/resultado" + } + } + } + }, + "obtenerMembresiasClienteResponse": { + "type": "object", + "required": [ + "resultado" + ], + "properties": { + "resultado": { + "type": "array", + "xml": { + "name": "resultado" + }, + "items": { + "$ref": "#/components/schemas/resultado" + } + }, + "membresiasCliente": { + "type": "array", + "items": { + "$ref": "#/components/schemas/consultarMembresias" + } + } + } + }, + "obtenerCliente": { "type": "object", "properties": { @@ -2552,6 +2751,45 @@ } } }, + "membresia": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Identificador de la membresia" + }, + "tipo": { + "type": "string", + "description": "Tipo de la membresía (A, B, C, D)" + }, + "nombre": { + "type": "string", + "description": "Nombre del cliente de la membresía" + }, + "fechaCaducidad": { + "type": "string", + "format": "date-time", + "description": "Fecha de caducidad de la membresía" + } + } + }, + "consultarMembresias": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description":"Id de identificacion de la membresia." + }, + "tipo": { + "type": "string", + "description":"Tipo de la membresia." + }, + "estado": { + "type": "string", + "description":"
Tipos de estado
Id Descripción
ACTIVO Activa la membresía
INACTIVO Inactiva la membresía
" + } + } + }, "consultaCotizacionIdResponse": { "type": "object", "required": [ @@ -3502,6 +3740,28 @@ "description": "Informacion para registrar clientes", "required": true }, + "actualizarMembresiaRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/actualizarMembresiaRequest" + } + } + }, + "description": "Informacion para actualizar clientes", + "required": true + }, + "registrarMembresiaRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/registrarMembresiaRequest" + } + } + }, + "description": "Informacion para registrar clientes", + "required": true + }, "inscribirMembresiaRequestBody": { "content": { "application/json": {