Пример #1
0
        public Motorista BuscarCPF(string cpf)
        {
            string query = "SELECT M.[MT_CPF], M.[MT_NOME], M.[MT_RG], M.[MT_ENDERECO], M.[MT_DTNASCIMENTO], M.[MT_TELEFONE], M.[MT_TELEFONE_RECADO]" +
                           ", M.[MT_SITUACAO], C.[CNH_NUMERO], C.[CNH_DTEMISSAO], C.[CNH_DTVENC], C.[CNH_CATEGORIA], C.[CNH_ORGAOEMISSOR], C.[CNH_MT_CPF]" +
                           "FROM [TB_MOTORISTA] AS M JOIN [TB_CNH] AS C ON M.[MT_CPF] = C.[CNH_MT_CPF] WHERE M.[MT_CPF] = '" + cpf + "'";

            try
            {
                DataTable dt = _banco.BuscarRegistro(query);

                Motorista motorista = null;
                CNH       cNH       = new CNH();
                DataRow[] dataRows  = dt.Select("MT_CPF = '" + cpf + "'");
                foreach (DataRow dr in dataRows)
                {
                    DateTime dtnascimento   = Convert.ToDateTime(dr["MT_DTNASCIMENTO"].ToString());
                    long     telefone       = long.Parse(dr["MT_TELEFONE"].ToString());
                    long     telefonerecado = long.Parse(dr["MT_TELEFONE_RECADO"].ToString());
                    bool     situacao       = bool.Parse(dr["MT_SITUACAO"].ToString());
                    cNH.Numero         = long.Parse(dr["CNH_NUMERO"].ToString());
                    cNH.DataEmissao    = Convert.ToDateTime(dr["CNH_DTEMISSAO"].ToString());
                    cNH.DataVencimento = Convert.ToDateTime(dr["CNH_DTVENC"].ToString());
                    cNH.Categoria      = dr["CNH_CATEGORIA"].ToString();
                    cNH.OrgaoEmissor   = dr["CNH_ORGAOEMISSOR"].ToString();

                    motorista = new Motorista(dr["MT_CPF"].ToString(), dr["MT_NOME"].ToString(), dr["MT_RG"].ToString(), dr["MT_DTNASCIMENTO"].ToString(), dtnascimento, telefone, telefonerecado, situacao, cNH);
                }

                return(motorista);
            }
            catch (ConcorrenciaBancoException e)
            {
                throw new ConcorrenciaBancoException(e.Message);
            }
        }
Пример #2
0
 public void Update(CNH cnh)
 {
     query = $@"Update CNH 
             set CNHname = '{cnh.Name}', CNHnumber = {cnh.Number}, validateDate = '{cnh.ValidateDate} '
             WHERE idCNH = {cnh.Id}";
     _context.CommandWithoutReturn(query);
 }
Пример #3
0
 public void Insert(CNH info)
 {
     using (var context = new Context())
     {
         context.CNHs.Add(info);
         context.SaveChanges();
     }
 }
Пример #4
0
        public void Validar()
        {
            if (!CNH.IsValid())
            {
                AddDomainNotification("Motorista", "Documento de CNH é inválido.");
            }

            Validate(this, new MotoristaValidation());
        }
Пример #5
0
 public frmCNH(string registro)
 {
     InitializeComponent();
     cnh = cNHBLL.Get(registro);
     DesativaControle();
     CarregaComponentes();
     btnAdicionar.Visible = false;
     btnEditar.Location   = new Point(454, 431);
     btnSalvar.Visible    = false;
 }
Пример #6
0
        public Motorista(string nome, string sobrenome, CNH cNH, DateTime dataNascimento)
        {
            Nome           = nome;
            Sobrenome      = sobrenome;
            CNH            = cNH;
            DataNascimento = dataNascimento;
            Ativo          = true;

            Validar();
        }
Пример #7
0
 public Motorista(Guid id, string nome, int idade, Sexo sexo, bool veiculoProprio, CNH cNH, Veiculo veiculo, bool cargaParaVoltaDestino)
 {
     Id                    = id;
     Nome                  = nome;
     Idade                 = idade;
     Sexo                  = sexo;
     VeiculoProprio        = veiculoProprio;
     CNH                   = cNH;
     Veiculo               = veiculo;
     CargaParaVoltaDestino = cargaParaVoltaDestino;
 }
Пример #8
0
 public bool Cadastrar(Motorista motorista, CNH cnh)
 {
     try
     {
         return(_motoristaService.Cadastrar(motorista, cnh));
     }
     catch (RegistroExisteException e)
     {
         throw new RegistroExisteException(e.Message);
     }
     catch (ConcorrenciaBancoException e)
     {
         throw new ConcorrenciaBancoException(e.Message);
     }
 }
Пример #9
0
 public bool Cadastrar(Motorista motorista, CNH cnh) //Mudança na Query, Verificar
 {
     try
     {
         Motorista obj = _motoristaDAL.BuscarCPF(motorista.CPF); //Metodo criado, falta validar
         if (obj != null)
         {
             throw new RegistroExisteException("Já existe um motorista com esse CPF no sistema!");
         }
         return(_motoristaDAL.Cadastrar(motorista, cnh));
     }
     catch (ConcorrenciaBancoException)
     {
         throw new ConcorrenciaBancoException("Favor tentar novamente mais tarde.");
     }
 }
        public async Task <CommandResult> Handle(AdicionarMotoristaCommand request, CancellationToken cancellationToken)
        {
            var cnhMotorista = new CNH(request.NumeroDeRegistroCnh, request.DataValidadeCnh);

            var motorista = new Motorista(request.Nome, request.Sobrenome, cnhMotorista, request.DataNascimento);

            await _motoristaRepository.AddAsync(motorista);

            HandleEntity(motorista);

            if (!IsSuccess())
            {
                return(new CommandResult(false, "Existem notificações"));
            }

            await CommitAsync();

            return(new CommandResult(true, "Executado sem notificações", new { motorista.Id }));
        }
        public bool Alterar(Motorista motorista, CNH cnh, string cpf) //Mudança na Query, Verificar
        {
            int    situacao       = Convert.ToInt32(motorista.Situacao);
            string datanascimento = motorista.DataNascimento.ToString("yyyy/MM/dd");
            string dtemissao      = cnh.DataEmissao.ToString("yyyy/MM/dd");
            string dtvencimento   = cnh.DataVencimento.ToString("yyyy/MM/dd");

            string Query = "UPDATE [TB_MOTORISTA] SET [MT_CPF] ='" + cpf + "', [MT_NOME] = '" + motorista.Name + "', [MT_RG] = '" + motorista.RG + "', [MT_ENDERECO] = '" + motorista.Endereco + "', [MT_DTNASCIMENTO] = '" + datanascimento + "',[MT_TELEFONE] = " + motorista.Telefone + ", [MT_TELEFONE_RECADO] = " + motorista.TelefoneContato + ", [MT_SITUACAO] = " + situacao + "  WHERE [MT_CPF] = '" + cpf + "';" +
                           "UPDATE [TB_CNH] SET [CNH_NUMERO] =" + cnh.Numero + ", [CNH_DTEMISSAO] = '" + dtemissao + "', [CNH_DTVENC] = '" + dtvencimento + "', [CNH_CATEGORIA] ='" + cnh.Categoria + "', [CNH_ORGAOEMISSOR] = '" + cnh.OrgaoEmissor + "' , [CNH_MT_CPF] = '" + cpf + "' WHERE [CNH_MT_CPF] = '" + cpf + "'";

            try
            {
                return(_banco.ExecutarInstrucao(Query));
            }
            catch (ConcorrenciaBancoException e)
            {
                throw new ConcorrenciaBancoException(e.Message);
            }
        }
Пример #12
0
 public bool Alterar(Motorista motorista, CNH cnh, string cpf)
 {
     try
     {
         return(_motoristaService.Alterar(motorista, cnh, cpf));
     }
     catch (NaoEncontradoException e)
     {
         throw new NaoEncontradoException(e.Message);
     }
     catch (ConcorrenciaBancoException e)
     {
         throw new ConcorrenciaBancoException(e.Message);
     }
     catch (IntegridadeException e)
     {
         throw new IntegridadeException(e.Message);
     }
 }
Пример #13
0
        public void Alterar(CNH info)
        {
            using (var context = new Context())
            {
                var cnh = context.CNHs.Find(info.NumeroRegistro);

                cnh.Categoria           = info.Categoria;
                cnh.CPF                 = info.CPF;
                cnh.Emissao             = info.Emissao;
                cnh.Filiacao            = info.Filiacao;
                cnh.Local               = info.Local;
                cnh.Nascimento          = info.Nascimento;
                cnh.Nome                = info.Nome;
                cnh.PathDocumentoPDF    = info.PathDocumentoPDF;
                cnh.PrimeiraHabilitacao = info.PrimeiraHabilitacao;
                cnh.Validade            = info.Validade;
                cnh.Aivo                = info.Aivo;

                context.SaveChanges();
            }
        }
        public bool Cadastrar(Motorista motorista, CNH cnh) //Mudança na Query, Verificar
        {
            int      situacao       = Convert.ToInt32(motorista.Situacao);
            string   datanascimento = motorista.DataNascimento.ToString("yyyy/MM/dd");
            string   dtemissao      = cnh.DataEmissao.ToString("yyyy/MM/dd");
            string   dtvencimento   = cnh.DataVencimento.ToString("yyyy/MM/dd");
            DateTime datareg        = DateTime.Now;

            string query = "INSERT INTO[dbo].[TB_MOTORISTA]([MT_CPF],[MT_NOME],[MT_RG],[MT_ENDERECO],[MT_DTNASCIMENTO],[MT_TELEFONE],[MT_TELEFONE_RECADO],[MT_SITUACAO],[MT_DATAREGISTRO])" +
                           "VALUES ('" + motorista.CPF + "', '" + motorista.Name + "', '" + motorista.RG + "', '" + motorista.Endereco + "', '" + datanascimento + "', " + motorista.Telefone + ", " + motorista.TelefoneContato + ", " + situacao + ",'" + datareg.ToShortDateString() + "')" +
                           "INSERT INTO [dbo].[TB_CNH]([CNH_NUMERO],[CNH_DTEMISSAO],[CNH_DTVENC],[CNH_CATEGORIA],[CNH_ORGAOEMISSOR],[CNH_MT_CPF])" +
                           "VALUES (" + cnh.Numero + ", '" + dtemissao + "', '" + dtvencimento + "', '" + cnh.Categoria + "', '" + cnh.OrgaoEmissor + "', '" + motorista.CPF + "')";

            try
            {
                return(_banco.ExecutarInstrucao(query));
            }
            catch (ConcorrenciaBancoException e)
            {
                throw new ConcorrenciaBancoException(e.Message);
            }
        }
Пример #15
0
 public bool Alterar(Motorista motorista, CNH cnh, string cpf)
 {
     try
     {
         Motorista obj = _motoristaDAL.BuscarCPF(cpf);
         if (obj != null)
         {
             if (motorista.CPF != cpf)
             {
                 VerificarVinculo(cpf);
             }
             return(_motoristaDAL.Alterar(motorista, cnh, cpf));
         }
         else
         {
             throw new NaoEncontradoException("Motorista não encontrado.");
         }
     }
     catch (ConcorrenciaBancoException)
     {
         throw new ConcorrenciaBancoException("Favor tentar novamente mais tarde.");
     }
 }
Пример #16
0
        private void btnAdicionar_Click(object sender, EventArgs e)
        {
            try
            {
                if (!String.IsNullOrEmpty(txtAnexarDocumento.Text) || !String.IsNullOrWhiteSpace(txtAnexarDocumento.Text))
                {
                    VerificaPasta(pathDocumentos);
                    CopiaComprovante(pathOrigemDocumento, pathDestinoDocumento);
                }

                CNH cnh = new CNH
                {
                    Aivo                = true,
                    NumeroRegistro      = txtRegistro.Text,
                    Categoria           = txtCategoria.Text,
                    CPF                 = txtCPF.Text,
                    Filiacao            = txtFiliacao.Text,
                    Nome                = txtNome.Text,
                    Nascimento          = dateTimePickerNascimento.Value,
                    PrimeiraHabilitacao = dateTimePickerPrimeiraHabilitacao.Value,
                    Local               = txtLocal.Text,
                    Emissao             = dateTimePickerEmissao.Value,
                    Validade            = dateTimePickerValidade.Value,
                    PathDocumentoPDF    = fileNameDocumento
                };


                cNHBLL.Insert(cnh);
                LimpaCampos();
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Falha ao salvar o registro. {ex.Message}", "Falha", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #17
0
 public void ValidarCNHErroTeste() => _listaCNHErro.ForEach(cnh => Assert.False(CNH.Validar(cnh)));
Пример #18
0
 public void ValidarCNHOkTeste() => _listaCNHOk.ForEach(cnh => Assert.True(CNH.Validar(cnh)));
Пример #19
0
 public void Insert(CNH cnh)
 {
     query = $"Insert into CNH (CNHname, CNHnumber, validateDate) values ('{cnh.Name}' , {cnh.Number} , {cnh.validate})";
     _context.CommandWithoutReturn(query);
 }
Пример #20
0
        private void metroLinkSalvar_Click(object sender, EventArgs e)
        {
            error.Tag = 0;
            error.Clear();
            if (name.Text.Length < 3)
            {
                error.SetError(this.name, "O nome tem que ter de 3 a 50 caracteres");
                error.Tag = 1;
            }
            if (!email.Text.Contains("@") && !email.Text.Contains(".com"))
            {
                error.SetError(this.email, "Insira um endereço de email válido");
                error.Tag = 1;
            }
            if (email.Text.Length < 5)
            {
                error.SetError(this.email, "Insira um endereço de email válido");
                error.Tag = 1;
            }
            if (cpf.Text.Length < 11)
            {
                error.SetError(this.cpf, "Insira um CPF válido");
                error.Tag = 1;
            }
            else
            {
                if (!Check_CPF(cpf.Text))
                {
                    error.SetError(this.cpf, "Insira um CPF válido");
                    error.Tag = 1;
                }
            }
            if (phone.Text.Length < 11)
            {
                error.SetError(this.phone, "Insira um número de phone válido");
                error.Tag = 1;
            }
            if (cnh.Text.Length < 11)
            {
                error.SetError(this.cnh, "Insira um número de CNH válido");
                error.Tag = 1;
            }
            if (validateCNHdate.Value < dateofBirth.Value)
            {
                error.SetError(this.validateCNHdate, "Insira uma data válida");
                error.Tag = 1;
            }
            DateTime dateExpected = DateTime.Now.AddYears(-18);

            if (dateofBirth.Value > dateExpected)
            {
                error.SetError(this.dateofBirth, "Você deve ter no mínimo 18 anos para realizar o cadastro");
                error.Tag = 1;
            }
            if ((int)error.Tag == 0)
            {
                Domain.Entities.Client Client = new Domain.Entities.Client()
                {
                    Name        = name.Text,
                    Email       = email.Text,
                    Phone       = long.Parse(phone.Text),
                    Genero      = gener.Text,
                    CPF         = long.Parse(cpf.Text),
                    DateOfBirth = DateTime.Parse(dateofBirth.Text),
                };
                Domain.Entities.CNH CNH = new CNH()
                {
                    Name         = name.Text,
                    Number       = long.Parse(cnh.Text),
                    ValidateDate = DateTime.Parse(validateCNHdate.Text),
                };
                Domain.Entities.User User = new User()
                {
                    Name     = user.Text,
                    Password = password.Text,
                    isAdmin  = false
                };
                try
                {
                    var idCNH  = _appCNH.Insert(CNH);
                    var idUser = _appUser.Insert(User);
                    Client.CNH_Id  = idCNH;
                    Client.User_Id = idUser;
                    _appClient.Insert(Client);
                    MetroFramework.MetroMessageBox.Show(this, "Cliente Cadastrado com sucesso", "Sucesso", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Question, 100);
                    this.Close();
                }
                catch
                {
                    MetroFramework.MetroMessageBox.Show(this, "Erro inesperado. Por favor entre em contato com seu administrador", "Erro", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Question, 100);
                }
            }
        }
 Task <IEnumerable <PontosCNH> > ConsultarPontos(CNH cnh);
Пример #22
0
 public void ValidarCNHFormatoErradoTeste(string cnh) => Assert.False(CNH.Validar(cnh));
Пример #23
0
        public void Insert(CNH info)
        {
            info.Aivo = true;

            dal.Insert(info);
        }
Пример #24
0
 public void Alterar(CNH info)
 {
     dal.Alterar(info);
 }
Пример #25
0
        private void buttonSave_Click(object sender, EventArgs e)
        {
            error.Tag = 0;
            error.Clear();
            if (nomeTXT.Text.Length < 3)
            {
                error.SetError(this.nomeTXT, "O nome tem que ter de 3 a 50 caracteres");
                error.Tag = 1;
            }
            if (!email.Text.Contains("@") && !email.Text.Contains(".com"))
            {
                error.SetError(this.email, "Insira um endereço de email válido");
                error.Tag = 1;
            }
            if (email.Text.Length < 5)
            {
                error.SetError(this.email, "Insira um endereço de email válido");
                error.Tag = 1;
            }
            if (cpf.Text.Length < 11)
            {
                error.SetError(this.cpf, "Insira um CPF válido");
                error.Tag = 1;
            }
            else
            {
                if (!Check_CPF(cpf.Text))
                {
                    error.SetError(this.cpf, "Insira um CPF válido");
                    error.Tag = 1;
                }
            }
            if (telefone.Text.Length < 11)
            {
                error.SetError(this.telefone, "Insira um número de telefone válido");
                error.Tag = 1;
            }
            if (cnh.Text.Length < 11)
            {
                error.SetError(this.cnh, "Insira um número de CNH válido");
                error.Tag = 1;
            }
            if (dateValidateCNH.Value < dateOfBirth.Value)
            {
                error.SetError(this.dateValidateCNH, "Insira uma data válida");
                error.Tag = 1;
            }
            DateTime dateExpected = DateTime.Now.AddYears(-18);

            if (dateOfBirth.Value > dateExpected)
            {
                error.SetError(this.dateOfBirth, "Você deve ter no mínimo 18 anos para realizar o cadastro");
                error.Tag = 1;
            }
            if ((int)error.Tag == 0)
            {
                Client = new Domain.Entities.Client()
                {
                    Name        = nomeTXT.Text,
                    Email       = email.Text,
                    CPF         = long.Parse(cpf.Text),
                    DateOfBirth = DateTime.Parse(dateOfBirth.Text),
                    Genero      = genero.Text,
                    Phone       = long.Parse(telefone.Text),
                };

                CNH = new CNH()
                {
                    Name         = nomeTXT.Text,
                    Number       = long.Parse(cnh.Text),
                    ValidateDate = DateTime.Parse(dateValidateCNH.Text)
                };

                try
                {
                    User.Id        = _appUser.Insert(User);
                    Client.CNH_Id  = _appCNH.Insert(CNH);
                    Client.User_Id = User.Id;
                    _appClient.Insert(Client);
                    MetroMessageBox.Show(this, "Cliente Cadastrado com sucesso", "Sucesso", MessageBoxButtons.OK, MessageBoxIcon.Question, 100);
                    Login form = new Login();
                    this.Hide();
                    form.ShowDialog();
                    this.Close();
                }
                catch
                {
                    MetroMessageBox.Show(this, "Erro Inesperado. Por favor entre em contato com seu administrador", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error, 100);
                }
            }
        }
Пример #26
0
 public void ValidarCNHNuloOuVazioErradoTeste(string cnh) => Assert.Throws <ArgumentException>(() => CNH.Validar(cnh));
Пример #27
0
 public int Insert(CNH cnh)
 {
     query = $"Insert into CNH (CNHname, CNHnumber, validateDate) output inserted.idCNH values ('{cnh.Name}' , {cnh.Number} , '{cnh.ValidateDate}')";
     return(_context.CommandWithReturnId(query));
 }