Ejemplo n.º 1
0
        /// <summary>
        /// Registrar la firma de un Trabajador.
        /// </summary>
        /// <param name="trabajador">Trabajador Request</param>
        /// <returns>Indicador con el resultado de la operación</returns>
        public ProcessResult <TrabajadorResponse> RegistrarFirmaTrabajador(TrabajadorRequest trabajador)
        {
            ProcessResult <TrabajadorResponse> resultado = new ProcessResult <TrabajadorResponse>();

            try
            {
                TrabajadorFirmaEntity entidad = new TrabajadorFirmaEntity();
                if (trabajador.CodigoFirma == Guid.Empty)
                {
                    entidad.Codigo           = Guid.NewGuid();
                    entidad.CodigoTrabajador = trabajador.CodigoTrabajador;
                    entidad.Firma            = trabajador.Firma;
                    trabajadorFirmaEntityRepository.Insertar(entidad);
                }
                else
                {
                    entidad       = trabajadorFirmaEntityRepository.GetById(trabajador.CodigoFirma);
                    entidad.Firma = trabajador.Firma;
                    trabajadorFirmaEntityRepository.Editar(entidad);
                }
                trabajadorFirmaEntityRepository.GuardarCambios();
                resultado.Result = new TrabajadorResponse {
                    CodigoFirma = entidad.Codigo.ToString(), CodigoTrabajador = entidad.CodigoTrabajador.ToString(), Firma = entidad.Firma
                };
            }
            catch (Exception ex)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(ex);
            }
            return(resultado);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Permite registrar validar
        /// </summary>
        /// <param name="filtro">Filtro</param>
        /// <returns>Resultado de la operación</returns>
        public JsonResult RegistrarValidar(TrabajadorRequest filtro)
        {
            var resultado = new ProcessResult <TrabajadorRequest>();

            try
            {
                var validacion = trabajadorService.BuscarTrabajador(new TrabajadorRequest {
                    CodigoIdentificacion = filtro.CodigoIdentificacion, Dominio = filtro.Dominio
                });
                if (validacion.Result.Count > 0)
                {
                    resultado.IsSuccess = false;
                    resultado.Exception = new ApplicationLayerException <TrabajadorController>(UsuarioAD.EtiquetaTrabajadorExiste);
                }
                else
                {
                    resultado = trabajadorService.RegistrarTrabajador(filtro);
                }
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorController>(e);
            }
            return(Json(resultado));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Obtiene una entidad de tipo trabajador
        /// </summary>
        /// <param name="data">Data</param>
        /// <returns>Entity de Trabajador</returns>
        public static TrabajadorEntity ObtenerTrabajadorEntity(TrabajadorRequest data)
        {
            var trabajadorEntity = new TrabajadorEntity();

            if (data.CodigoTrabajador != null)
            {
                trabajadorEntity.Codigo = data.CodigoTrabajador;
            }
            else
            {
                trabajadorEntity.Codigo = Guid.NewGuid();
            }
            trabajadorEntity.CodigoIdentificacion         = data.CodigoIdentificacion;
            trabajadorEntity.CodigoTipoDocumentoIdentidad = data.CodigoTipoDocumentoIdentidad;
            trabajadorEntity.NumeroDocumentoIdentidad     = data.NumeroDocumentoIdentidad;
            trabajadorEntity.ApellidoPaterno   = data.ApellidoPaterno;
            trabajadorEntity.ApellidoMaterno   = data.ApellidoMaterno;
            trabajadorEntity.Nombres           = data.Nombres;
            trabajadorEntity.NombreCompleto    = data.Nombres + ' ' + data.ApellidoPaterno + ' ' + data.ApellidoMaterno;
            trabajadorEntity.Organizacion      = data.Organizacion;
            trabajadorEntity.Cargo             = data.Cargo;
            trabajadorEntity.Departamento      = data.Departamento;
            trabajadorEntity.TelefonoTrabajo   = data.TelefonoTrabajo;
            trabajadorEntity.Anexo             = data.Anexo;
            trabajadorEntity.TelefonoMovil     = data.TelefonoMovil;
            trabajadorEntity.TelefonoPersonal  = data.TelefonoPersonal;
            trabajadorEntity.CorreoElectronico = data.CorreoElectronico;
            trabajadorEntity.Dominio           = data.Dominio;
            trabajadorEntity.EstadoRegistro    = trabajadorEntity.EstadoRegistro;
            return(trabajadorEntity);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Permite la búsqueda de Trabajadores
        /// </summary>
        /// <param name="nombreTrabajador">Nombre de Trabajador</param>
        /// <returns>Lista con el resultado de la operación</returns>
        public JsonResult BuscarTrabajador(string nombreTrabajador)
        {
            TrabajadorRequest filtro = new TrabajadorRequest();

            filtro.NombreCompleto = nombreTrabajador;
            Pe.Stracon.Politicas.Aplicacion.Core.Base.ProcessResult <List <TrabajadorDatoMinimoResponse> > resultado = trabajadorService.BuscarTrabajadorDatoMinimo(filtro);
            return(Json(resultado.Result, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Busca Trabajador
        /// </summary>
        /// <param name="filtroReq"></param>
        /// <returns>Lista con el resultado de la operación</returns>
        public JsonResult BuscarTrabajadorUO(string filtroReq)
        {
            TrabajadorRequest filtro = new TrabajadorRequest();

            filtro.NombreCompleto = filtroReq;
            ProcessResult <List <TrabajadorDatoMinimoResponse> > resultado = trabajadorService.BuscarTrabajadorDatoMinimo(filtro);

            return(Json(resultado.Result, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Registrar TrabajadorUnidadOperativa
        /// </summary>
        /// <param name="data">Trabajador Response</param>
        /// <returns>Indicador con el resultado de la operación</returns>
        public ProcessResult <TrabajadorRequest> RegistrarTrabajadorUnidadOperativa(TrabajadorRequest data)
        {
            ProcessResult <TrabajadorRequest> resultado = new ProcessResult <TrabajadorRequest>();

            try
            {
                if (string.IsNullOrEmpty(data.CodigoUnidadOperativaMatriz))
                {
                    resultado.IsSuccess = false;
                    resultado.Exception = new ApplicationLayerException <TrabajadorService>(MensajesSistema.UnidadOperativaMatrizObligatorio);
                    return(resultado);
                }

                var entidadEditar = trabajadorEntityRepository.GetById(data.CodigoTrabajador.Value);
                entidadEditar.CodigoUnidadOperativaMatriz  = new Guid(data.CodigoUnidadOperativaMatriz);
                entidadEditar.IndicadorTodaUnidadOperativa = data.IndicadorTodaUnidadOperativa;

                trabajadorEntityRepository.Editar(entidadEditar);

                if (!data.IndicadorTodaUnidadOperativa)
                {
                    var trabajadorUnidadOperativa = trabajadorLogicRepository.ListarTrabajadorUnidadOperativa(data.trabajadorUnidadOperativaRequest.CodigoUnidadOperativaMatriz, data.CodigoTrabajador.Value).Where(p => p.CodigoUnidadOperativa == data.trabajadorUnidadOperativaRequest.CodigoUnidadOperativa).FirstOrDefault();

                    TrabajadorUnidadOperativaEntity entidadTrabajadorUnidadOperativa = TrabajadorAdapter.ObtenerTrabajadorUnidadOperativaEntity(data.trabajadorUnidadOperativaRequest);

                    if (trabajadorUnidadOperativa == null)
                    {
                        trabajadorUnidadOperativaEntityRepository.Insertar(entidadTrabajadorUnidadOperativa);
                    }
                    else
                    {
                        entidadTrabajadorUnidadOperativa.CodigoUnidadOperativaMatriz     = entidadTrabajadorUnidadOperativa.CodigoUnidadOperativaMatriz;
                        entidadTrabajadorUnidadOperativa.CodigoTrabajadorUnidadOperativa = trabajadorUnidadOperativa.CodigoTrabajadorUnidadOperativa;
                        entidadTrabajadorUnidadOperativa.EstadoRegistro = DatosConstantes.EstadoRegistro.Activo;
                        entidadTrabajadorUnidadOperativa.FechaCreacion  = trabajadorUnidadOperativa.FechaCreacion;
                        trabajadorUnidadOperativaEntityRepository.Editar(entidadTrabajadorUnidadOperativa);
                    }

                    trabajadorUnidadOperativaEntityRepository.GuardarCambios();
                }

                trabajadorEntityRepository.GuardarCambios();
                resultado.Result = data;
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(e);
            }
            return(resultado);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Registrar Trabajador
        /// </summary>
        /// <param name="data">Trabajador Response</param>
        /// <returns>Indicador con el resultado de la operación</returns>
        public ProcessResult <TrabajadorRequest> RegistrarTrabajador(TrabajadorRequest data)
        {
            ProcessResult <TrabajadorRequest> resultado = new ProcessResult <TrabajadorRequest>();

            try
            {
                TrabajadorEntity entidad = TrabajadorAdapter.ObtenerTrabajadorEntity(data);
                entidad.UsuarioCreacion  = "";
                entidad.TerminalCreacion = "";
                entidad.FechaCreacion    = DateTime.Now;

                if (data.CodigoTrabajador == null)
                {
                    data.CodigoTrabajador = Guid.NewGuid();
                    trabajadorEntityRepository.Insertar(entidad);
                }
                else
                {
                    var entidadEditar = trabajadorEntityRepository.GetById(entidad.Codigo);
                    entidadEditar.CodigoTipoDocumentoIdentidad = entidad.CodigoTipoDocumentoIdentidad;;
                    entidadEditar.NumeroDocumentoIdentidad     = entidad.NumeroDocumentoIdentidad;
                    entidadEditar.ApellidoPaterno  = entidad.ApellidoPaterno;
                    entidadEditar.ApellidoMaterno  = entidad.ApellidoMaterno;
                    entidadEditar.Nombres          = entidad.Nombres;
                    entidadEditar.NombreCompleto   = entidad.NombreCompleto;
                    entidadEditar.Cargo            = entidad.Cargo;
                    entidadEditar.Organizacion     = entidad.Organizacion;
                    entidadEditar.Departamento     = entidad.Departamento;
                    entidadEditar.TelefonoTrabajo  = entidad.TelefonoTrabajo;
                    entidadEditar.Anexo            = entidad.Anexo;
                    entidadEditar.TelefonoMovil    = entidad.TelefonoMovil;
                    entidadEditar.TelefonoPersonal = entidad.TelefonoPersonal;
                    entidadEditar.Dominio          = entidad.Dominio;
                    trabajadorEntityRepository.Editar(entidadEditar);
                }

                trabajadorEntityRepository.GuardarCambios();
                resultado.Result = data;
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(e);
            }
            return(resultado);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Búsqueda de Trabajador
        /// </summary>
        /// <param name="filtro">Trabajador Request</param>
        /// <returns>Lista con resultados de busqueda</returns>
        public ProcessResult <List <TrabajadorResponse> > BuscarTrabajador(TrabajadorRequest filtro)
        {
            ProcessResult <List <TrabajadorResponse> > resultado = new ProcessResult <List <TrabajadorResponse> >();

            try
            {
                List <TrabajadorLogic> listado = trabajadorLogicRepository.BuscarTrabajador(filtro.CodigoTrabajador, filtro.CodigoIdentificacion, filtro.Dominio, filtro.CodigoTipoDocumentoIdentidad, filtro.NumeroDocumentoIdentidad, filtro.Nombres, filtro.NumeroPagina, filtro.RegistrosPagina);

                var listaTipoDocumento = politicaService.ListarTipoDocumentoIdentidad(null, "3");
                resultado.Result = listado.Select(u => TrabajadorAdapter.ObtenerTrabajadorPaginado(u, listaTipoDocumento.Result)).ToList();
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(e);
            }

            return(resultado);
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Búsqueda de la firma de un Trabajador.
        /// </summary>
        /// <param name="trabajador">Trabajador Request</param>
        /// <returns>Lista con resultados de busqueda</returns>
        public ProcessResult <TrabajadorResponse> BuscarFirmaTrabajador(TrabajadorRequest trabajador)
        {
            ProcessResult <TrabajadorResponse> resultado = new ProcessResult <TrabajadorResponse>();

            try
            {
                var dato = trabajadorLogicRepository.BuscarFirmaTrabajador(TrabajadorAdapter.ObtenerTrabajadorEntity(trabajador));
                if (dato != null)
                {
                    resultado.Result = TrabajadorAdapter.ObtenerTrabajadorPaginado(dato, null);
                }
            }
            catch (Exception ex)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(ex);
            }
            return(resultado);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Permite registrar el trabajador
        /// </summary>
        /// <param name="filtro">Filtro</param>
        /// <returns>Resultado de la operación</returns>
        public JsonResult RegistrarTrabajadorUnidadOperativa(TrabajadorRequest filtro)
        {
            var resultado = trabajadorService.RegistrarTrabajadorUnidadOperativa(filtro);

            return(Json(resultado));
        }
Ejemplo n.º 11
0
        /// <summary>
        /// Permite buscar el trabajador
        /// </summary>
        /// <param name="filtro">Filtro</param>
        /// <returns>Retorna el trabajador</returns>
        public JsonResult Buscar(TrabajadorRequest filtro)
        {
            var resultado = trabajadorService.BuscarTrabajador(filtro);

            return(Json(resultado));
        }
Ejemplo n.º 12
0
        /// <summary>
        /// Busca Bandeja Flujo Aprobacion Estadios
        /// </summary>
        /// <param name="filtro"></param>
        /// <returns>Lista Flujo Aprobación Estadio</returns>
        public ProcessResult <List <FlujoAprobacionEstadioResponse> > BuscarBandejaFlujoAprobacionEstadio(string codigoFlujoAprobacionEstadio, string codigoFlujoAprobacion, bool obtenerInformacionRepresentante = false)
        {
            ProcessResult <List <FlujoAprobacionEstadioResponse> > resultado = new ProcessResult <List <FlujoAprobacionEstadioResponse> >();
            TrabajadorRequest trabajador = new TrabajadorRequest();

            try
            {
                Guid?CodigoFlujoAprobacionEstadio = (codigoFlujoAprobacionEstadio != null && codigoFlujoAprobacionEstadio.ToString() != "") ? new Guid(codigoFlujoAprobacionEstadio.ToString()) : (Guid?)null;
                Guid?CodigoFlujoAprobacion        = (codigoFlujoAprobacion != null && codigoFlujoAprobacion.ToString() != "") ? new Guid(codigoFlujoAprobacion.ToString()) : (Guid?)null;

                List <FlujoAprobacionEstadioLogic> listado = flujoAprobacionLogicRepository.BuscarBandejaFlujoAprobacionEstadio(
                    CodigoFlujoAprobacionEstadio,
                    CodigoFlujoAprobacion
                    );


                int          li_indexTrb              = -1;
                List <Guid?> lstRepresentantes        = new List <Guid?>();
                List <Guid?> lstInformados            = new List <Guid?>();
                List <Guid?> lstResponsableVinculadas = new List <Guid?>();

                string[] listaRepresentantes;
                string[] listaInformados;
                string[] listaResponsableVinculadas;

                foreach (var item in listado)
                {
                    if (obtenerInformacionRepresentante)
                    {
                        listaRepresentantes = item.CodigosRepresentante.Split('/');
                        if (item.CodigosRepresentante.Trim().Length > 1)
                        {
                            for (int li = 1; li < listaRepresentantes.Length; li++)
                            {
                                li_indexTrb = lstRepresentantes.FindIndex(x => x.Value.ToString().ToLower() == listaRepresentantes[li].ToLower());
                                if (li_indexTrb == -1)
                                {
                                    lstRepresentantes.Add(Guid.Parse(listaRepresentantes[li]));
                                }
                            }
                        }

                        listaInformados = item.CodigosInformado.Split('/');
                        if (item.CodigosInformado.Trim().Length > 1)
                        {
                            for (int li = 1; li < listaInformados.Length; li++)
                            {
                                li_indexTrb = lstInformados.FindIndex(x => x.Value.ToString().ToLower() == listaInformados[li].ToLower());
                                if (li_indexTrb == -1)
                                {
                                    lstInformados.Add(Guid.Parse(listaInformados[li]));
                                }
                            }
                        }

                        if (!string.IsNullOrEmpty(item.CodigosResponsableVinculadas))
                        {
                            listaResponsableVinculadas = item.CodigosResponsableVinculadas.Split('/');

                            for (int li = 1; li < listaResponsableVinculadas.Length; li++)
                            {
                                li_indexTrb = lstResponsableVinculadas.FindIndex(x => x.Value.ToString().ToLower() == listaResponsableVinculadas[li].ToLower());
                                if (li_indexTrb == -1)
                                {
                                    lstResponsableVinculadas.Add(Guid.Parse(listaResponsableVinculadas[li]));
                                }
                            }
                        }
                    }
                }

                List <TrabajadorResponse> listaRepresentante          = null;
                List <TrabajadorResponse> listaInformado              = null;
                List <TrabajadorResponse> listaResponsablesVinculadas = null;

                if (obtenerInformacionRepresentante)
                {
                    listaRepresentante          = trabajadorService.ListarTrabajadores(lstRepresentantes).Result;
                    listaInformado              = trabajadorService.ListarTrabajadores(lstInformados).Result;
                    listaResponsablesVinculadas = trabajadorService.ListarTrabajadores(lstResponsableVinculadas).Result;
                }

                resultado.Result = new List <FlujoAprobacionEstadioResponse>();
                foreach (var registro in listado)
                {
                    var flujoAprobacionEstadio = FlujoAprobacionEstadioAdapter.ObtenerFlujoAprobacionEstadio(registro, listaRepresentante, listaInformado, listaResponsablesVinculadas);
                    resultado.Result.Add(flujoAprobacionEstadio);
                }
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <FlujoAprobacionService>(e);
            }
            return(resultado);
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Búsqueda de TrabajadorSuplente
        /// </summary>
        /// <param name="filtro">Trabajador Request</param>
        /// <returns>Lista con resultados de busqueda</returns>
        public ProcessResult <List <TrabajadorSuplenteResponse> > BuscarTrabajadorSuplente(TrabajadorRequest filtro)
        {
            ProcessResult <List <TrabajadorSuplenteResponse> > resultado = new ProcessResult <List <TrabajadorSuplenteResponse> >();

            try
            {
                List <TrabajadorSuplenteLogic> listado = trabajadorLogicRepository.ListarTrabajadorSuplente(filtro.CodigoTrabajador.Value);
                resultado.Result = listado.Select(u => TrabajadorAdapter.ObtenerTrabajadorSuplenteResponse(u)).ToList();
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(e);
            }

            return(resultado);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Búsqueda de Trabajador
        /// </summary>
        /// <param name="filtro">Trabajador Request</param>
        /// <returns>Lista con resultados de busqueda</returns>
        public ProcessResult <List <TrabajadorDatoMinimoResponse> > BuscarTrabajadorDatoMinimo(TrabajadorRequest filtro)
        {
            ProcessResult <List <TrabajadorDatoMinimoResponse> > resultado = new ProcessResult <List <TrabajadorDatoMinimoResponse> >();

            try
            {
                resultado.Result = new List <TrabajadorDatoMinimoResponse>();
                List <TrabajadorLogic> listado = trabajadorLogicRepository.BuscarTrabajadorDatoMinimo(filtro.Dominio, filtro.CodigoIdentificacion, filtro.NombreCompleto, filtro.CorreoElectronico);
                foreach (TrabajadorLogic item in listado)
                {
                    TrabajadorDatoMinimoResponse tdm = new TrabajadorDatoMinimoResponse();
                    tdm = TrabajadorAdapter.ObtenerTrabajadorDatoMinimo(item);
                    resultado.Result.Add(tdm);
                }
            }
            catch (Exception ex)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <TrabajadorService>(ex);
            }
            return(resultado);
        }