public void Salvar(DocumentoDto pDocumentoDto, Usuarios pUsuario)
        {
            var BdDocumento = _documentosCollection.Find(
                Builders <Documentos> .Filter.Eq(doc => doc.UsuarioId, pUsuario.UsuarioId)
                ).FirstOrDefault();

            if (Utils.DocumentoValido(pDocumentoDto.Numero, pDocumentoDto.Tipo) && BdDocumento == null)
            {
                var collectionName = _documentosCollection.CollectionNamespace.CollectionName;
                var lDocumentoId   = new SequenciasBusiness(_mongoDb).ProximoValor(collectionName);

                var lDocumento = new Documentos
                                 (
                    pDocumentoDto.Tipo,
                    pDocumentoDto.Numero
                                 );

                lDocumento.DocumentoId = lDocumentoId;
                lDocumento.UsuarioId   = pUsuario.UsuarioId;


                _documentosCollection.InsertOne(lDocumento);
            }
            else
            {
                throw new Exception("Nao foi possivel salvar o documento");
            }
        }
예제 #2
0
        public void Salvar(EnderecoDto pEnderecoDto, Usuarios pUsuario)
        {
            var BdEndereco = _enderecoCollection.Find(
                Builders <Enderecos> .Filter.Eq(end => end.UsuarioId, pUsuario.UsuarioId)
                ).FirstOrDefault();

            if (Utils.CepValido(pEnderecoDto.Cep) && BdEndereco == null)
            {
                var collectionName = _enderecoCollection.CollectionNamespace.CollectionName;
                var lEnderecoId    = new SequenciasBusiness(_mongoDb).ProximoValor(collectionName);

                var lEndereco = new Enderecos
                                (
                    pEnderecoDto.Numero,
                    pEnderecoDto.Rua,
                    pEnderecoDto.Cep
                                );

                lEndereco.EnderecoId = lEnderecoId;
                lEndereco.UsuarioId  = pUsuario.UsuarioId;

                _enderecoCollection.InsertOne(lEndereco);
            }
            else
            {
                throw new System.Exception("Não foi possivel salvar o endereço");
            }
        }
예제 #3
0
        public void Salvar(ProdutoDto pProdutoDto)
        {
            var collectionName = _produtosCollection.CollectionNamespace.CollectionName;
            var lProdutoId     = new SequenciasBusiness(_mongoDb).ProximoValor(collectionName);

            var lProduto = new Produtos
                           (
                lProdutoId,
                pProdutoDto.Nome,
                pProdutoDto.Preco,
                pProdutoDto.Quantidade
                           );

            _produtosCollection.InsertOne(lProduto);
        }
        public void Salvar(TelefoneDto pTelefoneDto, Usuarios pUsuario)
        {
            if (Utils.TelValido(pTelefoneDto.Area, pTelefoneDto.Numero))
            {
                var collectionName = _telefonesCollection.CollectionNamespace.CollectionName;
                var lTelefoneId    = new SequenciasBusiness(_mongoDb).ProximoValor(collectionName);

                var lTelefone = new Telefones
                                (
                    pTelefoneDto.Area,
                    pTelefoneDto.Numero
                                );

                lTelefone.TelefoneId = lTelefoneId;
                lTelefone.UsuarioId  = pUsuario.UsuarioId;

                _telefonesCollection.InsertOne(lTelefone);
            }
            else
            {
                throw new Exception("Não foi possivel salvar os telefones");
            }
        }
        public void Salvar(UsuarioDto pUsuarioDto)
        {
            var checarEmail = UsuarioPorEmail(pUsuarioDto.Login.Email);

            if (checarEmail != null)
            {
                throw new Exception("Email já cadastrado");
            }
            else
            {
                if (pUsuarioDto.Login.Senha == pUsuarioDto.SenhaConfirmacao)
                {
                    if (Utils.SenhaValida(pUsuarioDto.Login.Senha) && Utils.EmailValido(pUsuarioDto.Login.Email))
                    {
                        var lUsuario = new Usuarios
                                       (
                            pUsuarioDto.Nome,
                            pUsuarioDto.Sobrenome,
                            pUsuarioDto.Login.Email,
                            pUsuarioDto.Login.Senha,
                            "user"

                                       );

                        if (lUsuario != null)
                        {
                            var collectionName = _usuariosCollection.CollectionNamespace.CollectionName;
                            var lUsuarioId     = new SequenciasBusiness(_mongoDb).ProximoValor(collectionName);

                            lUsuario.UsuarioId = lUsuarioId;

                            _documentosBusiness.Salvar(pUsuarioDto.Documento, lUsuario);
                            _enderecosBusiness.Salvar(pUsuarioDto.Endereco, lUsuario);
                            _telefonesBusiness.Salvar(pUsuarioDto.Telefone, lUsuario);

                            var documento = _documentosBusiness.DocumentoPorId(lUsuario.UsuarioId);
                            var endereco  = _enderecosBusiness.EnderecoPorId(lUsuario.UsuarioId);
                            var telefone  = _telefonesBusiness.TelefonePorId(lUsuario.UsuarioId);

                            if (documento != null && endereco != null && telefone != null)
                            {
                                lUsuario.Documento = documento;
                                lUsuario.Endereco  = endereco;
                                lUsuario.Telefone  = telefone;

                                _usuariosCollection.InsertOne(lUsuario);
                            }
                            else
                            {
                                _documentosBusiness.DeletarDocumento(lUsuario.UsuarioId);
                                _enderecosBusiness.DeletarEndereco(lUsuario.UsuarioId);
                                _telefonesBusiness.DeletarTelefone(lUsuario);

                                throw new Exception("Não foi possivel finalizar a operação");
                            }
                        }
                        else
                        {
                            throw new Exception("Erro ao cadastrar usuário");
                        }
                    }
                    else
                    {
                        throw new Exception("Formato de email ou senha invalidos");
                    }
                }
                else
                {
                    throw new Exception("Senhas não se coincidem");
                }
            }
        }