示例#1
0
        public bool excluirVeiculo(Veiculo veiculo)
        {
            try
            {
                BsonArray docs = consultarVeiculos(veiculo.getCpf());

                BsonArray newDocs = new BsonArray();

                foreach (BsonDocument doc in docs)
                {
                    VeiculosDocument veiculoDoc = BsonSerializer.Deserialize <VeiculosDocument>(doc);

                    if (veiculoDoc.placa != veiculo.getPlaca())
                    {
                        newDocs.Add(veiculoDoc.ToBsonDocument());
                    }
                }

                var update = Builders <ClientesDocument> .Update.Set(o => o.veiculos, newDocs);

                clientes.UpdateOne(x => x.cpf.Equals(veiculo.getCpf()), update);

                return(true);
            }
            catch
            {
                MessageBox.Show("Não foi possível realizar o cadastro do veículo!\n" +
                                "Verifique se todos os campos foram preenchidos corretamente.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);

                return(false);
            }
        }
示例#2
0
        //Cadastra o Veiculo com os dados recolhidos na Função CadastroVeiculo
        public bool cadastrarVeiculo(Veiculo veiculo)
        {
            try
            {
                VeiculosDocument doc = new VeiculosDocument
                {
                    placa  = veiculo.getPlaca(),
                    marca  = veiculo.getMarca(),
                    modelo = veiculo.getModelo()
                };

                connectMongoDB();

                Expression <Func <ClientesDocument, bool> > filter =
                    x => x.cpf.Equals(veiculo.getCpf());

                var update = Builders <ClientesDocument> .Update.Push("veiculos", doc.ToBsonDocument());

                clientes.UpdateOne(filter, update);

                return(true);
            }
            catch
            {
                MessageBox.Show("Não foi possível realizar o cadastro do veículo!\n" +
                                "Verifique se todos os campos foram preenchidos corretamente.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);

                return(false);
            }
        }
示例#3
0
        private void setValues()
        {
            try
            {
                VeiculosDocument doc = comandos.consultarVeiculo(cpf, cb_CadVPlaca.SelectedItem.ToString());

                tb_CadVMarca.Text  = doc.marca;
                tb_CadVModelo.Text = doc.modelo;
            }
            catch (Exception excep)
            {
                MessageBox.Show("Não foi possível obter os valores do banco de dados!\n\nErro: " + excep, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
示例#4
0
        private void bt_CadVConsultar_Click(object sender, EventArgs e)
        {
            consultar();

            BsonArray docs = comandos.consultarVeiculos(cpf);

            dg_CadVConsulta.Rows.Clear();

            foreach (BsonDocument doc in docs)
            {
                VeiculosDocument veiculo = BsonSerializer.Deserialize <VeiculosDocument>(doc);

                dg_CadVConsulta.Rows.Add(veiculo.marca, veiculo.modelo, veiculo.placa);
            }
        }
示例#5
0
        public VeiculosDocument consultarVeiculo(string cpf, string placa)
        {
            connectMongoDB();

            Expression <Func <ClientesDocument, bool> > filter =
                x => x.cpf.Equals(cpf);

            BsonArray docs = clientes.Find(filter).First().veiculos.AsBsonArray;

            foreach (BsonDocument doc in docs)
            {
                VeiculosDocument veiculoDoc = BsonSerializer.Deserialize <VeiculosDocument>(doc);

                if (veiculoDoc.placa == placa)
                {
                    return(veiculoDoc);
                }
            }

            return(null);
        }
示例#6
0
        private void atualizar()
        {
            clear();

            tb_CadVMarca.Enabled = tb_CadVModelo.Enabled = false;

            panel_CadVVeiculo.Visible   = true;
            panel_CadVConsultar.Visible = false;

            mtb_CadVPlaca.Visible = false;
            cb_CadVPlaca.Visible  = true;

            bt_CadVConfirmar.Visible = bt_CadVCancelar.Visible = true;
            bt_CadVExcluir.Visible   = false;

            status = "Atualizar";

            try
            {
                cb_CadVPlaca.Items.Clear();
                cb_CadVPlaca.Items.Add("");

                BsonArray docs = comandos.consultarVeiculos(cpf);

                foreach (BsonDocument doc in docs)
                {
                    VeiculosDocument veiculo = BsonSerializer.Deserialize <VeiculosDocument>(doc);

                    cb_CadVPlaca.Items.Add(veiculo.placa);
                }
            }
            catch (Exception excep)
            {
                MessageBox.Show("Não foi possível obter os valores do banco de dados!\n\nErro: " + excep, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }