示例#1
0
        public AlterarEnderecoViewModel GetEndereco(int pessoaID)
        {
            AlterarEnderecoViewModel AEVM = new AlterarEnderecoViewModel();

            using (NimbusAcad_DB_Entities db = new NimbusAcad_DB_Entities())
            {
                Negocio_Endereco NE = db.Negocio_Endereco.Where(o => o.Pessoa_ID == pessoaID && o.Ativo == true).FirstOrDefault();
                AEVM.PessoaID    = NE.Pessoa_ID;
                AEVM.CEP         = NE.CEP;
                AEVM.Complemento = NE.Complemento;
                AEVM.Numero      = NE.Numero.Value;
                AEVM.Logradouro  = NE.Negocio_Base_Endereco.Logradouro;
                AEVM.Bairro      = NE.Negocio_Base_Endereco.Bairro;
                AEVM.Cidade      = NE.Negocio_Base_Endereco.Cidade;
                AEVM.Estado      = NE.Negocio_Base_Endereco.Estado;
                AEVM.Pais        = NE.Negocio_Base_Endereco.Pais;

                return(AEVM);
            }
        }
示例#2
0
        public async Task UpdateEndereco(AlterarEnderecoViewModel endereco)
        {
            using (NimbusAcad_DB_Entities db = new NimbusAcad_DB_Entities())
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        Negocio_Endereco      atualizarNE = db.Negocio_Endereco.Where(o => o.Pessoa_ID == endereco.PessoaID && o.Ativo == true).FirstOrDefault();
                        Negocio_Base_Endereco NBE         = db.Negocio_Base_Endereco.Where(o => o.CEP == endereco.CEP).FirstOrDefault();
                        if (NBE != null)
                        {
                            Negocio_Endereco NE = new Negocio_Endereco();
                            NE.CEP         = endereco.CEP;
                            NE.Complemento = endereco.Complemento;
                            NE.Numero      = endereco.Numero;
                            NE.Ativo       = true;
                            NE.Pessoa_ID   = endereco.PessoaID;

                            db.Negocio_Endereco.Add(NE);
                            await db.SaveChangesAsync();

                            atualizarNE.Ativo           = false;
                            db.Entry(atualizarNE).State = EntityState.Modified;
                            await db.SaveChangesAsync();
                        }
                        else
                        {
                            Negocio_Base_Endereco novoNBE = new Negocio_Base_Endereco();
                            novoNBE.CEP        = endereco.CEP;
                            novoNBE.Logradouro = endereco.Logradouro;
                            novoNBE.Bairro     = endereco.Bairro;
                            novoNBE.Cidade     = endereco.Cidade;
                            novoNBE.Estado     = endereco.Estado;
                            novoNBE.Pais       = endereco.Pais;

                            db.Negocio_Base_Endereco.Add(novoNBE);
                            await db.SaveChangesAsync();

                            Negocio_Endereco NE = new Negocio_Endereco();
                            NE.CEP         = endereco.CEP;
                            NE.Complemento = endereco.Complemento;
                            NE.Numero      = endereco.Numero;
                            NE.Ativo       = true;
                            NE.Pessoa_ID   = endereco.PessoaID;

                            db.Negocio_Endereco.Add(NE);
                            await db.SaveChangesAsync();

                            atualizarNE.Ativo           = false;
                            db.Entry(atualizarNE).State = EntityState.Modified;
                            await db.SaveChangesAsync();
                        }
                        dbContextTransaction.Commit();
                    }
                    catch
                    {
                        dbContextTransaction.Rollback();
                    }
                }
            }
        }
示例#3
0
        //Add usuario será feito no AccountController, para enviar o email com a senha temporaria.
        public int AddPessoa(RegistrarComumViewModel pessoa)
        {
            using (NimbusAcad_DB_Entities db = new NimbusAcad_DB_Entities())
            {
                Negocio_Pessoa        NP  = new Negocio_Pessoa();
                Negocio_Endereco      NE  = new Negocio_Endereco();
                Negocio_Base_Endereco NBE = new Negocio_Base_Endereco();

                NP.Primeiro_Nome    = pessoa.PrimeiroNome;
                NP.Sobrenome        = pessoa.Sobrenome;
                NP.CPF              = pessoa.CPF;
                NP.RG               = pessoa.RG;
                NP.Sexo             = pessoa.Sexo;
                NP.Dt_Nascimento    = pessoa.DtNascimento;
                NP.Tel_Principal    = pessoa.TelPrincipal;
                NP.Tel_Opcional     = pessoa.TelOpcional;
                NP.Email            = pessoa.Email;
                NP.Email_Confirmado = false;
                NP.Tot_Notif_NL     = 0;

                db.Negocio_Pessoa.Add(NP);
                db.SaveChanges();

                //Endereço --> Verificar se já existe endereço no CEP informado
                var endereco = db.Negocio_Base_Endereco.Where(o => o.CEP.Equals(pessoa.CEP)).FirstOrDefault();
                if (endereco == null)
                {
                    //Negocio_Base_Endereco
                    NBE.CEP        = pessoa.CEP;
                    NBE.Logradouro = pessoa.Logradouro;
                    NBE.Bairro     = pessoa.Bairro;
                    NBE.Cidade     = pessoa.Cidade;
                    NBE.Estado     = pessoa.Estado;
                    NBE.Pais       = pessoa.Pais;

                    db.Negocio_Base_Endereco.Add(NBE);
                    db.SaveChanges();

                    //Negocio_Endereco
                    int pessoaID = GetPessoaIDporEmail(pessoa.Email);
                    if (pessoaID != 0)
                    {
                        NE.CEP         = pessoa.CEP;
                        NE.Complemento = pessoa.Complemento;
                        NE.Numero      = pessoa.Numero;
                        NE.Ativo       = true;
                        NE.Pessoa_ID   = pessoaID;

                        db.Negocio_Endereco.Add(NE);
                        db.SaveChanges();
                    }
                }
                else
                {
                    int pessoaID = GetPessoaIDporEmail(pessoa.Email);
                    if (pessoaID != 0)
                    {
                        NE.CEP         = pessoa.CEP;
                        NE.Complemento = pessoa.Complemento;
                        NE.Numero      = pessoa.Numero;
                        NE.Ativo       = true;
                        NE.Pessoa_ID   = pessoaID;

                        db.Negocio_Endereco.Add(NE);
                        db.SaveChanges();
                    }
                }
                return(GetPessoaIDporEmail(pessoa.Email));
            }
        }