コード例 #1
0
        /// <summary>
        /// Método para obtener un diccionario con los valores de los Tipos de Autorizacion que se envía como parámetro para el llenado del combo correspondiente
        /// </summary>
        /// <returns>Diccionario de tipo string,string</returns>
        private Dictionary <int, string> ObtenerUnidadesOperativas()
        {
            try {
                Dictionary <int, string> listaUnidadesOperativas = new Dictionary <int, string>();
                List <AdscripcionBO>     lstAdscripcion          = FacadeBR.ConsultarAdscripcionSeguridad(dctx, new AdscripcionBO(), this.vista.Usuario);

                var grupoUnidadOperativa = lstAdscripcion.GroupBy(ad => ad.UnidadOperativa.Id);
                foreach (var unidadID in grupoUnidadOperativa)
                {
                    if (unidadID.Key == null)
                    {
                        continue;
                    }

                    UnidadOperativaBO unidadBO = lstAdscripcion.FirstOrDefault(ad => ad.UnidadOperativa.Id == unidadID.Key.Value).UnidadOperativa;
                    if (unidadBO.Id != null && !string.IsNullOrWhiteSpace(unidadBO.Nombre) && unidadBO.Id != (int)ETipoEmpresa.Idealease)
                    {
                        listaUnidadesOperativas.Add((int)unidadBO.Id, unidadBO.Nombre);
                    }
                }
                return(listaUnidadesOperativas);
            } catch (Exception ex) {
                throw new Exception(this.nombreClase + ".ListaTiposAutorizacion:Error al consultar las Unidades Operativas");
            }
        }
コード例 #2
0
        public void ObtenerDatosAdscripcion()
        {
            try
            {
                #region listaAdscripcion

                #region SC0004
                var adscripcionParam = vista.Adscripcion ?? new AdscripcionBO();
                #endregion

                List <AdscripcionBO> lstAdscripcion = FacadeBR.ConsultarAdscripcionSeguridad(dataContext, adscripcionParam, this.vista.Usuario);
                if (lstAdscripcion.Count > 0)
                {
                    //Valida si solo hay 1 unidad operativa diferente entre las adscripciones para poder pasar directo
                    if (lstAdscripcion.GroupBy(i => i.UnidadOperativa.Id, (key, group) => group.First()).ToList().Count == 1)
                    {
                        #region SC0004
                        // Ubicar la Adscripcion con Sucursal y Departamento Nulos
                        var adscripcionSeleccionada =
                            lstAdscripcion.FirstOrDefault(x =>
                                                          (x.Sucursal == null || x.Sucursal.Id == null) &&
                                                          (x.Departamento == null || x.Departamento.Id == null));

                        // Si no Existe, generar una adscripcion con Sucursal y Departamento Nulos.
                        if (adscripcionSeleccionada == null)
                        {
                            adscripcionSeleccionada = new AdscripcionBO {
                                UnidadOperativa = lstAdscripcion.First().UnidadOperativa, Sucursal = new SucursalBO(), Departamento = new DepartamentoBO()
                            }
                        }
                        ;
                        #endregion
                        //RQM 14078
                        lstAdscripciones.Add(adscripcionSeleccionada);
                        SeleccionarAdscripcion(adscripcionSeleccionada);
                    }
                    else
                    {
                        //RQM 14078
                        lstAdscripciones = lstAdscripcion;

                        vista.Adscripciones = lstAdscripcion;
                        this.vista.CargarDatosAdscripcion();
                    }
                }
                else
                {
                    this.vista.MostrarMensaje("No tiene permisos configurados para trabajar con el sistema o sus permisos han caducado." +
                                              "Para mas información póngase en contacto con el administrador del sistema", ETipoMensajeIU.INFORMACION);
                }
                #endregion
            } catch (Exception ex) {
                this.vista.MostrarMensaje("Surgió un error al obtener las adscripciones, si el problema persiste, contacte con el administrador del sistema",
                                          ETipoMensajeIU.ERROR, ex.Message);
            }
        }