public List <PessoaDTO> FindPessoas <KProperty>(string texto, Expression <Func <Pessoa, KProperty> > orderByExpression, bool ascending, int pageIndex, int pageCount) { try { if (pageIndex <= 0 || pageCount <= 0) { throw new Exception("Argumentos da paginação inválidos."); } var spec = PessoaSpecifications.Consulta(); List <Pessoa> pessoas = _pessoaRepository.GetPaged <KProperty>(pageIndex, pageCount, spec, orderByExpression, ascending).ToList(); var adapter = TypeAdapterFactory.CreateAdapter(); return(adapter.Adapt <List <Pessoa>, List <PessoaDTO> >(pessoas)); } catch (ApplicationValidationErrorsException ex) { throw ex; } catch (Exception ex) { LoggerFactory.CreateLog().LogError(ex); throw new Exception("O servidor não respondeu."); } }
public PessoaDTO FindPessoa(int pessoaId) { try { if (pessoaId <= 0) { throw new Exception("Id do usuário inválido."); } var spec = PessoaSpecifications.Consulta(); var pessoa = _pessoaRepository.Get(pessoaId); if (pessoa == null) { throw new Exception("Usuário não encontrado."); } // pessoa.Nome = Encryption.DecryptToString(pessoa.Nome); var adapter = TypeAdapterFactory.CreateAdapter(); return(adapter.Adapt <Pessoa, PessoaDTO>(pessoa)); } catch (ApplicationValidationErrorsException ex) { throw ex; } catch (Exception ex) { LoggerFactory.CreateLog().LogError(ex); throw new Exception("O servidor não respondeu."); } }
public void RemovePessoa(int pessoaId) { try { if (pessoaId <= 0) { throw new Exception("Id da pessoa inválido."); } var pessoa = _pessoaRepository.Get(pessoaId); if (pessoa == null) { throw new Exception("Pessoa não encontrado."); } var spec = PessoaSpecifications.Consulta(); if (_pessoaRepository.Count(spec) <= 1) { throw new ApplicationValidationErrorsException("Não é possível excluir o único usuário do sistema."); } _pessoaRepository.Remove(pessoa); _pessoaRepository.Commit(); } catch (ApplicationValidationErrorsException ex) { throw ex; } catch (Exception ex) { LoggerFactory.CreateLog().LogError(ex); throw new Exception("O servidor não respondeu."); } }
public void UpdatePessoa(PessoaDTO pessoaDTO) { try { if (pessoaDTO == null) { throw new Exception("Objeto não instânciado."); } var spec = PessoaSpecifications.Consulta(); var persistido = _pessoaRepository.Get(pessoaDTO.Id); if (persistido == null) { throw new Exception("Pessoa não encontrado."); } var corrente = PessoaFactory.CreatePessoa(pessoaDTO.Nome, persistido.Cpf, persistido.Cnpj, persistido.RazaoSocial, persistido.NomeFantasia, pessoaDTO.LimiteCredito, pessoaDTO.Email, persistido.DataCadastro, DateTime.Now, pessoaDTO.Ativo, pessoaDTO.VendedorId, persistido.Ie, persistido.Sexo, pessoaDTO.EstadoCivil, persistido.DataNascimento, pessoaDTO.Escolaridade, pessoaDTO.Profissao, pessoaDTO.Nacionalidade, persistido.TipoPessoa, pessoaDTO.CompraPrazo, pessoaDTO.SubISS, pessoaDTO.ObjetivoComercial, pessoaDTO.RetemImpostos, persistido.FisicaJuridica, pessoaDTO.PercentualVista, pessoaDTO.PercentualPrazo); corrente.Id = persistido.Id; AlterarPessoa(persistido, corrente); } catch (ApplicationValidationErrorsException ex) { throw ex; } catch (Exception ex) { LoggerFactory.CreateLog().LogError(ex); throw new Exception("O servidor não respondeu."); } }
public long CountPessoas(string texto) { try { var spec = PessoaSpecifications.Consulta(); return(_pessoaRepository.Count(spec)); } catch (ApplicationValidationErrorsException ex) { throw ex; } catch (Exception ex) { LoggerFactory.CreateLog().LogError(ex); throw new Exception("O servidor não respondeu."); } }
public List <PessoaDTO> FindPessoas <KProperty>(string texto, Expression <Func <Pessoa, KProperty> > orderByExpression, bool ascending = true) { try { var spec = PessoaSpecifications.Consulta(); List <Pessoa> pessoas = _pessoaRepository.AllMatching <KProperty>(spec, orderByExpression, ascending).ToList(); var adapter = TypeAdapterFactory.CreateAdapter(); return(adapter.Adapt <List <Pessoa>, List <PessoaDTO> >(pessoas)); } catch (ApplicationValidationErrorsException ex) { throw ex; } catch (Exception ex) { LoggerFactory.CreateLog().LogError(ex); throw new Exception("O servidor não respondeu."); } }