public ListaPessoaDataImportante(DataRelevante data)
        {
            StringBuilder telefones = new StringBuilder();

            InitializeComponent();

            foreach (Telefone telefone in data.Pessoa.Telefones)
            {
                if (telefones.Length > 0)
                    telefones.AppendLine();

                telefones.Append(telefone.Número);

                break;
            }

            lblPrimária.Text = data.Pessoa.Nome;

            lblSecundária.Text = telefones.ToString();
            lblDescrição.Text = string.Format(
                "{0:dd/MM} - {1} {2}",
                data.Data, DateTime.Now.Year - data.Data.Year,
                DateTime.Now.Year - data.Data.Year > 1 ? "anos" : "ano");

            this.data = data;

            picFoto.Image = ControladorÍconePessoa.ObterÍcone(data.Pessoa);
        }
Exemplo n.º 2
0
        private static List<DataRelevante> ObterLista(string consulta, int inicioDataRelevante, int inicioPessoa, int inicioPessoaFisica)
        {
            List<DataRelevante> lista = new List<DataRelevante>();

            IDataReader leitor = null;
            IDbConnection conexao = Conexão;

            lock (conexao)
            {
                Usuários.UsuárioAtual.GerenciadorConexões.RemoverConexão(conexao);
                using (IDbCommand cmd = conexao.CreateCommand())
                {
                    cmd.CommandText = consulta;

                    try
                    {
                        using (leitor = cmd.ExecuteReader())
                            while (leitor.Read())
                            {
                                PessoaFísica pessoa = PessoaFísica.Obter(leitor, inicioPessoa, inicioPessoaFisica);

                                DataRelevante data = new DataRelevante(pessoa);
                                data.data = leitor.GetDateTime(inicioDataRelevante + 1);
                                data.descrição = leitor.GetString(inicioDataRelevante + 2);
                                data.alertar = leitor.GetBoolean(inicioDataRelevante + 3);

                                lista.Add(data);
                            }
                    }
                    finally
                    {
                        if (leitor != null)
                            leitor.Close();

                        Usuários.UsuárioAtual.GerenciadorConexões.AdicionarConexão(conexao);
                    }
                }
            }

            return lista;
        }
        protected void AdicionarDatasRelevantes(DataRelevante[] datas, int? limite)
        {
            this.datas = datas;

            quadroDatasRelevantes.Visible = false;

            ListaPessoaDataImportante[] itens = new ListaPessoaDataImportante[datas.Length];
            int x = 0;
            
            foreach (DataRelevante data in datas)
                itens[x++] = new ListaPessoaDataImportante(data);

            listaDatasRelevantes.Itens.AddRange(itens);
            
            quadroDatasRelevantes.Visible = listaDatasRelevantes.Itens.Count > 0;
        }
 protected void AdicionarDatasRelevantes(DataRelevante[] datas)
 {
     AdicionarDatasRelevantes(datas, QtdMáximaDatasInicialmenteMostradas);
 }
        private void listaDatasRelevantes_Scroll(object sender, ScrollEventArgs e)
        {
            if (listaDatasRelevantes.Itens.Count < datas.Length)
            {
                AguardeDB.Mostrar();
                
                int jaTinham = listaDatasRelevantes.Itens.Count;

                DataRelevante[] restantes = new DataRelevante[datas.Length - jaTinham];
                for (int x = 0; x < restantes.Length; x++)
                {
                    restantes[x] = datas[jaTinham + x];
                }

                AdicionarDatasRelevantes(restantes, null);

                AguardeDB.Fechar();
            }
        }
        private static void CarregaTelefones(DataRelevante[] datas)
        {
            List<Entidades.Pessoa.Pessoa> lstPessoas = new List<Entidades.Pessoa.Pessoa>(datas.Length);
            for (int x = 0; x < datas.Length; x++)
                lstPessoas.Add(datas[x].Pessoa);

            Telefone.PreencherTelefonesUsandoCache(lstPessoas);
        }