示例#1
0
        /// <summary>
        /// Obtiene la entidad FlujoAprobacionEstadioResponse de la Entidad FlujoAprobacionEstadioLogic
        /// </summary>
        /// <param name="objLogic">objeto logic de Flujo Aprobación Estadio</param>
        /// <param name="lstTrbajador">lista de trabajadores</param>
        /// <returns>Entidad Flujo Aprobacion Estadio</returns>
        public static FlujoAprobacionEstadioResponse ObtenerFlujoAprobacionEstadioResponseDeLogic(FlujoAprobacionEstadioLogic objLogic,
                                                                                                  List <TrabajadorResponse> lstTrbajador = null)
        {
            int li_index = -1;

            FlujoAprobacionEstadioResponse rpta = new FlujoAprobacionEstadioResponse();

            rpta.CodigoFlujoAprobacionEstadio = objLogic.CodigoFlujoAprobacionEstadio.ToString();
            rpta.CodigoFlujoAprobacion        = objLogic.CodigoFlujoAprobacion.ToString();
            rpta.Orden             = objLogic.Orden;
            rpta.Descripcion       = objLogic.Descripcion;
            rpta.CodigoResponsable = objLogic.CodigoResponsable;
            rpta.CorreoElectronico = objLogic.CorreoElectronico;
            if (lstTrbajador != null && lstTrbajador.Count > 0)
            {
                li_index = lstTrbajador.FindIndex(x => x.CodigoTrabajador.ToUpper().ToString() == objLogic.CodigoResponsable.ToUpper());
                if (li_index > -1)
                {
                    rpta.NombreRepresentante = lstTrbajador[li_index].NombreCompleto;
                }
                else
                {
                    rpta.NombreRepresentante = string.Empty;
                }
            }
            else
            {
                rpta.NombreRepresentante = string.Empty;
            }
            return(rpta);
        }
        /// <summary>
        /// Realiza la adaptación de campos para la búsqueda
        /// </summary>
        /// <param name="flujoAprobacionEstadioLogic">Entidad Lógica de Flujo de Aprobación</param>
        /// <returns>Clase Flujo Aprobación con los datos de búsqueda</returns>
        public static FlujoAprobacionEstadioResponse ObtenerFlujoAprobacionEstadioDescripcion(FlujoAprobacionEstadioLogic flujoAprobacionEstadioLogic)
        {
            FlujoAprobacionEstadioResponse flujoAprobacionEstadioResponse = new FlujoAprobacionEstadioResponse();

            flujoAprobacionEstadioResponse.Descripcion = flujoAprobacionEstadioLogic.Descripcion;

            return(flujoAprobacionEstadioResponse);
        }
        /// <summary>
        /// Realiza la adaptación de campos para la búsqueda
        /// </summary>
        /// <param name="flujoAprobacionEstadioLogic">Entidad Logica de flujo aprobacion</param>
        /// <param name="listaRepresentantes">Lista representantes</param>
        /// <param name="listaInformados">Lista Informados</param>
        /// <param name="listaResponsablesVinculadas">Responsables vinculadas</param>
        /// <returns>Clase Flujo Aprobacion con los datos de búsqueda</returns>
        public static FlujoAprobacionEstadioResponse ObtenerFlujoAprobacionEstadio(FlujoAprobacionEstadioLogic flujoAprobacionEstadioLogic, List <TrabajadorResponse> listaRepresentantes, List <TrabajadorResponse> listaInformados, List <TrabajadorResponse> listaResponsablesVinculadas)
        {
            var flujoAprobacionEstadioResponse = new FlujoAprobacionEstadioResponse();


            if (listaRepresentantes != null)
            {
                flujoAprobacionEstadioResponse.ListaNombreRepresentante = listaRepresentantes.ToDictionary(x => x.CodigoTrabajador, y => y.NombreCompleto);

                string[] as_trab = flujoAprobacionEstadioLogic.CodigosRepresentante.Split('/');
                string   nomTrab = string.Empty;
                int      li_find = -1;
                if (flujoAprobacionEstadioLogic.CodigosRepresentante.Trim().Length > 1)
                {
                    for (int li = 1; li < as_trab.Length; li++)
                    {
                        li_find = listaRepresentantes.FindIndex(x => x.CodigoTrabajador.ToString().ToLower().Equals(as_trab[li].ToLower()));

                        if (li_find != -1)
                        {
                            nomTrab = listaRepresentantes[li_find].NombreCompleto;
                            flujoAprobacionEstadioResponse.NombreRepresentante += "<span>" + nomTrab + "</span><br/>";
                        }
                    }
                }
                else
                {
                    flujoAprobacionEstadioResponse.NombreRepresentante = "";
                }
            }

            if (listaInformados != null)
            {
                flujoAprobacionEstadioResponse.ListaNombreInformado = listaInformados.ToDictionary(x => x.CodigoTrabajador, y => y.NombreCompleto);

                string[] as_trab = flujoAprobacionEstadioLogic.CodigosInformado.Split('/');
                string   nomTrab = string.Empty;
                int      li_find = -1;
                if (flujoAprobacionEstadioLogic.CodigosInformado.Trim().Length > 1)
                {
                    for (int li = 1; li < as_trab.Length; li++)
                    {
                        li_find = listaInformados.FindIndex(x => x.CodigoTrabajador.ToString().ToLower().Equals(as_trab[li].ToLower()));

                        if (li_find != -1)
                        {
                            nomTrab = listaInformados[li_find].NombreCompleto;
                            flujoAprobacionEstadioResponse.NombreInformado += "<span>" + nomTrab + "</span><br/>";
                        }
                    }
                }
                else
                {
                    flujoAprobacionEstadioResponse.NombreInformado = "";
                }
            }


            if (listaResponsablesVinculadas != null)
            {
                flujoAprobacionEstadioResponse.ListaNombreResponsableVinculadas = listaResponsablesVinculadas.ToDictionary(x => x.CodigoTrabajador, y => y.NombreCompleto);

                string[] as_trab = flujoAprobacionEstadioLogic.CodigosResponsableVinculadas.Split('/');
                string   nomTrab = string.Empty;
                int      li_find = -1;
                if (flujoAprobacionEstadioLogic.CodigosResponsableVinculadas.Trim().Length > 1)
                {
                    for (int li = 1; li < as_trab.Length; li++)
                    {
                        li_find = listaResponsablesVinculadas.FindIndex(x => x.CodigoTrabajador.ToString().ToLower().Equals(as_trab[li].ToLower()));

                        if (li_find != -1)
                        {
                            nomTrab = listaResponsablesVinculadas[li_find].NombreCompleto;
                            flujoAprobacionEstadioResponse.NombreResponsableVinculadas += "<span>" + nomTrab + "</span><br/>";
                        }
                    }
                }
                else
                {
                    flujoAprobacionEstadioResponse.NombreResponsableVinculadas = "";
                }
            }

            flujoAprobacionEstadioResponse.CodigoFlujoAprobacionEstadio = flujoAprobacionEstadioLogic.CodigoFlujoAprobacionEstadio.ToString();
            flujoAprobacionEstadioResponse.CodigoFlujoAprobacion        = flujoAprobacionEstadioLogic.CodigoFlujoAprobacion.ToString();
            flujoAprobacionEstadioResponse.Orden                   = flujoAprobacionEstadioLogic.Orden;
            flujoAprobacionEstadioResponse.Descripcion             = flujoAprobacionEstadioLogic.Descripcion;
            flujoAprobacionEstadioResponse.TiempoAtencion          = flujoAprobacionEstadioLogic.TiempoAtencion;
            flujoAprobacionEstadioResponse.HorasAtencion           = flujoAprobacionEstadioLogic.HorasAtencion;
            flujoAprobacionEstadioResponse.IndicadorVersionOficial = flujoAprobacionEstadioLogic.IndicadorVersionOficial;
            flujoAprobacionEstadioResponse.IndicadorPermiteCarga   = flujoAprobacionEstadioLogic.IndicadorPermiteCarga;
            flujoAprobacionEstadioResponse.IndicadorNumeroContrato = flujoAprobacionEstadioLogic.IndicadorNumeroContrato;
            flujoAprobacionEstadioResponse.IndicadorIncluirVisto   = flujoAprobacionEstadioLogic.IndicadorIncluirVisto;
            return(flujoAprobacionEstadioResponse);
        }