Ejemplo n.º 1
0
        public ActionResult Create([Bind(Include = "Id,Nome")] Loja loja, Pessoa p)
        {
            p.Adm         = 1;
            p.dtaCadastro = DateTime.Now;
            p.Status      = 1;
            if (ModelState.IsValid)
            {
                p.Cpf = Utils.Utilidades.RemoveNaoNumericos(p.Cpf);

                Pessoa teste = PessoasDAO.ProcurarbyCpfSemLoja(p.Cpf);
                if (teste == null)
                {
                    PessoasDAO.AdicionarNovo(p);
                    p         = PessoasDAO.ProcurarbyCpf(p.Cpf);
                    loja.Dono = p;
                    FormsAuthentication.SetAuthCookie(loja.Dono.Cpf + "|" + loja.Dono.Id + "|" + loja.Dono.Adm, true);
                    Loja l = LojaDAO.ProcurarbyNome(loja.Nome);
                    if (l == null)
                    {
                        LojaDAO.AdicionarNovo(loja);


                        //Cria o Cookie da Loja...

                        //create a cookie
                        HttpCookie Loja = new HttpCookie("Loja");
                        l = LojaDAO.ProcurarbyNome(loja.Nome);


                        PessoaLoja pl = new PessoaLoja();

                        pl.loja   = l;
                        pl.pessoa = p;

                        PessoaLojaDAO.AdicionarNovo(pl);


                        //Add key-values in the cookie
                        Loja.Values.Add("lojaId", l.Id.ToString());
                        Loja.Expires = DateTime.Now.AddYears(1);
                        //Most important, write the cookie to client.
                        Response.Cookies.Add(Loja);

                        //Recupera ele na hora de entrar na loja,mudar o cookie ao trocar de loja
                        return(RedirectToAction("Index", "Home"));
                    }
                    ModelState.AddModelError("", "Loja já Cadastrada");
                    return(View());
                }
                ModelState.AddModelError("", "Usuário já Cadastrado");
                return(View());
            }

            return(View(loja));
        }