public void LoadFormCrud(modelocrud modelo, bool detalhes, bool deletar, bool atualizar, Form Atual) { if (!detalhes && !deletar && !atualizar && Atual.IsMdiContainer) { Form = formCadastro; Form.MdiParent = Atual; } else if (detalhes && Form == null || deletar && Form == null || atualizar && Form == null) { try { var lista = modelocrud.listTypesSon(typeof(WFCrud)); var listaTypes = modelocrud.listTypesSon(typeof(modelocrud)); Type BaseModel = modelocrud.ReturnBase(modelo.GetType()); foreach (var item in listaTypes) { foreach (var item2 in lista) { if ("Frm" + BaseModel.Name == item2.Name) { Form = (WFCrud)Activator.CreateInstance(item2); break; } else if ("Frm" + modelo.GetType().Name == item2.Name) { Form = (WFCrud)Activator.CreateInstance(item2); break; } } if (Form != null) { Form.MdiParent = Atual.MdiParent; break; } } } catch { MessageBox.Show("Erro ao abrir form crud!!!"); } } else { Form.MdiParent = Atual.MdiParent; } Form.modelo = modelo; Form.CondicaoDetalhes = detalhes; Form.CondicaoDeletar = deletar; Form.CondicaoAtualizar = atualizar; Form.LoadCrudForm(); Form.Show(); }
private void VerficaPropertyClassSetProperties(Type tipo, int id) { try { foreach (var item in tipo.GetProperties().Where(p => !p.PropertyType.IsAbstract && p.PropertyType != typeof(string) && p.PropertyType != typeof(DateTime) && p.PropertyType.Name != "List`1" && p.PropertyType.IsClass && p.GetType().GetProperties() .Where(pr => p.ReflectedType == pr.DeclaringType && pr.Name == "Id").ToList().Count == 1).ToList()) { object objeto = Activator.CreateInstance(item.PropertyType); modelocrud modelo = (modelocrud)objeto; modelo.Id = id; modelo.stringConexao = BDcomum.conecta1; modelo.executando = true; if (modelo.GetType().GetProperties() .Where(p => p.ReflectedType == p.DeclaringType && p.Name == "Id").ToList().Count == 1) { modelo.recuperar(Model.Id); } foreach (var item2 in Model.GetType().GetProperties()) { if (item == item2) { item2.SetValue(Model, modelo); } } } } catch (Exception ex) { throw new Exception(ex.InnerException.Message); } }
public void MudarEstado(int idVelhoEstado, modelocrud m) { string estado = ""; modelocrud p = null; if (m is Pessoa) { p = buscarConcreto(typeof(Pessoa), idVelhoEstado); } if (m is Ministerio) { p = buscarConcreto(typeof(Ministerio), idVelhoEstado); } estado = p.GetType().Name; p.excluir(idVelhoEstado, "", true, 4); var propsList = m.GetType().GetProperties().Where(pro => pro.PropertyType.Name == "List`1").ToList(); foreach (var item in propsList) { item.SetValue(m, item.GetValue(p)); } m.Id = 0; try { m.salvar("", true, 4); } catch (Exception ex) { p.Insert_padrao += "92sfgg 75293845"; p.salvar("", true, 4); throw new Exception(ex.Message); } new MudancaEstado { novoEstado = m.GetType().Name, velhoEstado = estado, Data = DateTime.Now, Codigo = (int)m.GetType().GetProperty("Codigo").GetValue(m) }.salvar(); }
private string VerficaPropertyClassDeleteProperties(Type type) { try { string delete = ""; foreach (var item in type.GetProperties().Where(p => !p.PropertyType.IsAbstract && p.PropertyType != typeof(string) && p.PropertyType != typeof(DateTime) && p.PropertyType.Name != "List`1" && p.PropertyType.IsClass).ToList()) { object objeto = Activator.CreateInstance(item.PropertyType); modelocrud modelo = (modelocrud)objeto; modelo.Id = Model.Id; if (modelo.GetType().GetProperties() .Where(p => p.ReflectedType == p.DeclaringType && p.Name == "Id").ToList().Count == 1) { delete += $" delete from {modelo.GetType().Name} where Id='{Model.Id}' "; } } return(delete); } catch (Exception ex) { throw new Exception(ex.InnerException.Message); } }
public List <modelocrud> BuscarPorRestricao(modelocrud modelo, string tipo, string comando) { var comand = ""; var innerjoin = ""; DataTable dtable = new DataTable(); if (modelo is business.classes.Abstrato.Membro) { innerjoin = " inner join Membro as MEM on M.Id=MEM.Id inner join PessoaDado as PD on MEM.Id=P.Id" + " inner join Pessoa as P on PD.Id=P.Id"; } if (modelo is business.classes.Abstrato.MembroLgpd) { innerjoin = " inner join MembroLgpd as MEM on M.Id=MEM.Id inner join PessoaLgpd as PL on MEM.Id=P.Id" + " inner join Pessoa as P on PD.Id=P.Id"; } if (modelo is business.classes.Pessoas.PessoaDado) { innerjoin = " inner join PessoaDado as PD on M.Id=P.Id inner join Pessoa as P on PD.Id=P.Id "; } if (modelo is business.classes.Pessoas.PessoaLgpd) { innerjoin = " inner join PessoaLgpd as PD on M.Id=P.Id inner join Pessoa as P on PD.Id=P.Id "; } if (modelo != null) { comand = $"select * from {modelo.GetType().Name} as M {innerjoin} "; } if (modelo == null) { comand = $"select * from {tipo} as M {innerjoin} "; } if (comando != "") { comand += $" where {comando} "; } SqlCommand c = new SqlCommand(comand, bd.obterconexao()); SqlDataAdapter objadp = new SqlDataAdapter(c); objadp.Fill(dtable); if (modelo == null && tipo == "Pessoa" || modelo == null && tipo == "PessoaLgpd" || modelo is business.classes.Pessoas.Visitante || modelo is business.classes.Pessoas.Crianca || modelo is business.classes.Pessoas.Membro_Aclamacao || modelo is business.classes.Pessoas.Membro_Batismo || modelo is business.classes.Pessoas.Membro_Reconciliacao || modelo is business.classes.Pessoas.Membro_Transferencia || modelo is business.classes.PessoasLgpd.VisitanteLgpd || modelo is business.classes.PessoasLgpd.CriancaLgpd || modelo is business.classes.PessoasLgpd.Membro_AclamacaoLgpd || modelo is business.classes.PessoasLgpd.Membro_BatismoLgpd || modelo is business.classes.PessoasLgpd.Membro_ReconciliacaoLgpd || modelo is business.classes.PessoasLgpd.Membro_TransferenciaLgpd) { List <modelocrud> l = new List <modelocrud>(); var listaPessoa = business.classes.Abstrato.Pessoa.recuperarTodos() .OfType <business.classes.Abstrato.Pessoa>().ToList(); var lista = new List <modelocrud>(); foreach (var itemlista in listaPessoa) { lista.Add(itemlista.recuperar(itemlista.IdPessoa)[0]); } foreach (var item in dtable.Select("")) { l.Add(lista.OfType <business.classes.Abstrato.Pessoa>() .First(i => i.IdPessoa == int.Parse(item["IdPessoa"].ToString()))); } return(l); } if (modelo == null && tipo == "Ministerio" || modelo is business.classes.Ministerio.Lider_Celula || modelo is business.classes.Ministerio.Lider_Celula_Treinamento || modelo is business.classes.Ministerio.Lider_Ministerio || modelo is business.classes.Ministerio.Lider_Ministerio_Treinamento || modelo is business.classes.Ministerio.Supervisor_Celula || modelo is business.classes.Ministerio.Supervisor_Celula_Treinamento || modelo is business.classes.Ministerio.Supervisor_Ministerio || modelo is business.classes.Ministerio.Supervisor_Ministerio_Treinamento) { List <modelocrud> l = new List <modelocrud>(); var listaMinisterio = business.classes.Abstrato.Ministerio.recuperarTodosMinisterios() .OfType <business.classes.Abstrato.Ministerio>().ToList(); var lista = new List <modelocrud>(); foreach (var itemlista in listaMinisterio) { lista.Add(itemlista.recuperar(itemlista.IdMinisterio)[0]); } foreach (var item in dtable.Select("")) { l.Add(lista.OfType <business.classes.Abstrato.Ministerio>() .First(i => i.IdMinisterio == int.Parse(item["IdMinisterio"].ToString()))); } return(l); } if (modelo == null && tipo == "Celula" || modelo is business.classes.Celulas.Celula_Adolescente || modelo is business.classes.Celulas.Celula_Adulto || modelo is business.classes.Celulas.Celula_Casado || modelo is business.classes.Celulas.Celula_Crianca || modelo is business.classes.Celulas.Celula_Jovem) { List <modelocrud> l = new List <modelocrud>(); var listaCelula = business.classes.Abstrato.Celula.recuperarTodasCelulas() .OfType <business.classes.Abstrato.Celula>().ToList(); var lista = new List <modelocrud>(); foreach (var itemlista in listaCelula) { lista.Add(itemlista.recuperar(itemlista.IdCelula)[0]); } foreach (var item in dtable.Select("")) { l.Add(lista.OfType <business.classes.Abstrato.Celula>() .First(i => i.IdCelula == int.Parse(item["IdCelula"].ToString()))); } return(l); } if (modelo is business.classes.Historico || modelo is business.classes.Reuniao || modelo is business.classes.Chamada || modelo is business.classes.MudancaEstado || modelo is business.classes.Endereco || modelo is business.classes.Telefone) { List <modelocrud> l = new List <modelocrud>(); foreach (var item in dtable.Select("")) { l.Add(modelo.recuperar(int.Parse(item["Id"].ToString()))[0]); } return(l); } return(null); }
public void Clicar(Form formularioAtual, string function, modelocrud Modelo = null, bool detalhes = false, bool deletar = false, bool atualizar = false) { var lista = modelocrud.listTypesAll(typeof(modelocrud)); foreach (var item in lista) { if (item.Name + "Imprimir" + "_Click" == function) { quantidade++; if (!contagem) { if (FrmPrincipal.executar) { ir.imprimir(item); MessageBox.Show(function + " foi executada!!!"); } else { MessageBox.Show("aguarde o processamento!!!"); } break; } } else if (item.Name + "Cadastrar" + "_Click" == function) { quantidade++; if (!contagem) { if (FrmPrincipal.executar) { var modelo = (modelocrud)Activator.CreateInstance(item); if (modelo is Celula) { formCadastro = new FrmDia_semana(); } else if (modelo is Ministerio) { formCadastro = new FrmNome(); } else if (modelo is Reuniao) { formCadastro = new DadoReuniao(); } else if (modelo is PessoaDado) { formCadastro = new FrmCpf(); } else if (modelo is PessoaLgpd) { formCadastro = new FrmEmail(); } else if (modelo is Fonte) { formCadastro = new FrmDadoFonte(); } else if (item.BaseType == typeof(modelocrud)) { var list = modelocrud.listTypesSon(typeof(WFCrud)); foreach (var it in list) { if ("Frm" + item.Name == it.Name) { formCadastro = (WFCrud)Activator.CreateInstance(it); break; } } } LoadFormCrud(modelo, detalhes, deletar, atualizar, formularioAtual); break; } else { MessageBox.Show("Aguarde o processamento"); break; } } } else if (item.Name + "Pesquisar" + "_Click" == function) { quantidade++; if (!contagem) { if (FrmPrincipal.executar) { Pesquisar query = new Pesquisar(item); query.MdiParent = formularioAtual; query.Text = "Pesquisar " + item.Name; query.Show(); } else { MessageBox.Show("aguarde o processamento!!!"); } break; } } else if (item.Name + "Listar" + "_Click" == function) { if (item == typeof(Pessoa) || item.IsSubclassOf(typeof(Pessoa)) || item == typeof(Ministerio) || item.IsSubclassOf(typeof(Ministerio))) { quantidade += 5; } else { quantidade += 4; } if (!contagem) { if (FrmPrincipal.executar) { FormularioListView frm = new FormularioListView(item); frm.MdiParent = formularioAtual; frm.Text = "Listar " + item.Name; frm.Show(); } else { MessageBox.Show("aguarde o processamento!!!"); } break; } } else if (function.Contains("Selecionar")) { if (!contagem) { Type BaseModel = modelocrud.ReturnBase(Modelo.GetType()); var props = Modelo.GetType().GetProperties(); var listaForm = modelocrud.listTypesAll(typeof(WFCrud)); bool teste = false; foreach (var item2 in props) { if (BaseModel.Name + "Frm" + item2.Name + "Selecionar" + "_Click" == function) { teste = true; foreach (var item3 in listaForm) { if ("Frm" + item2.Name == item3.Name) { Form = (WFCrud)Activator.CreateInstance(item3); LoadFormCrud(Modelo, detalhes, deletar, atualizar, formularioAtual); break; } } break; } } if (teste) { break; } } } else if (function.Contains("Cadastrar") && item != typeof(modelocrud) || function.Contains("Imprimir") && item != typeof(modelocrud) || function.Contains("Listar") && item != typeof(modelocrud) || function.Contains("Selecionar") && item != typeof(modelocrud) || function.Contains("Pesquisar") && item != typeof(modelocrud)) { if (!contagem && 1 == 2) { quantidade++; MessageBox.Show($"Não foi executado a {function}!!!"); break; } } } }
public List <modelocrud> BuscarPorRestricao(modelocrud modelo, string tipo, string comando) { var comand = ""; var innerjoin = ""; DataTable dtable = new DataTable(); if (modelo is business.classes.Mensagem) { innerjoin = " inner join Membro as MEM on M.Id=MEM.Id inner join Pessoa as P on MEM.Id=P.Id"; } else if (modelo is business.classes.Mensagem) { innerjoin = " inner join Pessoa as P on M.Id=P.Id"; } if (modelo != null) { comand = $"select * from {modelo.GetType().Name} as M {innerjoin} "; } if (modelo == null) { comand = $"select * from {tipo} as M {innerjoin} "; } if (comando != "") { comand += $" where {comando} "; } SqlCommand c = new SqlCommand(comand, bd.obterconexao()); SqlDataAdapter objadp = new SqlDataAdapter(c); objadp.Fill(dtable); if (modelo == null) { List <modelocrud> lista = new List <modelocrud>(); foreach (var item in dtable.Select("")) { } return(lista); } if (modelo == null) { List <modelocrud> lista = new List <modelocrud>(); foreach (var item in dtable.Select("")) { } return(lista); } if (modelo == null) { List <modelocrud> lista = new List <modelocrud>(); foreach (var item in dtable.Select("")) { } return(lista); } if (modelo is business.classes.Abstrato.Fonte) { List <modelocrud> lista = new List <modelocrud>(); foreach (var item in dtable.Select("")) { } return(lista); } if (modelo is business.classes.Fontes.Versiculo) { List <modelocrud> lista = new List <modelocrud>(); foreach (var item in dtable.Select("")) { } return(lista); } if (modelo is business.classes.Fontes.Versiculo) { List <modelocrud> lista = new List <modelocrud>(); foreach (var item in dtable.Select("")) { } return(lista); } return(null); }
private void recuperarSalvarRegistros(int v1, int v2, Type item) { if (modelocrud.TotalRegistro(item, BDcomum.conecta2) > modelocrud.Modelos.Where(m => m.GetType() == item || m.GetType().IsSubclassOf(item)).ToList().Count) { while (v1 <= v2) { if (modelocrud.Modelos.Where(m => m.GetType() == item).ToList().FirstOrDefault(i => i.Id == v1) == null) { modelocrud m = null; modelocrud m2 = null; var listaTypes = modelocrud.listTypesSon(modelocrud.ReturnBase(item)); foreach (var i in listaTypes) { m = (modelocrud)Activator.CreateInstance(i); m2 = (modelocrud)Activator.CreateInstance(i); m.stringConexao = BDcomum.conecta2; m2.stringConexao = BDcomum.conecta1; if (m.recuperar(v1) && !m2.recuperar(v1)) { m.Id = 0; m.stringConexao = BDcomum.conecta1; m.salvar(BDcomum.conecta1); modelocrud.Modelos.Add(m); notifyIcon.ShowBalloonTip(5000, "Info", $"Uma informação do banco de dados remoto foi inserida neste programa. - {m.GetType().Name} - {m.Id}", ToolTipIcon.Info); } } } v1++; } } }
public void MudarEstado(int idVelhoEstado, modelocrud m) { string estado = ""; var lista = Pessoa.recuperarTodos(); List <Pessoa> lista2 = new List <Pessoa>(); foreach (var item in lista) { lista2.Add((Pessoa)item); } Pessoa p = lista2.First(i => i.IdPessoa == idVelhoEstado); estado = p.GetType().Name; p = (Pessoa)p.recuperar(p.IdPessoa)[0]; p.excluir(idVelhoEstado); var addMinisterios = ""; var minis = p.Ministerios; if (minis != null) { foreach (var itemMinisterio in minis) { addMinisterios += itemMinisterio.Ministerio.IdMinisterio.ToString() + ", "; } } if (minis != null) { if (minis.Count != 0) { p.AdicionarNaLista("PessoaMinsterio", p, minis[0], addMinisterios); } } var addReunioes = ""; var reu = p.Reuniao; if (reu != null) { foreach (var itemReuniao in reu) { addReunioes += itemReuniao.Reuniao.IdReuniao.ToString() + ", "; } } if (reu != null) { if (reu.Count != 0) { p.AdicionarNaLista("ReuniaoPessoa", p, reu[0], addReunioes); } } if (m is PessoaDado) { if (m is Membro_Aclamacao) { var modelo = (Membro_Aclamacao)m; var pd = modelo; Membro_Aclamacao membro = new Membro_Aclamacao { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, Denominacao = modelo.Denominacao, celula_ = pd.celula_, Chamada = pd.Chamada, Cpf = pd.Cpf, Data_nascimento = pd.Data_nascimento, Email = pd.Email, Endereco = pd.Endereco, Estado_civil = pd.Estado_civil, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Falescimento = pd.Falescimento, NomePessoa = pd.NomePessoa, Reuniao = pd.Reuniao, Rg = pd.Rg, Ministerios = pd.Ministerios, Sexo_feminino = pd.Sexo_feminino, Sexo_masculino = pd.Sexo_masculino, Telefone = pd.Telefone, Status = pd.Status, Codigo = pd.Codigo }; membro.salvar(); } if (m is Membro_Batismo) { var modelo = (Membro_Batismo)m; var pd = modelo; Membro_Batismo membro = new Membro_Batismo { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, celula_ = pd.celula_, Chamada = pd.Chamada, Cpf = pd.Cpf, Data_nascimento = pd.Data_nascimento, Email = pd.Email, Endereco = pd.Endereco, Estado_civil = pd.Estado_civil, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Falescimento = pd.Falescimento, NomePessoa = pd.NomePessoa, Reuniao = pd.Reuniao, Rg = pd.Rg, Ministerios = pd.Ministerios, Sexo_feminino = pd.Sexo_feminino, Sexo_masculino = pd.Sexo_masculino, Telefone = pd.Telefone, Status = pd.Status, Codigo = pd.Codigo }; membro.salvar(); } if (m is Membro_Reconciliacao) { var modelo = (Membro_Reconciliacao)m; var pd = modelo; Membro_Reconciliacao membro = new Membro_Reconciliacao { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, Data_reconciliacao = modelo.Data_reconciliacao, celula_ = pd.celula_, Chamada = pd.Chamada, Cpf = pd.Cpf, Data_nascimento = pd.Data_nascimento, Email = pd.Email, Endereco = pd.Endereco, Estado_civil = pd.Estado_civil, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Falescimento = pd.Falescimento, NomePessoa = pd.NomePessoa, Reuniao = pd.Reuniao, Rg = pd.Rg, Ministerios = pd.Ministerios, Sexo_feminino = pd.Sexo_feminino, Sexo_masculino = pd.Sexo_masculino, Telefone = pd.Telefone, Status = pd.Status, Codigo = pd.Codigo }; membro.salvar(); } if (m is Membro_Transferencia) { var modelo = (Membro_Transferencia)m; var pd = modelo; Membro_Transferencia membro = new Membro_Transferencia { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, Estado_transferencia = modelo.Estado_transferencia, Nome_cidade_transferencia = modelo.Nome_cidade_transferencia, Nome_igreja_transferencia = modelo.Nome_igreja_transferencia, celula_ = pd.celula_, Chamada = pd.Chamada, Cpf = pd.Cpf, Data_nascimento = pd.Data_nascimento, Email = pd.Email, Endereco = pd.Endereco, Estado_civil = pd.Estado_civil, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Falescimento = pd.Falescimento, NomePessoa = pd.NomePessoa, Reuniao = pd.Reuniao, Rg = pd.Rg, Ministerios = pd.Ministerios, Sexo_feminino = pd.Sexo_feminino, Sexo_masculino = pd.Sexo_masculino, Telefone = pd.Telefone, Status = pd.Status, Codigo = pd.Codigo }; membro.salvar(); } if (m is Crianca) { var modelo = (Crianca)m; var pd = modelo; Crianca c = new Crianca { Nome_mae = modelo.Nome_mae, Nome_pai = modelo.Nome_pai, celula_ = pd.celula_, Chamada = pd.Chamada, Cpf = pd.Cpf, Data_nascimento = pd.Data_nascimento, Email = pd.Email, Endereco = pd.Endereco, Estado_civil = pd.Estado_civil, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Falescimento = pd.Falescimento, NomePessoa = pd.NomePessoa, Reuniao = pd.Reuniao, Rg = pd.Rg, Ministerios = pd.Ministerios, Sexo_feminino = pd.Sexo_feminino, Sexo_masculino = pd.Sexo_masculino, Telefone = pd.Telefone, Status = pd.Status, Codigo = pd.Codigo }; c.salvar(); } if (m is Visitante) { var modelo = (Visitante)m; var pd = modelo; Visitante v = new Visitante { Condicao_religiosa = modelo.Condicao_religiosa, Data_visita = modelo.Data_visita, celula_ = pd.celula_, Chamada = pd.Chamada, Cpf = pd.Cpf, Data_nascimento = pd.Data_nascimento, Email = pd.Email, Endereco = pd.Endereco, Estado_civil = pd.Estado_civil, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Falescimento = pd.Falescimento, NomePessoa = pd.NomePessoa, Reuniao = pd.Reuniao, Rg = pd.Rg, Ministerios = pd.Ministerios, Sexo_feminino = pd.Sexo_feminino, Sexo_masculino = pd.Sexo_masculino, Telefone = pd.Telefone, Status = pd.Status, Codigo = pd.Codigo }; v.salvar(); } } if (m is PessoaLgpd) { if (m is Membro_AclamacaoLgpd) { var modelo = (Membro_AclamacaoLgpd)m; var pd = (PessoaLgpd)p; Membro_AclamacaoLgpd membro = new Membro_AclamacaoLgpd { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, Denominacao = modelo.Denominacao, celula_ = pd.celula_, Chamada = pd.Chamada, Email = pd.Email, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Reuniao = pd.Reuniao, Ministerios = pd.Ministerios, Codigo = pd.Codigo }; membro.salvar(); } if (m is Membro_BatismoLgpd) { var modelo = (Membro_BatismoLgpd)m; var pd = (PessoaLgpd)p; Membro_BatismoLgpd membro = new Membro_BatismoLgpd { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, celula_ = pd.celula_, Chamada = pd.Chamada, Email = pd.Email, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Reuniao = pd.Reuniao, Ministerios = pd.Ministerios, Codigo = pd.Codigo }; membro.salvar(); } if (m is Membro_ReconciliacaoLgpd) { var modelo = (Membro_ReconciliacaoLgpd)m; var pd = (PessoaLgpd)p; Membro_ReconciliacaoLgpd membro = new Membro_ReconciliacaoLgpd { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, Data_reconciliacao = modelo.Data_reconciliacao, celula_ = pd.celula_, Chamada = pd.Chamada, Email = pd.Email, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Reuniao = pd.Reuniao, Ministerios = pd.Ministerios, Codigo = pd.Codigo }; membro.salvar(); } if (m is Membro_TransferenciaLgpd) { var modelo = (Membro_TransferenciaLgpd)m; var pd = (PessoaLgpd)p; Membro_TransferenciaLgpd membro = new Membro_TransferenciaLgpd { Data_batismo = modelo.Data_batismo, Desligamento = modelo.Desligamento, Motivo_desligamento = modelo.Motivo_desligamento, Estado_transferencia = modelo.Estado_transferencia, Nome_cidade_transferencia = modelo.Nome_cidade_transferencia, Nome_igreja_transferencia = modelo.Nome_igreja_transferencia, celula_ = pd.celula_, Chamada = pd.Chamada, Email = pd.Email, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Reuniao = pd.Reuniao, Ministerios = pd.Ministerios, Codigo = pd.Codigo }; membro.salvar(); } if (m is CriancaLgpd) { var modelo = (CriancaLgpd)m; var pd = (PessoaLgpd)p; CriancaLgpd c = new CriancaLgpd { Nome_mae = modelo.Nome_mae, Nome_pai = modelo.Nome_pai, celula_ = pd.celula_, Chamada = pd.Chamada, Email = pd.Email, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Reuniao = pd.Reuniao, Ministerios = pd.Ministerios, Codigo = pd.Codigo }; c.salvar(); } if (m is VisitanteLgpd) { var modelo = (VisitanteLgpd)m; var pd = (PessoaLgpd)p; VisitanteLgpd v = new VisitanteLgpd { Condicao_religiosa = modelo.Condicao_religiosa, Data_visita = modelo.Data_visita, celula_ = pd.celula_, Chamada = pd.Chamada, Email = pd.Email, Falta = pd.Falta, Historico = pd.Historico, Img = pd.Img, Reuniao = pd.Reuniao, Ministerios = pd.Ministerios, Codigo = pd.Codigo }; v.salvar(); } } new MudancaEstado { novoEstado = m.GetType().Name, velhoEstado = estado, DataMudanca = DateTime.Now, CodigoPessoa = p.Codigo }.salvar(); }
public async Task imprimir(modelocrud modelo, string tipo) { List <modelocrud> lista = new List <modelocrud>(); PdfPTable table = null; var valorTipo = ""; var porcentagem = ""; var ListaPessoas = await Task.Run(() => Pessoa.recuperarTodos()); int totalPessoas = ListaPessoas.Count; var ListaMinisterios = await Task.Run(() => Ministerio.recuperarTodosMinisterios()); int totalMinisterios = ListaMinisterios.Count; var ListaCelulas = await Task.Run(() => Celula.recuperarTodasCelulas()); int totalCelulas = ListaCelulas.Count; if (modelo != null) { lista = modelo.recuperar(null); var i = 0; foreach (var item in lista.ToList()) { Pessoa p = null; Ministerio m = null; Celula c = null; Reuniao r = null; var id = 0; if (modelo is Pessoa) { p = (Pessoa)item; id = p.IdPessoa; } if (modelo is Ministerio) { m = (Ministerio)item; id = m.IdMinisterio; } if (modelo is Celula) { c = (Celula)item; id = c.IdCelula; } if (modelo is Reuniao) { r = (Reuniao)item; id = r.IdReuniao; } lista[i] = item.recuperar(id)[0]; i++; } } if (modelo != null && modelo is Pessoa) { table = new PdfPTable(2); var quant = modelo.recuperar(null).Count; decimal p = (quant / totalPessoas); porcentagem = "A procentagem em relação ao total de pessoas é " + p.ToString("F2") + "%. Quantidade de registros é: " + quant; } if (modelo != null && modelo is Celula) { var quant = modelo.recuperar(null).Count; decimal p = (quant / totalCelulas); porcentagem = "A procentagem em relação ao total de celulas é " + p.ToString("f2") + "%. Quantidade de registros é: " + quant; } if (modelo != null && modelo is Ministerio) { var quant = modelo.recuperar(null).Count; decimal p = (quant / totalMinisterios); porcentagem = "A procentagem em relação ao total de ministérios é " + p.ToString("f2") + "%. Quantidade de registros é: " + quant; } if (modelo is Reuniao) { table = new PdfPTable(3); } if (tipo == "Pessoa" && modelo == null) { lista = Pessoa.recuperarTodos(); table = new PdfPTable(2); var i = 0; foreach (var item in lista.OfType <Pessoa>().ToList()) { lista[i] = item.recuperar(item.IdPessoa)[0]; i++; } } if (tipo == "MembroLgpd" && modelo == null) { lista = MembroLgpd.recuperarTodosMembros(); table = new PdfPTable(2); var i = 0; foreach (var item in lista.OfType <Pessoa>().ToList()) { lista[i] = item.recuperar(item.IdPessoa)[0]; i++; } } if (tipo == "Membro" && modelo == null) { lista = Membro.recuperarTodosMembros(); table = new PdfPTable(2); var i = 0; foreach (var item in lista.OfType <Pessoa>().ToList()) { lista[i] = item.recuperar(item.IdPessoa)[0]; i++; } } if (tipo == "Ministerio" && modelo == null) { lista = Ministerio.recuperarTodosMinisterios(); table = new PdfPTable(2); var i = 0; foreach (var item in lista.OfType <Ministerio>().ToList()) { lista[i] = item.recuperar(item.IdMinisterio)[0]; i++; } } if (tipo == "Celula" && modelo == null) { lista = Celula.recuperarTodasCelulas(); table = new PdfPTable(2); var i = 0; foreach (var item in lista.OfType <Celula>().ToList()) { lista[i] = item.recuperar(item.IdCelula)[0]; i++; } } if (modelo is MudancaEstado) { table = new PdfPTable(4); } if (tipo != "") { valorTipo = tipo; } else { valorTipo = modelo.GetType().Name; } Document doc = new Document(PageSize.A4); doc.SetMargins(40, 40, 40, 80); string path = Directory.GetCurrentDirectory(); string caminho = path + @"\relatorio\" + "relatorio-" + valorTipo + "-" + DateTime.Now.ToString("dd-MM-yyyy") + ".pdf"; PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(caminho, FileMode.Create)); doc.Open(); Paragraph titulo = new Paragraph(); titulo.Font = new Font(Font.FontFamily.COURIER, 40); titulo.Alignment = Element.ALIGN_CENTER; titulo.Add("Relatório \n\n"); doc.Add(titulo); Paragraph paragrafo = new Paragraph("", new Font(Font.NORMAL, 12)); string conteudo = "Este é um relatório do dia " + DateTime.Now.ToString("dd/MM/yyyy") + " cujo o conteudo é referente a " + valorTipo + $". {porcentagem} \n\n"; paragrafo.Add(conteudo); doc.Add(paragrafo); foreach (var item in lista.OfType <Reuniao>()) { table.AddCell("Id: " + item.IdReuniao.ToString()); table.AddCell("Data da reunião: " + item.Data_reuniao.ToString()); } foreach (var item in lista.OfType <PessoaDado>()) { table.AddCell("ID: " + item.Codigo.ToString()); table.AddCell("Nome: " + item.NomePessoa.ToString()); } foreach (var item in lista.OfType <PessoaLgpd>().ToList()) { table.AddCell("ID: " + item.Codigo.ToString()); table.AddCell("Email: " + item.Email.ToString()); } foreach (var item in lista.OfType <Ministerio>()) { table.AddCell("Id: " + item.IdMinisterio.ToString()); table.AddCell("Data da reunião: " + item.Nome.ToString()); } foreach (var item in lista.OfType <Celula>()) { table.AddCell("Id: " + item.IdCelula.ToString()); table.AddCell("Data da reunião: " + item.Nome.ToString()); } foreach (var item in lista.OfType <Historico>()) { table.AddCell("Data de inicio: " + item.Data_inicio.ToString()); table.AddCell("Data final: " + item.Data_inicio.AddDays(60).ToString()); table.AddCell("Faltas: " + item.Falta.ToString()); } foreach (var item in lista.OfType <MudancaEstado>()) { table.AddCell("Data da mudança: " + item.DataMudanca.ToString("dd/MM/yyyy")); table.AddCell("antigo estado: " + item.velhoEstado); table.AddCell("novo estado: " + item.novoEstado); table.AddCell("Id da pessoa: " + item.CodigoPessoa); } doc.Add(table); string caminhoImg = "http://www.clickfamilia.org.br/oikos2015/wp-content/uploads/2019/07/what-is-family-ministry-lead-300x225.jpg"; Image img = Image.GetInstance(caminhoImg); doc.Add(img); doc.Close(); System.Diagnostics.Process.Start(caminho); }