private Infrator Reload_Infrator(Infrator infrator) { infrator = Data_Controller.infratores.FirstOrDefault(i => i.Rg == Data_Formater.Just_Numbers(txtRG.Text)); try { Infrator infrator_from_mongo = null; if (infrator == null) { infrator_from_mongo = Data_Controller.Collection_Infratores.Find(i => i.Rg == Data_Formater.Just_Numbers(txtRG.Text)).FirstOrDefault(); } else { infrator_from_mongo = Data_Controller.Collection_Infratores.Find(i => i.Id == infrator.Id).FirstOrDefault(); } if (infrator_from_mongo != null && !Data_Controller.isEquals(infrator_from_mongo, infrator)) { int index = Data_Controller.infratores.IndexOf(infrator); infrator = infrator_from_mongo; Data_Controller.infratores[index] = infrator_from_mongo; } else if (infrator == null && infrator_from_mongo != null) { if (!Data_Controller.infratores.Contains(infrator_from_mongo)) { Data_Controller.infratores.Add(infrator_from_mongo); } infrator = infrator_from_mongo; } else if (infrator_from_mongo == null && infrator != null) { if (Data_Controller.infratores.Contains(infrator)) { Data_Controller.infratores.Remove(infrator); } infrator = null; } } catch { } return(infrator); }
public frm_CadastroMenor(Infrator infrator) { InitializeComponent(); this.infrator = infrator; date_Infra.Value = DateTime.Today; btn_AddInfra.Click += (sender, EventArgs) => { btn_AddInfra_Click(sender, EventArgs, null, true); }; new_infrator = infrator == null; infrações_to_remove = new List <int>(); infrações_to_add = new List <Infração>(); if (new_infrator) { this.infrator = new Infrator(); } else { txt_RG.Enabled = false; btn_Favoritar.Visible = btn_Remover.Visible = true; Load_Infos(); } }
private void pic_Editar_Click(object sender, EventArgs e) { if (Security_Controller.podem_ver_perfil.Contains(Data_Controller.user_logged.Credencial)) { if (Web_Tools.Conectado_A_Internet()) { infrator = Reload_Infrator(infrator); if (infrator != null) { Forms_Controller.Esconder(this); Forms_Controller.Abrir(new frm_CadastroMenor(infrator)); } } else { Web_Tools.Show_Net_Error(); } } else { Security_Controller.Show_Alert(); } }
private void btn_Salvar_Click(object sender, EventArgs e) { if (Web_Tools.Conectado_A_Internet()) { if (new_infrator || Security_Controller.podem_salvar_edição.Contains(Data_Controller.user_logged.Credencial)) { if (Validar()) { Infrator infrator_original = null; if (!new_infrator) { infrator_original = Data_Controller.Clone <Infrator>(infrator); infrator_original.Infrações = infrator.Infrações.ToList(); } else { infrator.Data_registro = DateTime.Now; } infrator.Nome = txt_Nome.Text; infrator.Rg = Data_Formater.Just_Numbers(txt_RG.Text); infrator.Cpf = Data_Formater.Just_Numbers(txt_CPF.Text); infrator.Data_nascimento = date_Niver.Value; infrator.Sexo = txt_Sexo.Text != "" ? txt_Sexo.Text.ToUpper()[0] : '-'; infrator.Mãe = txt_Mãe.Text; infrator.Logradouro = txt_Logradouro.Text; infrator.Num_residência = txt_NumRes.Text; infrator.Bairro = txt_Bairro.Text; infrator.Cidade = txt_Cidade.Text; infrator.Uf = txt_UF.Text.ToUpper(); infrator.Infrações = new List <Infração>(); foreach (Infração inf in infrações_to_add) { infrator.Infrações.Add(inf); } List <ObjectId> limpar_anexos_infrações = new List <ObjectId>(); for (int i = 0; i < infrações_to_remove.Count; i++) { limpar_anexos_infrações.Add(infrator.Infrações[infrações_to_remove[i]].Id); infrator.Infrações.RemoveAt(infrações_to_remove[i]); } var filter = Builders <Infrator> .Filter.Eq("Rg", infrator.Rg); Infrator infrator_from_mongo = Data_Controller.Collection_Infratores.Find(filter).FirstOrDefault(); if (infrator_from_mongo != null && !Data_Controller.isEquals(infrator_from_mongo, infrator_original)) { Forms_Controller.pode_desconectar = false; MessageBox.Show("Existem inconsistências na informação\n\nPor favor reinicie o sistema\ne tente novamente!", "Atenção:", MessageBoxButtons.OK, MessageBoxIcon.Warning); Forms_Controller.pode_desconectar = true; } else { Data_Controller.Add_Infrator(infrator, infrator_original); foreach (ObjectId id in limpar_anexos_infrações) { Data_Controller.Remove_Todos_Anexos(id); } new Thread(() => Btn_Fechar_Click(btn_Voltar, new EventArgs())).Start(); } } else { Forms_Controller.pode_desconectar = false; MessageBox.Show("Existem campos com dados inválidos!\nVerifique-os e tente novamente!", "Atenção:", MessageBoxButtons.OK, MessageBoxIcon.Warning); Forms_Controller.pode_desconectar = true; } } else { Security_Controller.Show_Alert(); } } else { Web_Tools.Show_Net_Error(); } }
public void PictureBox1_Click(object sender, EventArgs e) { Invoke((MethodInvoker) delegate { if (!string.IsNullOrEmpty(Data_Formater.Just_Numbers(txtRG.Text))) { if (Web_Tools.Conectado_A_Internet()) { if (frm_Define_Nome.instancia != null) { frm_Define_Nome.instancia.Close(); } if (frm_Anexo.instancia != null) { frm_Anexo.instancia.Close(); } if (frm_Detalhes.instancia != null) { frm_Detalhes.instancia.Btn_Fechar_Click(frm_Detalhes.instancia, new EventArgs()); } infrator = Reload_Infrator(infrator); Controle_UI(infrator != null); if (infrator != null) { Infração ultima_infração = infrator.Infrações.OrderByDescending(inf => inf.Data_ocorrência).ToList().FirstOrDefault(); if (ultima_infração != null) { lbl_DataUltima.Text = ultima_infração.Data_ocorrência.ToString("dd/MM/yyyy"); } else { lbl_DataUltima.Text = "--/--/----"; } lbl_Status.Text = infrator.Infrações.Count > 1 ? "Reincidente" : infrator.Infrações.Count < 1 ? "Nada Consta" : "Incidente"; lbl_Nome.Text = infrator.Nome; lbl_CPF.Text = Data_Formater.Mask_CPF(infrator.Cpf); lbl_RG.Text = Data_Formater.Mask_RG(infrator.Rg); //Mudando Cor do Panel pnl_InfInfra.Controls.Clear(); pnl_InfInfra.BackColor = Color.White; foreach (Infração i in infrator.Infrações) { Cria_Item_Infração(i); } } else { Forms_Controller.pode_desconectar = false; MessageBox.Show("Infrator não encontrado!"); Forms_Controller.pode_desconectar = true; } } else { Web_Tools.Show_Net_Error(); } } }); }