Esempio n. 1
0
        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));
            }
        }