public ActionResult Create(Fornecedor p) { Empresa empresa = empresaREP.GetByName(p.Empresa); if (Validador.ValidaCPF(p.CpfCnpj)) { p.Tipo = 0; if (string.IsNullOrWhiteSpace(p.RG)) { ModelState.AddModelError("RG", "Para cadastro de pessoa fisica é necessario informar o RG."); return(View()); } if (string.IsNullOrWhiteSpace(p.DataNascimento.ToString())) { ModelState.AddModelError("DataNascimento", "Para cadastro de pessoa fisica é necessario informar a Data de nascimento."); return(View()); } if (p.DataNascimento.ToString().Equals("01/01/0001 00:00:00")) { ModelState.AddModelError("DataNascimento", "Para cadastro de pessoa fisica é necessario informar a data de nascimento."); return(View()); } if (Validador.CalcularIdade(p.DataNascimento) < 18 && empresa.UF.ToUpper().Equals("PR")) { ModelState.AddModelError("DataNascimento", "Para empresas do Paraná não é permitido cadastro de fornecedores menores de idade."); return(View()); } } else if (Validador.ValidaCNPJ(p.CpfCnpj)) { p.Tipo = 1; if (string.IsNullOrWhiteSpace(p.RG)) { p.RG = ""; } if (p.DataNascimento.ToString().Equals("01/01/0001 00:00:00")) { p.DataNascimento = new DateTime(1900, 01, 01); } } else { ModelState.AddModelError("CpfCnpj", "Informe um CPF ou CNPJ válido."); return(View()); } if (ModelState.IsValid) { repositorio.Save(p); return(RedirectToAction("../Empresa/Fornecedores/" + empresaREP.GetByName(p.Empresa).Id)); } else { return(View(p)); } }
///<summary>Preenche os dados de um fornecedor ///<param name="reader">Referencia da tupla obtida na consulta.</param> ///<returns>Retorna uma referência de Fornecedor preenchida com os dados obtidos.</returns> ///</summary> private Fornecedor PreencherDados(SqlDataReader reader) { int idade = Validador.CalcularIdade(Validador.converter(reader["DataNascimento"].ToString())); return(new Fornecedor() { Id = (int)reader["Id"], Empresa = reader["Empresa"].ToString(), Nome = reader["Nome"].ToString(), CpfCnpj = reader["CpfCnpj"].ToString(), DataHoraCadastro = DateTime.Parse(reader["DataCadastro"].ToString()), RG = reader["RG"].ToString(), DataNascimento = Validador.converter(reader["DataNascimento"].ToString()), Idade = idade == 0 ? "" : idade.ToString() }); }