예제 #1
0
        private void BtnSalvar_Click(object sender, EventArgs e)
        {
            var documento  = new Documento(EditNumDoc.Text);
            var Fornecedor = new Domain.Entity.Fornecedor(Id,
                                                          EditNome.Text,
                                                          (long)EditEmpresa.SelectedValue,
                                                          documento);

            try
            {
                Fornecedor.Validar();

                if (_context.Fornecedores
                    .Include(c => c.Documento)
                    .Where(c => c.Documento.Numero == Fornecedor.Documento.Numero && c.Id != Fornecedor.Id)
                    .Any())
                {
                    throw new Exception($"O documento já está cadastrado!\n Altere e salve novamente");
                }

                if (documento.Tipo == Domain.Listed.TipoInscricao.Física)
                {
                    var frm = new ValidaIdade.frmValidaIdade();
                    frm.ShowDialog();
                    if (!frm.IdadeValida)
                    {
                        throw new Exception("O Cadastro não pode ser realizado.\nA data de nascimento informada é menor de 18 anos!");
                    }
                }
                var entity = _context.Fornecedores.Find(Id);
                if (entity == null)
                {
                    Fornecedor.Id = 0;
                    _context.Fornecedores.Add(Fornecedor);
                }
                else
                {
                    _context.Entry(entity).CurrentValues.SetValues(Fornecedor);
                }
                _context.SaveChanges();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Validação", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                return;
            }
            AlternaBotoes(false);
            AtualizaFiltro();
        }
예제 #2
0
        private void BtnSalvar_Click(object sender, EventArgs e)
        {
            var empresa = new Domain.Entity.Empresa(Id,
                                                    (Uf)Enum.ToObject(typeof(Uf),
                                                                      (int)EditUf.SelectedValue),
                                                    EditNomeFantasia.Text, EditCnpj.Text);

            try
            {
                empresa.Validar();

                if (_context.Empresas.Where(c => c.Cnpj == empresa.Cnpj && c.Id != empresa.Id).Any())
                {
                    throw new Exception("O CNPJ já está cadastrado!\n Altere e salve novamente");
                }

                var entity = _context.Empresas.Find(Id);
                if (entity == null)
                {
                    empresa.Id = 0;
                    _context.Empresas.Add(empresa);
                }
                else
                {
                    _context.Entry(entity).CurrentValues.SetValues(empresa);
                }
                _context.SaveChanges();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Validação", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                return;
            }
            AlternaBotoes(false);
            AtualizaFiltro();
        }