public IEnumerable <PessoaRecrutamentoViewModel> ObterPessoasAtivas() { var pessoasAtivas = Mapper.Map <IEnumerable <PessoaCurriculoViewModel> >(_pessoaCurriculoRepository.ObterOnde(x => x.Recrutamentos.Any(y => y.Aprovado && y.Situacao == "Contratado"))); var retorno = new List <PessoaRecrutamentoViewModel>(); foreach (var i in pessoasAtivas) { var recrutamento = Mapper.Map <RecrutamentoViewModel>(_recrutamentoRepository.ObterPrimeiroOuPadrao(x => x.PessoaCurriculoId == i.Id)); retorno.Add(new PessoaRecrutamentoViewModel { PessoaCurriculo = i, Recrutamento = recrutamento }); } return(retorno); }
public void AgruparDados() { //Lista as pessoas - RH. Deve conter (matricula, nome da pessoa, cargo, periodoTrabalho) var pessoas = new List <PessoaRecrutamentoViewModel>(); var pessoasAtivas = Mapper.Map <IEnumerable <PessoaCurriculoViewModel> >(_pessoaCurriculoRepository.ObterOnde(x => x.Recrutamentos.Any(y => y.Aprovado && y.Situacao == "Contratado"))); foreach (var i in pessoasAtivas) { var recrutamento = Mapper.Map <RecrutamentoViewModel>(_recrutamentoRepository.ObterPrimeiroOuPadrao(x => x.PessoaCurriculoId == i.Id)); pessoas.Add(new PessoaRecrutamentoViewModel { PessoaCurriculo = i, Recrutamento = recrutamento }); } //Lista de produtos vendidos - PRODUCAO. //todos os produtos https://webapiproducaov3.azurewebsites.net/api/item //todas as vendas https://webapiproducaov3.azurewebsites.net/api/vendas var listaProdutos = _producaoApiService.ObterListaProdutos(); var listaVendas = _producaoApiService.ObterListaVendas(); //Lista de produtos em promoção - MARKETING. //todos os produtos em promocao http://sigemv.ml/api/integracoes var listaProdutosPromocao = _marketingApiService.ObterListaProdutos(); //Lista de preços dos produtos - FINANCEIRO //Fluxo de caixa http://sigefinanceiroapi.azurewebsites.net/Financeiro/LucroPorProduto var lucroPorProdutos = _financeiroApiService.ObterLucroPorProduto(); DadosRelatoriosViewModel dado; string CPF; string Nome; string Cargo; string PeriodoTrabalho; string nomeprod; string valorRealParaEmpresa; bool isPromotion; for (int i = 0; i < listaVendas.Count; i++) { CPF = string.Empty; Nome = string.Empty; Cargo = string.Empty; PeriodoTrabalho = string.Empty; nomeprod = string.Empty; valorRealParaEmpresa = string.Empty; isPromotion = false; for (int j = 0; j < listaProdutosPromocao.Count; j++) { if (listaVendas[i].codprod == listaProdutosPromocao[j].ID) { //armazenar dados da venda isPromotion = true; break; } } try { if (isPromotion) { for (int j = 0; j < listaProdutos.Count; j++) { if (listaVendas[i].codprod == listaProdutos[j].codprod) { //armazenar dados do produto nomeprod = listaProdutos[j].nomeprod; break; } } for (int j = 0; j < pessoas.Count; j++) { //armazenar dados do operador //if (listaVendas[i].idOperador.ToString() == pessoas[j].PessoaCurriculo.Id) //{ //CPF = pessoas[j].PessoaCurriculo.CPF; //Nome = pessoas[j].PessoaCurriculo.Nome; //Cargo = pessoas[j].Recrutamento.Cargo; //PeriodoTrabalho = pessoas[j].Recrutamento.PeriodoTrabalho; //break; //} CPF = pessoas[i].PessoaCurriculo.CPF; Nome = pessoas[i].PessoaCurriculo.Nome; Cargo = pessoas[i].Recrutamento.Cargo; PeriodoTrabalho = pessoas[i].Recrutamento.PeriodoTrabalho; } for (int j = 0; j < lucroPorProdutos.Count; j++) { if (listaVendas[i].codprod == lucroPorProdutos[j].idProduto) { //armazenar dados do lucro real valorRealParaEmpresa = lucroPorProdutos[j].valorRealParaEmpresa; break; } } dado = new DadosRelatoriosViewModel() { CPF = CPF, Nome = Nome, Cargo = Cargo, PeriodoTrabalho = PeriodoTrabalho, nomeprod = nomeprod, valorRealParaEmpresa = valorRealParaEmpresa, dtvenda = listaVendas[i].dtvenda, qtdvenda = listaVendas[i].qtdvenda }; _todosOsDados.Add(dado); } } catch (Exception) { } } }