Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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();
            }
        }
Ejemplo n.º 3
0
        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();
            }
        }
Ejemplo n.º 4
0
        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();
            }
        }
Ejemplo n.º 5
0
        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();
                    }
                }
            });
        }