Exemple #1
0
        public void SeleccionarEntidad(TEntidad entidad)
        {
            if (entidad == null && this.Entidad == null)
            {
                this.Entidad = new TEntidad();
            }
            else
            {
                if (entidad != null)
                {
                    var parametros = new ListaParametrosDeBusqueda();
                    if (ObtenerParametros != null)
                    {
                        parametros.Parametros = ObtenerParametros();
                    }
                    this.Entidad = this.Servicio.ObtenerPorCodigo(entidad.Codigo, this.CargaRelaciones, Sistema.Instancia.EmpresaActual.Codigo, parametros);
                }
                else
                {
                    this.Entidad = new TEntidad();
                }
            }

            //this.Entidad = entidad;
            if (this.Entidad != null && this.CambioEntidad != null)
            {
                //este lo usa el presentador maestro detalle. NO LO BORRES
                var args = new ArgumentoGenerico <TEntidad>(this.Entidad);
                this.CambioEntidad(this, args);
            }
        }
        /// <summary>
        /// Busca el parametro en todos los campos de la entidad y los guarda en Resultados.
        /// Usa servicioBuscar para realizar la busqueda.
        /// </summary>
        /// <param name="param">string de busqueda</param>
        public bool ObtenerResultados(string param)
        {
            if (param != null)
            {
                var controlador = this;
                controlador.Items.Clear();
                controlador.Resultados.Clear();
                ListaParametrosDeBusqueda parametros = new ListaParametrosDeBusqueda();
                if (ObtenerParametros != null)
                {
                    parametros.Parametros = ObtenerParametros();
                }
                //aca pasar parametros

                try
                {
                    var resultados = this.ServicioBuscar(param, parametros);
                    if (resultados.Any())
                    {
                        resultados.ForEach(r => this.Resultados.Add(r));
                    }
                }
                catch (CommunicationException ex)
                {
                    Mensajes.Aviso("Demasiados resultados para '" + param + "'. Sea mas específico.");
                    this.Servicio = FabricaClienteServicio.Instancia.CrearCliente <IServicioABM <TEntidad> >();
                }
            }
            return(true);
        }
Exemple #3
0
        public ICollection <DTO.Preventa.CoordenadaCliente> ObtenerCoordenadasPorPreventista(string codigoPreventista, DateTime dia, string empresa)
        {
            var coordenadas = new List <CoordenadaCliente>();
            var clientes    = new List <Inteldev.Fixius.Servicios.DTO.Clientes.Cliente>();
            var parametros  = new ListaParametrosDeBusqueda();

            var para = new ParameterOverride[2];

            para[0] = new ParameterOverride("empresa", empresa);
            para[1] = new ParameterOverride("entidad", "CoordenadaCliente");

            var buscadorCoordenada = (BuscadorCoordenadaClienteDTO)FabricaNegocios.Instancia.Resolver(typeof(IBuscadorCoordenadaClienteDTO), para);

            coordenadas = buscadorCoordenada.ObtenerCoordenadasDeClientes(codigoPreventista, dia);

            return(coordenadas);
        }
Exemple #4
0
        public List <ResultadoBusqueda <Tdto> > Buscar(string busqueda, ListaParametrosDeBusqueda parametros = null)
        {
            List <ResultadoBusqueda <Tdto> > resultado = new List <ResultadoBusqueda <Tdto> >();

            Block.Busqueda = busqueda;
            List <object> listaPropiedades = new List <object>();
            var           dto         = Activator.CreateInstance(typeof(Tdto));
            var           propiedades = dto.GetType().GetProperties();

            foreach (var prop in propiedades)
            {
                if (prop.GetCustomAttributes(true).OfType <IncluirEnBuscadorAttribute>().Any())
                {
                    listaPropiedades.Add(prop);
                }
            }
            var mapeador = FabricaNegocios._Resolver <IMapeadorGenerico <Modelo.ParametrosMiniBusca, DTO.ParametrosMiniBusca> >();

            Block.AgregarPartes(listaPropiedades, mapeador.ToListEntidad(parametros.Parametros));
            foreach (var parte in Block.ObtenerPartes())
            {
                //var consulta = parte.ArmaConsulta(Buscador.ConsultaSimple(CargarRelaciones.CargarEntidades));
                //var lista = Buscador.BuscarLista(consulta, CargarRelaciones.CargarEntidades);
                var consulta = parte.ArmaConsulta(Buscador.ConsultaSimple(CargarRelaciones.NoCargarNada));
                var lista    = Buscador.BuscarLista(consulta, CargarRelaciones.NoCargarNada);
                if (lista != null)
                {
                    var parteResultado = new ResultadoBusqueda <Tdto>();
                    parteResultado.Nombre = parte.Nombre;
                    parteResultado.Lista  = Mapeador.ToListDto(lista.OrderBy(x => x.GetType().GetProperty(parte.Nombre)).ToList());
                    if (parteResultado.CantidadDeItems != 0)
                    {
                        resultado.Add(parteResultado);
                    }
                }
            }
            if (resultado.Count == 0)
            {
                var parteResultado = new ResultadoBusqueda <Tdto>();
                parteResultado.Nombre = "Sin resultados";
                parteResultado.Lista  = Mapeador.ToListDto(new List <TEntidad>());
                resultado.Add(parteResultado);
            }
            return(resultado);
        }
Exemple #5
0
 public virtual object BuscarPorId(object p)
 {
     try
     {
         var parametros = new ListaParametrosDeBusqueda();
         if (ObtenerParametros != null)
         {
             parametros.Parametros = ObtenerParametros();
         }
         var ent = this.Servicio.ObtenerPorCodigo(p.ToString().PadLeft(this.cantidadNumeros, '0'), CargarRelaciones.NoCargarNada, Sistema.Instancia.EmpresaActual.Codigo, parametros);
         this.SeleccionarEntidad(ent);
     }
     catch (Exception ex)
     {
         Mensajes.Error(ex);
         this.Servicio = FabricaClienteServicio.Instancia.CrearCliente <IServicioABM <TEntidad> >();
     }
     return(true);
 }
        public void Inicializador(IServicioABM <TEntidad> servicio, IPresentadorBuscador buscador)
        {
            this.EtiquetaBotonNuevo = "Nuevo";
            this.Servicio           = servicio;
            this.Buscador           = buscador;
            //this.VistaModeloListado = FabricaPresentadores.Instancia.Resolver<VistaModeloLista<TEntidad>>();

            this.Entidades         = new System.Collections.ObjectModel.ObservableCollection <TEntidad>();
            this.EntidadesAbiertas = new ObservableCollection <TVistaModelo>();
            this.Configurar();
            if (Sistema.Instancia.EmpresaActual == null)
            {
                Sistema.Instancia.EmpresaActual = new DTO.Organizacion.Empresa()
                {
                    Codigo = ""
                };
            }
            var parametros = new ListaParametrosDeBusqueda();

            this.Servicio.ObtenerPorCodigo("xxxxxxxxxxxxxxxxx", CargarRelaciones.NoCargarNada, "01", parametros);
        }
        public virtual List <ResultadoBusqueda <TDto> > ObtenerResultados(string busqueda, string empresa, ListaParametrosDeBusqueda parametros = null)
        {
            ParameterOverride[] para = { new ParameterOverride("empresa", empresa), new ParameterOverride("entidad", typeof(TEntidad).Name.ToLower()) };
            var buscaResultados      = (IContextoDeBusqueda <TEntidad, TDto>)FabricaNegocios.Instancia.Resolver(typeof(IContextoDeBusqueda <TEntidad, TDto>), para);
            //a cambiar el contexto de busqueda para que acepte parametros
            var resultado = buscaResultados.Buscar(busqueda, parametros);

            return(resultado);
        }
        public virtual TDto ObtenerPorCodigo(object codigo, CargarRelaciones cargarEntidades, string empresa, ListaParametrosDeBusqueda parametros = null)
        {
            ParameterOverride[] para = { new ParameterOverride("empresa", empresa), new ParameterOverride("entidad", typeof(TEntidad).Name.ToLower()) };
            var buscador             = (IBuscadorDTO <TEntidad, TDto>)FabricaNegocios.Instancia.Resolver(typeof(IBuscadorDTO <TEntidad, TDto>), para);
            var dto = buscador.BuscarPorCodigo <TEntidad>(codigo, cargarEntidades, parametros == null ? null : parametros.Parametros);

            return(dto);
        }