Colaboradores
Registro y administracion de colaboradores de la organizacion con busqueda RENIEC, roles, telefonos, correos y ubicacion geografica.
Que es Colaboradores
El modulo Colaboradores permite registrar, editar y eliminar al personal administrativo de la organizacion. Cada colaborador se registra con sus datos personales (documento, nombres, apellidos, fecha de nacimiento, sexo), roles asignados, telefonos de contacto, correos electronicos y ubicacion geografica completa (pais, departamento, provincia, distrito, direccion).
Breadcrumb de navegacion: Logistica > Colaboradores
Subtitulo de la pantalla: "Muestra el listado y las herramientas para gestionar los colaboradores"
Los colaboradores registrados aqui se utilizan como vendedores en Sistema de Gestión Comercial y como responsables en otros modulos del sistema. Verifica que tienes el perfil adecuado.
Barra de herramientas
En la parte superior de la pantalla se muestran dos botones alineados a la derecha:
| Boton | Icono | Estilo | Descripcion |
|---|---|---|---|
| Actualizar | pi pi-refresh | Outlined (borde sin relleno) | Recarga la tabla de colaboradores consultando nuevamente el servidor. |
| Nuevo colaborador | pi pi-plus | Primario (relleno) | Abre el formulario de registro en un dialogo a pantalla completa. |
Debajo de los botones se muestra un divisor horizontal (p-divider), seguido del componente de busqueda y filtros.
Busqueda y filtros
La barra de busqueda se ubica inmediatamente debajo del divisor y consta de:
Campo de busqueda de texto
Un campo de texto con icono de lupa (pi pi-search) alineado a la derecha del campo. El texto ingresado se usa como patron de busqueda en todos los campos del colaborador. El patron se envia como *texto_ingresado* (busqueda parcial).
Filtros avanzados (chips)
Los filtros activos se muestran como chips a la derecha del campo de busqueda. Cada chip muestra el texto descriptivo del filtro aplicado y un boton X para eliminarlo. Tambien puedes hacer clic sobre un chip existente para editarlo (se abre el panel con los datos del filtro prellenados).
Panel de filtros
Al presionar "Agregar filtro" se abre un p-overlayPanel de 450px de ancho con un formulario:
| Campo | Tipo de control | Opciones | Obligatorio | Mensaje de error |
|---|---|---|---|---|
| Filtro | Dropdown con busqueda | VENDEDOR, ROLES | Si | "* Obligatorio" |
| Vendedor (si filtro = VENDEDOR) | Dropdown con busqueda remota | Colaboradores del sistema, formato: numero_documento - apellido_paterno apellido_materno nombres | Si | "* Obligatorio" |
| Roles (si filtro = ROLES) | MultiSelect con chips | Roles cargados desde /v2.0.1/erpx/rrhh/roles, muestra por nombre | Si | "* Obligatorio" |
El dropdown de Vendedor carga los primeros 50 colaboradores al abrir. Al escribir en el filtro, consulta el servidor con el texto ingresado (*texto*) y trae hasta 50 resultados.
El boton Guardar (pi pi-check) dentro del panel agrega el filtro como chip. Si ya existia un filtro del mismo tipo, lo reemplaza.
Consulta generada: Los filtros se combinan con el texto de busqueda en formato:
*texto* AND filtro1 AND filtro2
- Filtro VENDEDOR genera:
id:ID_COLABORADOR - Filtro ROLES genera:
rol_id:ID1,ID2,ID3
El chip muestra:
- VENDEDOR:
colaborador == apellido_paterno apellido_materno nombres - ROLES:
Rol == nombre1, nombre2
Botones de la barra de filtros
| Boton | Icono | Descripcion |
|---|---|---|
| Agregar filtro | pi pi-filter | Abre el panel de filtros. Si se le pasa un indice, abre en modo edicion del chip seleccionado. |
| Quitar filtros | pi pi-filter-slash | Elimina todos los filtros activos y limpia el campo de texto de busqueda. |
| Buscar | pi pi-search | Ejecuta la busqueda con el texto y filtros actuales. Llama al endpoint con los parametros combinados. |
Tabla de colaboradores
La tabla usa el componente p-table con las siguientes caracteristicas:
- Paginacion por servidor (lazy loading):
size=50registros por pagina - Columnas redimensionables: modo
expand - Grilla con bordes: estilo
p-datatable-gridlines - Seleccion multiple habilitada
- Menu contextual con clic derecho (
p-contextMenu) - Ordenamiento por columnas (modo single)
- Mensaje vacio: Icono
pi pi-exclamation-triangle+ "No se encontraron datos"
Texto informativo
Encima de la tabla se muestra: "Mostrando pagina {N} con {X} registros de {T} entradas" donde:
N= numero de pagina actual (base 1)X= cantidad de registros en la pagina actualT= total de registros en el servidor
Columnas
| # | Encabezado | Campo de datos | Ancho min/max |
|---|---|---|---|
| 1 | T. Documento | node.tipo_documento | 25px / 25px |
| 2 | N. Documento | node.numero_documento | 25px / 25px |
| 3 | Nombre | node.nombres | auto |
| 4 | A. paterno | node.apellido_paterno | 35px / 35px |
| 5 | A. Materno | node.apellido_materno | 35px / 35px |
| 6 | Direccion | node.direccion | 40px / 40px |
| 7 | Roles | node.roles | 30px / 30px |
| 8 | Telefonos | node.telefonos | 30px / 30px |
| 9 | Correos | node.correos | 30px / 30px |
| 10 | Acciones | — | 40px / 40px (centrado) |
Formato de columnas especiales:
- Roles: Se extraen los
nombrede cada rol y se muestran separados por coma. Ejemplo:Medico, Tecnico - Telefonos: Se extraen los
numerode cada telefono y se muestran separados por coma. Ejemplo:999888777, 987654321 - Correos: Se extraen los
correode cada correo y se muestran separados por coma. Ejemplo:juan@correo.com, otro@correo.com - Acciones: Icono de tres puntos horizontales (
pi pi-ellipsis-h) que abre el menu popup al hacer clic.
Menu contextual
Se activa de dos formas:
- Clic en el icono de tres puntos (columna Acciones) — abre un
p-menupopup - Clic derecho sobre cualquier fila — abre un
p-contextMenu
Ambos muestran las mismas opciones:
| Opcion | Icono | Descripcion |
|---|---|---|
| Colaborador | pi pi-plus | Abre el formulario para crear un nuevo colaborador (pasa null como dato). |
| Editar | pi pi-pencil | Abre el formulario con los datos del colaborador seleccionado para editarlos. |
| Eliminar | pi pi-times | Abre el dialogo de confirmacion de eliminacion del colaborador seleccionado. |
Paginacion
La paginacion se muestra centrada en la parte inferior de la tabla con 5 controles:
| Control | Icono | Descripcion |
|---|---|---|
| Primera pagina | pi pi-angle-double-left | Navega a la pagina 1. No hace nada si ya esta en la primera pagina. |
| Pagina anterior | pi pi-angle-left | Retrocede una pagina. No hace nada si ya esta en la primera pagina. |
| Selector de pagina | Dropdown con busqueda | Muestra la pagina actual en formato "X de Y". Permite seleccionar cualquier pagina escribiendo en el filtro. |
| Pagina siguiente | pi pi-angle-right | Avanza una pagina. No hace nada si ya esta en la ultima pagina. |
| Ultima pagina | pi pi-angle-double-right | Navega a la ultima pagina. No hace nada si ya esta en la ultima pagina. |
Cada boton tiene un ancho fijo de 2.58rem y estilo p-button-text.
Formulario: Nuevo colaborador / Editar colaborador
Al presionar "Nuevo colaborador" o "Editar" se abre un p-dialog a pantalla completa con las siguientes caracteristicas:
- Ancho: 100%
- Alto: 100%
- No arrastrable, no redimensionable, no modal
- Breakpoints: 653px y 960px ocupan 100vw
Encabezado del dialogo
- Breadcrumb: Logistica > Colaboradores > Nuevo
- Titulo:
"Nuevo Administrativo" - Subtitulo:
"Aqui puede editar la lista de colaboradores"
Estado de carga
Mientras se cargan los datos iniciales (paises, roles), se muestra:
- Texto: "Cargando sus datos"
- Icono de spinner animado
- Barra de progreso indeterminada (
p-progressBar)
Una vez cargados los datos, se muestra el formulario completo.
Toast de errores
El formulario tiene dos toasts:
- Un
p-toastcon keycreate_new_formposicionado en la esquina inferior izquierda — para errores de validacion del formulario - Un
p-toastgeneral — para notificaciones de exito/error del servidor
Seccion 1: Administrar roles
Titulo de seccion: "Administrarar roles" (sic — asi esta en el codigo fuente)
Subtitulo: "Seleccione los roles a los que perteneces."
| Campo | Tipo | Ancho | Obligatorio | Placeholder | Tooltip | Mensaje de error | Detalle |
|---|---|---|---|---|---|---|---|
| Roles | p-multiSelect con chips | 12 cols | Si | "Seleccione varios" | "Seleccione los roles del nuevo colaborador" | "* Seleccione los roles del nuevo colaborador" | Los roles se cargan desde el endpoint /v2.0.1/erpx/rrhh/roles con size=10000. Muestra el campo nombre. Los roles seleccionados se muestran como chips dentro del campo. |
Seccion 2: Detalles de colaborador
Titulo de seccion: "Detalles de colaborador"
Subtitulo: "Se tiene que rellenar los campos que contengan (*) obligatoriamente que se requiere para el registro."
| Campo | Tipo | Ancho | Obligatorio | Placeholder | Tooltip | Mensaje de error |
|---|---|---|---|---|---|---|
| Tipo documento | p-dropdown | 4 cols | Si | "Seleccione" | "Seleccione el tipo de documento" | "* Seleccione el tipo de documento" |
| Numero Documento | input texto + boton busqueda | 6 cols | Si | — | "Ingrese el numero de documento, y realice una busqueda previa" | "* Ingrese un numero valido" / "* No se encuentra el numero" |
| Codigo | input texto | 2 cols | Si | "AUTOMATICO" | "Ingrese los nombres" (sic) | "* Ingrese los codigo" |
| Nombres | input texto | 4 cols | Si | — | "Ingrese los nombres" | "* Ingrese los nombres" |
| Apellido paterno | input texto | 4 cols | Si | — | "Ingrese el apellido paterno" | "* Ingrese el apellido paterno" |
| Apellido materno | input texto | 4 cols | Si | — | "Ingrese el apellido materno" | "* Ingrese el apellido materno" |
| Fecha nacimiento | p-calendar con icono | 4 cols | Si | "DD/MM/YYYY" | "Seleccione la fecha de nacimiento" | "* Seleccione la fecha de nacimiento" |
Opciones de Tipo documento
| Opcion visible | Valor interno (value) |
|---|---|
| DNI | DNI |
| Pasaporte | PASAPORTE |
El dropdown no tiene opcion de limpiar (showClear=false). Se deshabilita temporalmente durante la busqueda RENIEC.
Campo Numero Documento
Es un p-inputgroup con:
- Input de texto a la izquierda para ingresar el numero
- Boton de busqueda a la derecha con icono dinamico:
pi pi-searchen estado normalpi pi-spin pi-spinnerdurante la consulta RENIEC
Soporta la tecla Enter (keyup.enter) para ejecutar la busqueda directamente.
Campo Codigo
- En modo creacion (
registerForm.id == null): campo de solo lectura (readOnly=true), muestra placeholder"AUTOMATICO". El codigo se genera en el servidor al guardar. - En modo edicion (
registerForm.id != null): campo editable con el codigo existente.
Busqueda RENIEC (consulta de documento)
Al presionar el boton de busqueda o la tecla Enter en el campo Numero Documento:
Validacion de tipo de documento: Si no se selecciono tipo de documento, muestra toast de alerta: "Seleccione el tipo de documento." (severity: warn, duracion: 5 segundos). Los campos se vuelven a habilitar.
Validacion de numero vacio: Si el campo esta vacio, muestra: "Ingrese un numero de valido." (severity: warn, duracion: 5 segundos). Muestra error en el campo: " Ingrese un numero valido"*.
Validacion de longitud DNI: Si el tipo es DNI y el numero no tiene exactamente 8 digitos (mayor o menor a 8), muestra: "El DNI ingresado es incorrecto, ingrese un numero valido." (severity: warn, duracion: 5 segundos).
Bloqueo de campos: Los campos Tipo documento, Numero documento, Nombres, Apellido paterno y Apellido materno se deshabilitan durante la consulta. Los campos Nombres, Apellido paterno y Apellido materno se limpian (se ponen en blanco).
Consulta al servicio RENIEC: Se consulta https://apis-peru-7.facttu.com/api/v1/reniec/personas/\{numero_documento\}. El icono del boton cambia a spinner.
Resultado exitoso (solo DNI): Si el tipo es DNI, se autocompletam los campos:
- Nombres:
response.persona.nombres - Apellido paterno:
response.persona.apellido_paterno - Apellido materno:
response.persona.apellido_materno
El icono vuelve a pi-search y los campos se habilitan nuevamente.
Error de consulta: Si response.ok == false y response.error.success == false, se muestra " No se encuentra el numero"* debajo del campo. Se muestra un toast de error con el codigo HTTP y el mensaje correspondiente.
Campo Sexo
Se muestra debajo de los campos anteriores, ocupando 6 columnas:
Label: "Sexo *" con tooltip "Seleccione el sexo"
| Opcion | Valor | Input ID |
|---|---|---|
| Masculino | M | sexo1 |
| Femenino | F | sexo2 |
Mensaje de error: "* Seleccione el genero"
Los dos p-radioButton se muestran en linea (dentro de field-radiobutton).
Seccion 3: Telefonos
Titulo de seccion: "Telefonos"
Subtitulo: "Registre la cantidad de correos que tenga el colaborador." (sic — dice "correos" pero es la seccion de telefonos)
Se usa el subcomponente app-telefono que permite agregar multiples telefonos en un formulario dinamico (FormArray).
Cada telefono tiene una fila con:
| Campo | Tipo | Descripcion |
|---|---|---|
| Numero | input texto | Numero telefonico. Se emite al componente padre en cada teclazo (keyup). |
| Tipo | p-dropdown | Tipo de telefono. Valor por defecto al agregar: Personal. |
Opciones de Tipo telefono
| Opcion visible | Valor interno (value) |
|---|---|
| Casa | CASA |
| Trabajo | TRABAJO |
| Personal | PERSONAL |
Comportamiento
- Al abrir el formulario, se muestra una fila vacia con tipo "Personal" preseleccionado.
- El primer telefono nunca se puede eliminar (el icono X solo aparece a partir del segundo, con
*ngIf="i>0"). - A partir del segundo telefono, se muestra un divisor (
p-divider) entre filas y un icono X (pi pi-times) para eliminar esa fila. - Boton "Agregar" (
pi pi-plus, estilop-button-raised p-button-secondary p-button-text): agrega una nueva fila vacia. - Solo los telefonos con
numerono vacio se envian al guardar. Los vacios se ignoran. - Al editar un colaborador existente, se cargan los telefonos previos reconstruyendo el tipo desde la lista de opciones.
Seccion 4: Correos
Titulo de seccion: "Correos"
Subtitulo: "Registre la cantidad de telefonos que tenga el colaborador." (sic — dice "telefonos" pero es la seccion de correos)
Se usa el subcomponente app-correo con estructura identica a telefonos.
| Campo | Tipo | Descripcion |
|---|---|---|
| Correo | input texto | Direccion de correo electronico. Se emite al componente padre en cada teclazo. |
| Tipo | p-dropdown | Tipo de correo. Valor por defecto al agregar: Personal. |
Opciones de Tipo correo
| Opcion visible | Valor interno (value) |
|---|---|
| Casa | CASA |
| Trabajo | TRABAJO |
| Personal | PERSONAL |
El comportamiento es identico al de telefonos: primer correo no eliminable, divisor entre filas, boton Agregar, solo correos con valor no vacio se envian.
Seccion 5: Ubicacion
Titulo de seccion: "Ubicacion"
Subtitulo: "Rellene los campos de ubicacion."
| Campo | Tipo | Ancho | Obligatorio | Placeholder | Tooltip | Mensaje de error | ShowClear |
|---|---|---|---|---|---|---|---|
| Direccion | input texto | 12 cols | No | — | "Ingrese la direccion" | "* Ingrese la direccion" | — |
| Pais | p-dropdown con busqueda | 3 cols | No | "SELECCIONE" | "Seleccione el pais" | "* Seleccione el pais" | Si |
| Departamento | p-dropdown con busqueda | 3 cols | Condicional | "SELECCIONE" | "Seleccione el Departamento" | "* Seleccione el Departamento" | Si |
| Provincia | p-dropdown con busqueda | 3 cols | Condicional | "SELECCIONE" | "Seleccione la provincia" | "* Seleccione la provincia" | Si |
| Distrito | p-dropdown con busqueda | 3 cols | Condicional | "SELECCIONE" | "Seleccione el Distrito" | "* Seleccione el Distrito" | Si |
Todos los dropdowns de ubicacion tienen:
emptyMessage:"No se encontraron registros."emptyFilterMessage:"No se han encontrado resultados"- Busqueda por
nombre
Pais
Se carga desde el endpoint /v2.0.1/erpx/global/paises/ con size=10000. Muestra el campo nombre.
Cascada de ubicacion (ubigeo peruano)
Los campos Departamento, Provincia y Distrito funcionan como una cascada dependiente con datos cargados desde el cache local del navegador (key: erpx-global-ubigeos):
Estado inicial: Departamento, Provincia y Distrito estan deshabilitados.
Al seleccionar Pais: Si el pais es PERU, se habilita el campo Departamento. Si es otro pais, Departamento permanece deshabilitado. Al cambiar de pais, se reinician Departamento, Provincia y Distrito a null.
Al seleccionar Departamento: Se filtran las provincias cuyo codigo de ubigeo comparte los primeros 2 digitos del departamento y los digitos 3-4 son distintos de "00" y los digitos 5-6 son "00". Se habilita Provincia. Distrito se reinicia a null y se deshabilita.
Al seleccionar Provincia: Se filtran los distritos cuyo codigo comparte los primeros 4 digitos de la provincia y los digitos 5-6 son distintos de "00". Se habilita Distrito.
Al guardar: Se almacenan ubigeo_codigo y ubigeo_nombre del distrito seleccionado. Tambien se guardan por separado ubigeo_pais, ubigeo_departamento, ubigeo_provincia, ubigeo_distrito.
Los datos de ubigeo (departamentos, provincias, distritos) se obtienen del cache local del navegador (localStorage, key erpx-global-ubigeos). Si el cache esta vacio, las listas apareceran vacias. El cache se carga automaticamente al iniciar sesion en el sistema.
Pie del dialogo (footer)
| Boton | Icono | Estilo | Descripcion |
|---|---|---|---|
| Cancelar | pi pi-times | Texto (sin relleno) | Cierra el dialogo sin guardar. |
| Guardar | Dinamico: pi pi-check o spinner | Primario | Valida y guarda. Se deshabilita si los datos iniciales no se han cargado o si se esta procesando el guardado. |
Proceso de guardado
Se activa el flag de submit (submmit = true). El boton Guardar cambia su icono a spinner y se deshabilita.
Validacion de campos obligatorios: Se validan estos 8 campos:
| Campo | Condicion de error |
|---|---|
| Tipo documento | No seleccionado |
| Numero documento | Vacio |
| Apellido paterno | Vacio |
| Apellido materno | Vacio |
| Nombres | Vacio |
| Fecha nacimiento | No seleccionada |
| Sexo | No seleccionado |
| Roles | No seleccionados |
Nota: Los campos de ubicacion (pais, departamento, provincia, distrito, direccion) estan comentados en el codigo de validacion, por lo que NO son obligatorios al guardar aunque muestren el asterisco (*) en el tooltip.
Error de validacion: Si hay campos incompletos, muestra toast en esquina inferior izquierda: "Revise bien, hay formularios por validar." (key: create_new_form, severity: error, duracion: 5 segundos). El boton Guardar vuelve a su estado normal. Los campos invalidos se resaltan con borde rojo y sus mensajes de error se muestran debajo.
Preparacion de datos: Se transforma el formulario:
tipo_documento: se extrae solo elvalue(ej:"DNI")fecha: se establece la fecha actual (YYYY-MM-DD)tipo: se fija como"ADMINISTRATIVO"fecha_nacimiento: se convierte a formatoYYYY-MM-DDtelefonos: array de objetos\{ numero, tipo \}(solo los no vacios)correos: array de objetos\{ correo, tipo \}(solo los no vacios)pais_nacionalidad_id/codigo/nombre: se extraen del objeto pais seleccionadoubigeo_pais/departamento/provincia/distrito: codigos de ubigeoubigeo_codigo/nombre: codigo y nombre del distrito seleccionado
Envio al servidor:
- Crear:
POST /v2.0.3/erpx/rrhh/colaboradores/— Mensaje de exito: "Registrado con exito" - Editar:
PUT /v2.0.3/erpx/rrhh/colaboradores/\{id\}— Mensaje de exito: "Se ha actualizado con exito"
El toast de exito aparece con severity success, duracion 5 segundos.
Actualizacion de la tabla:
- Al crear: el nuevo registro se inserta al inicio de la lista (posicion 0).
- Al editar: el registro se reemplaza en su posicion actual.
El dialogo se cierra automaticamente.
Editar colaborador
Al seleccionar Editar en el menu contextual, se abre el mismo formulario con un proceso de precarga:
Se muestra el estado de carga (spinner + barra de progreso + texto "Cargando sus datos").
Se consultan los endpoints de paises y roles en paralelo (forkJoin).
Tras recibir la respuesta, se ejecuta setUpdateData con un retardo de 1 segundo (setTimeout 1000ms) para dar tiempo a renderizar los datos. Se precargan:
- Tipo documento: se busca en la lista
[DNI, Pasaporte]por coincidencia devalue. - Roles: se comparan por
nombre(case insensitive contoUpperCase()) y se preseleccionan los coincidentes. - Numero documento, Nombres, Apellidos: se asignan directamente.
- Fecha nacimiento: se formatea con
momentaDD/MM/YYYY. - Sexo: se asigna directamente (
MoF). - Codigo: se muestra el codigo existente y el campo se vuelve editable.
- Pais: se busca en la lista de paises por
id == pais_nacionalidad_id. - Ubigeo (si existe): se reconstruye la cascada completa:
- Se busca el departamento por codigo
XX0000 - Se filtran las provincias del departamento y se busca la coincidente
- Se filtran los distritos de la provincia y se busca el coincidente
- Se habilitan los campos correspondientes
- Se busca el departamento por codigo
- Telefonos: se cargan en el subcomponente con sus tipos.
- Correos: se cargan en el subcomponente con sus tipos.
Eliminar colaborador
Al seleccionar Eliminar en el menu contextual se muestra un p-dialog modal:
| Propiedad | Valor |
|---|---|
Titulo (header) | "Confirmacion" |
| Ancho | 50vw |
| Modal | Si |
| Arrastrable | No |
| Redimensionable | No |
Contenido del dialogo:
- Icono
pi pi-exclamation-trianglea tamano2rem - Texto: "Estas seguro de proceder con la eliminacion?"
Botones del pie:
| Boton | Icono | Estilo | Descripcion |
|---|---|---|---|
| No | pi pi-times | Texto (sin relleno) | Cierra el dialogo sin eliminar. |
| Si | Dinamico: pi pi-check o spinner | Primario | Ejecuta la eliminacion. |
Proceso de eliminacion
El boton "Si" cambia su icono a spinner (pi-spin pi-spinner).
Se envia DELETE /v2.0.3/erpx/rrhh/colaboradores/\{id\} al servidor.
Exito: Se cierra el dialogo, se muestra "Eliminado." (severity: success, duracion: 5 segundos). El registro se elimina de la tabla en tiempo real sin recargar.
Error: Se muestra un toast con la informacion del error:
| Codigo HTTP | Mensaje mostrado |
|---|---|
| 400 / 402 | Mensaje devuelto por el servidor en error.error.errors[0] |
| 404 | "No se encontro el servidor de respuestas, consulte con el Administrador. ERROR 404" |
| 500 | "Error interno del servidor. ERROR 500" |
Mensajes de error del servidor (lista principal)
La tabla principal maneja errores con notificaciones toast (severity: error, duracion: 5 segundos):
| Codigo HTTP | Mensaje mostrado |
|---|---|
| 400 | "Error de estructura de envio de datos. ERROR 400" |
| 401 / 402 / 403 | Mensajes concatenados desde error.error.errors[].messague separados por coma |
| 404 | "No se encontro el servidor de respuestas, consulte con el Administrador. ERROR 404" |
| 500 | "Error interno del servidor. ERROR 500" |
| Otro | "Error 404 consulte con su admin." |
Mensajes de error del formulario (guardar)
Al guardar, los errores se manejan de forma diferente:
| Codigo HTTP | Mensaje mostrado |
|---|---|
| 400 | Mensajes concatenados desde error.error.errors[] (strings directos, no objetos) separados por coma |
| 401 / 402 / 403 | Mensajes concatenados desde error.error.errors[].messague separados por coma |
| 404 | "No se encontro el servidor de respuestas, consulte con el Administrador. ERROR 404" |
| 500 | "Error interno del servidor. ERROR 500" |
| Otro | "Error 404 consulte con su admin." |
Mensajes de error RENIEC/SUNAT
| Codigo HTTP | Mensaje mostrado |
|---|---|
| 400 | "No se encontraron datos para el numero ingresado. ERROR 400" |
| 401 / 402 / 403 | Mensajes concatenados desde error.error.errors[].messague |
| 404 | "No se encontro el servidor de respuestas, consulte con el Administrador. ERROR 404" |
| 500 | "Error interno del servidor. ERROR 500" |
| Otro | "Error 404 consulte con su admin." |
Endpoints utilizados
| Endpoint | Metodo | Descripcion |
|---|---|---|
/v2.0.3/erpx/rrhh/colaboradores/ | GET | Lista de colaboradores con paginacion y busqueda |
/v2.0.3/erpx/rrhh/colaboradores/ | POST | Crear nuevo colaborador |
/v2.0.3/erpx/rrhh/colaboradores/\{id\} | PUT | Actualizar colaborador existente |
/v2.0.3/erpx/rrhh/colaboradores/\{id\} | DELETE | Eliminar colaborador |
/v2.0.1/erpx/rrhh/roles/ | GET | Lista de roles disponibles |
/v2.0.1/erpx/global/paises/ | GET | Lista de paises |
https://apis-peru-7.facttu.com/api/v1/reniec/personas/\{dni\} | GET | Consulta RENIEC por DNI |
Problemas comunes
| Problema | Causa | Solucion |
|---|---|---|
| "Seleccione el tipo de documento" al buscar por DNI | No se selecciono tipo de documento antes de presionar buscar. | Selecciona DNI o Pasaporte en el campo Tipo documento primero. |
| "El DNI ingresado es incorrecto, ingrese un numero valido" | El numero de DNI no tiene exactamente 8 digitos. | Verifica que el DNI tenga exactamente 8 digitos numericos. |
| "No se encuentra el numero" | El numero ingresado no existe en la base de datos de RENIEC. | Verifica el numero de documento. Si es correcto, ingresa los datos de nombres y apellidos manualmente. |
| Departamento, Provincia y Distrito deshabilitados | No se selecciono el nivel superior en la cascada, o el pais no es PERU. | Selecciona PERU como pais para habilitar Departamento, luego selecciona departamento para habilitar Provincia, y asi sucesivamente. |
| Las listas de Departamento/Provincia/Distrito estan vacias | El cache de ubigeos no esta cargado en el navegador. | Cierra sesion e ingresa nuevamente para que el sistema recargue los datos de ubigeo en el cache local. |
| "Revise bien, hay formularios por validar" | Hay campos obligatorios sin completar. | Revisa los 8 campos obligatorios: Tipo documento, Numero documento, Nombres, Apellido paterno, Apellido materno, Fecha nacimiento, Sexo y Roles. |
| El campo Codigo dice "AUTOMATICO" y no se puede editar | Es modo creacion; el codigo se genera automaticamente al guardar en el servidor. | El codigo solo es editable cuando se esta editando un colaborador existente. |
| Los filtros no se aplican | Presionaste "Agregar filtro" pero no presionaste "Buscar". | Despues de agregar filtros, presiona el boton Buscar para ejecutar la consulta. |
Paginas relacionadas
- Panel RRHH — vista general del modulo de Recursos Humanos
- Horarios — asignacion de horarios de atencion a colaboradores
- Configuracion de Colaboradores — dias laborables y parametros globales
- Seguridad — gestion de usuarios y perfiles del sistema
Panel RRHH
Panel principal del modulo de Recursos Humanos que muestra el titulo del modulo y sirve como punto de entrada a los submodulos de gestion de personal.
Horarios
Asignacion y gestion de horarios de atencion para medicos y equipos medicos con calendario interactivo FullCalendar, especialidades, lugares de atencion, modalidades y tipos de atencion.