private List <CotacoesPorCidade> GetCotacoesPorCidadeWithCotacoes(List <Cotacao> objCotacao, int cotacaoCidadeId, DateTime dataCotacao)
        {
            List <CotacoesPorCidade> objCotacoesPorCidade = new List <CotacoesPorCidade>();

            foreach (var cotacao in objCotacao)
            {
                List <CotacaoPorCidade> aux = new List <CotacaoPorCidade>();
                if (dataCotacao == DateTime.MinValue)
                {
                    aux = GetCotacaoPorCidade(cotacao.Id, cotacaoCidadeId, 2).ToList();
                }
                else
                {
                    aux = GetCotacaoPorCidadeByData(cotacao.Id, cotacaoCidadeId, dataCotacao, 2).ToList();
                }

                if (aux.Count == 1)
                {
                    CotacoesPorCidade aux2 = new CotacoesPorCidade();
                    aux2.Valor       = aux[0].Valor;
                    aux2.DataCotacao = aux[0].DataCotacao;
                    aux2.ProdutoNome = aux[0].Cotacao.CotacaoProduto.Nome;
                    aux2.ProdutoSlug = aux[0].Cotacao.CotacaoProduto.Url;

                    objCotacoesPorCidade.Add(aux2);
                }
                else if (aux.Count == 2)
                {
                    CotacoesPorCidade aux2 = new CotacoesPorCidade();
                    aux2.Valor         = aux[0].Valor;
                    aux2.ValorAnterior = aux[1].Valor;
                    aux2.DataCotacao   = aux[0].DataCotacao;
                    aux2.ProdutoNome   = aux[0].Cotacao.CotacaoProduto.Nome;
                    aux2.ProdutoSlug   = aux[0].Cotacao.CotacaoProduto.Url;

                    objCotacoesPorCidade.Add(aux2);
                }
            }
            return(objCotacoesPorCidade);
        }
        private List <CotacoesPorCidade> GetCotacoesPorCidadeAndProduto(int cotacaoId, int take)
        {
            List <CotacoesPorCidade> objCotacoesPorCidade = new List <CotacoesPorCidade>();

            List <int> idCidades = GetCotacaoProdutoCidade(cotacaoId).ToList();

            foreach (var cidadeId in idCidades)
            {
                List <CotacaoPorCidade> aux = GetCotacaoPorCidade(cotacaoId, cidadeId, 2).ToList();
                if (aux.Count == 1)
                {
                    CotacoesPorCidade aux2 = new CotacoesPorCidade();
                    aux2.Cidade      = aux[0].CotacaoCidade.Cidade;
                    aux2.CidadeSlug  = aux[0].CotacaoCidade.Slug;
                    aux2.Valor       = aux[0].Valor;
                    aux2.DataCotacao = aux[0].DataCotacao;
                    aux2.ProdutoNome = aux[0].Cotacao.CotacaoProduto.Nome;
                    aux2.ProdutoSlug = aux[0].Cotacao.CotacaoProduto.Url;

                    objCotacoesPorCidade.Add(aux2);
                }
                else if (aux.Count == 2)
                {
                    CotacoesPorCidade aux2 = new CotacoesPorCidade();
                    aux2.Cidade        = aux[0].CotacaoCidade.Cidade;
                    aux2.CidadeSlug    = aux[0].CotacaoCidade.Slug;
                    aux2.Valor         = aux[0].Valor;
                    aux2.ValorAnterior = aux[1].Valor;
                    aux2.DataCotacao   = aux[0].DataCotacao;
                    aux2.ProdutoNome   = aux[0].Cotacao.CotacaoProduto.Nome;
                    aux2.ProdutoSlug   = aux[0].Cotacao.CotacaoProduto.Url;

                    objCotacoesPorCidade.Add(aux2);
                }
            }
            return(objCotacoesPorCidade);
        }