Example #1
0
        public IActionResult FilterGetAllEmployees(FilterGetAllEmployeesRequest filterGetAllEmployeesRequest)
        {
            try
            {
                var filterGetAllEmployeesDTO = new FilterGetAllEmployeesDTO(
                    filterGetAllEmployeesRequest.EmailUsuario,
                    filterGetAllEmployeesRequest.Cpnj,
                    filterGetAllEmployeesRequest.RazaoSocial,
                    filterGetAllEmployeesRequest.NomeFantasia,
                    filterGetAllEmployeesRequest.Ativo,
                    filterGetAllEmployeesRequest.Cpf,
                    filterGetAllEmployeesRequest.DataCadastro,
                    filterGetAllEmployeesRequest.DataBloqueio,
                    filterGetAllEmployeesRequest.Admin,
                    filterGetAllEmployeesRequest.EmailFuncionario,
                    filterGetAllEmployeesRequest.NomeFuncionario,
                    filterGetAllEmployeesRequest.FuncionarioAtivo
                    );

                if (filterGetAllEmployeesDTO.Invalid)
                {
                    _notificationContext.AddNotifications(filterGetAllEmployeesDTO.ValidationResult);
                    return(BadRequest(_notificationContext.Notifications));
                }
                var f = _iUsuarioService.FilterGetAllEmployees(filterGetAllEmployeesDTO);
                return(Ok(f));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Example #2
0
 public List <EmpresaFuncionarioDTO> FilterGetAllEmployees(FilterGetAllEmployeesDTO filterGetAllEmployeesDTO)
 {
     return(_usuarioRepository.FilterGetAllEmployees(filterGetAllEmployeesDTO));
 }
Example #3
0
        public List <EmpresaFuncionarioDTO> FilterGetAllEmployees(FilterGetAllEmployeesDTO filterGetAllEmployeesDTO)
        {
            var ListaEmpresaFuncionarioDTO = new List <EmpresaFuncionarioDTO>();

            try
            {
                using (var db = new PortifolioContext())
                {
                    var dados = (from u in db.Usuario
                                 join ue in db.UsuarioEmpresa on u.Id equals ue.IdUsuario
                                 join e in db.Empresa on ue.IdEmpresa equals e.IdEmpresa
                                 join f in db.Funcionario on ue.IdEmpresa equals f.IdEmpresa
                                 where u.Email == filterGetAllEmployeesDTO.EmailUsuario
                                 select new
                    {
                        IdEmpresa = ue.IdEmpresa,
                        Cnpj = e.Cnpj,
                        RazaoSocial = e.RazaoSocial,
                        NomeFantasia = e.NomeFantasia,
                        IdFuncionario = f.IdFuncionario,
                        Cpf = f.Cpf,
                        DataCadastro = f.DataCadastro,
                        DataBloqueio = f.DataBloqueio,
                        Admin = f.Admin,
                        Email = f.Email,
                        IdEmpresaFuncionario = f.IdEmpresa,
                        Nome = f.Nome,
                        Ativo = f.Ativo
                    });

                    if (filterGetAllEmployeesDTO.Cpf != null)
                    {
                        dados = dados.Where(x => x.Cpf == filterGetAllEmployeesDTO.Cpf);
                    }

                    if (filterGetAllEmployeesDTO.Cnpj != null)
                    {
                        dados = dados.Where(x => x.Cnpj == filterGetAllEmployeesDTO.Cnpj);
                    }

                    if (filterGetAllEmployeesDTO.RazaoSocial != null)
                    {
                        dados = dados.Where(x => x.RazaoSocial == filterGetAllEmployeesDTO.RazaoSocial);
                    }

                    if (filterGetAllEmployeesDTO.NomeFantasia != null)
                    {
                        dados = dados.Where(x => x.NomeFantasia == filterGetAllEmployeesDTO.NomeFantasia);
                    }
                    if (filterGetAllEmployeesDTO.DataCadastro != null)
                    {
                        dados = dados.Where(x => x.DataCadastro == filterGetAllEmployeesDTO.DataCadastro);
                    }
                    if (filterGetAllEmployeesDTO.DataBloqueio != null)
                    {
                        dados = dados.Where(x => x.DataBloqueio == filterGetAllEmployeesDTO.DataBloqueio);
                    }
                    if (filterGetAllEmployeesDTO.Admin != null)
                    {
                        dados = dados.Where(x => x.Admin == filterGetAllEmployeesDTO.Admin);
                    }
                    if (filterGetAllEmployeesDTO.EmailFuncionario != null)
                    {
                        dados = dados.Where(x => x.Email == filterGetAllEmployeesDTO.EmailFuncionario);
                    }
                    if (filterGetAllEmployeesDTO.NomeFuncionario != null)
                    {
                        dados = dados.Where(x => x.Nome == filterGetAllEmployeesDTO.NomeFuncionario);
                    }
                    if (filterGetAllEmployeesDTO.Ativo != null)
                    {
                        dados = dados.Where(x => x.Ativo == filterGetAllEmployeesDTO.Ativo);
                    }

                    foreach (var d in dados)
                    {
                        var empresaFuncionarioDTO = new EmpresaFuncionarioDTO();
                        empresaFuncionarioDTO.IdEmpresa    = d.IdEmpresa;
                        empresaFuncionarioDTO.Cnpj         = d.Cnpj;
                        empresaFuncionarioDTO.RazaoSocial  = d.RazaoSocial;
                        empresaFuncionarioDTO.NomeFantasia = d.NomeFantasia;

                        var funcionarioDTO = new FuncionarioDTO();
                        funcionarioDTO.IdEmpresa    = d.IdEmpresaFuncionario;
                        funcionarioDTO.Cpf          = d.Cpf;
                        funcionarioDTO.DataCadastro = d.DataCadastro;
                        funcionarioDTO.DataBloqueio = d.DataBloqueio;
                        funcionarioDTO.Admin        = d.Admin;
                        funcionarioDTO.Email        = d.Email;
                        funcionarioDTO.Nome         = d.Nome;
                        funcionarioDTO.Ativo        = d.Ativo;

                        empresaFuncionarioDTO.FuncionarioDTOs = new List <FuncionarioDTO>();
                        empresaFuncionarioDTO.FuncionarioDTOs.Add(funcionarioDTO);

                        ListaEmpresaFuncionarioDTO.Add(empresaFuncionarioDTO);
                    }
                }
                return(ListaEmpresaFuncionarioDTO.OrderBy(x => x.IdEmpresa).OrderBy(x => x.NomeFantasia).ToList());
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }