示例#1
0
        private List <TransporteFaxBovespaCabecalhoGrid> PreparaDetalheResumidoVista(List <FaxBovespaDetalheInfo> pList, DateTime dtLiquidacaoVista)
        {
            var lRetorno = new List <TransporteFaxBovespaCabecalhoGrid>();

            var lLista = from a in pList
                         group a by new
            {
                a.PapelSentido,
                a.PapelCodigoNegocio
            }
            into g
                select new FaxBovespaCabecalhoGridInfo
            {
                Sentido         = g.Key.PapelSentido,
                CodigoNegocio   = g.Key.PapelCodigoNegocio,
                DetalhesBovespa = g.ToList(),
                TipoMercado     = g.ToList()[0].PapelTipoMercado
            };

            foreach (var a in lLista)
            {
                if (a.TipoMercado != "VIS" &&
                    a.TipoMercado != "TER" &&
                    a.TipoMercado != "FRA" &&
                    a.TipoMercado != "EOC" &&
                    a.TipoMercado != "EOV")
                {
                    continue;
                }

                var lTrans = new TransporteFaxBovespaCabecalhoGrid();

                lTrans.DetalhesBovespa = new List <TransporteFaxBovespaDetalhe>();

                foreach (var b in a.DetalhesBovespa)
                {
                    if (b.PapelTipoMercado != "VIS" &&
                        b.PapelTipoMercado != "TER" &&
                        b.PapelTipoMercado != "FRA" &&
                        b.PapelTipoMercado != "EOC" &&
                        b.PapelTipoMercado != "EOV")
                    {
                        continue;
                    }

                    var lDetalhe = new TransporteFaxBovespaDetalhe();

                    lTrans.SomaPreco      = b.SomaMedio.ToString("N4");
                    lTrans.SomaQuantidade = b.SomaQtdeTotal.ToString();
                    lTrans.SomaTotal      = b.SomaTotal.ToString("N2");

                    lDetalhe.PapelCodigoNegocio = b.PapelCodigoNegocio;
                    lDetalhe.PapelSentido       = b.PapelSentido;
                    lDetalhe.PapelTipoMercado   = b.PapelTipoMercado;
                    lDetalhe.PapelNomeRes       = b.PapelNomeRes;
                    lDetalhe.PapelQuantidade    = b.PapelQuantidade.ToString("N0");
                    lDetalhe.PapelPreco         = b.PapelPreco.ToString("N2");
                    lDetalhe.PapelVolume        = b.PapelTotal.ToString("N2");

                    lTrans.DetalhesBovespa.Add(lDetalhe);
                }

                lRetorno.Add(lTrans);
            }

            return(lRetorno);
        }
示例#2
0
        private List <TransporteFaxBovespaCabecalhoGrid> PreparaCabecalhoDetalheVista(List <FaxBovespaDetalheInfo> pList, DateTime dtLiquidacaoVista)
        {
            var lRetorno = new List <TransporteFaxBovespaCabecalhoGrid>();

            var lLista = from a in pList
                         group a by new
            {
                a.PapelCodigoNegocio,
                a.PapelTipoMercado,
                a.PapelSentido,
                a.SomaMedio,
                a.SomaQtdeTotal,
                a.SomaTotal,
                a.SomaTotalCorretagem,
                a.TotalNet,
                a.TotalPrecoNet
            } into g
                select new FaxBovespaCabecalhoGridInfo
            {
                CodigoNegocio   = g.Key.PapelCodigoNegocio,
                TipoMercado     = g.Key.PapelTipoMercado,
                Sentido         = g.Key.PapelSentido,
                SomaPreco       = g.Key.SomaMedio,
                SomaQuantidade  = int.Parse(g.Key.SomaQtdeTotal.ToString()),
                SomaCorretagem  = g.Key.SomaTotalCorretagem,
                SomaTotal       = g.Key.SomaTotal,
                TotalNet        = g.Key.TotalNet,
                TotalPrecoNet   = g.Key.TotalPrecoNet,
                DetalhesBovespa = g.ToList()
            };

            var lTrans = new TransporteFaxBovespaCabecalhoGrid();

            foreach (var a in lLista)
            {
                if (a.TipoMercado != "VIS" &&
                    a.TipoMercado != "TER" &&
                    a.TipoMercado != "FRA" &&
                    a.TipoMercado != "EOC" &&
                    a.TipoMercado != "EOV")
                {
                    continue;
                }

                lTrans = new TransporteFaxBovespaCabecalhoGrid();

                lTrans.NomeRes        = a.NomeRes;
                lTrans.CodigoIsin     = a.CodigoIsin;
                lTrans.CodigoNegocio  = a.CodigoNegocio;
                lTrans.SomaCorretagem = a.SomaCorretagem.ToString("N2");
                lTrans.SomaPreco      = a.SomaPreco.ToString("N4");
                lTrans.SomaQuantidade = a.SomaQuantidade.ToString("N0");
                lTrans.SomaTotal      = a.SomaTotal.ToString("N2");
                lTrans.TipoMercado    = a.TipoMercado.ToString();
                lTrans.Sentido        = a.Sentido;
                lTrans.TotalNet       = a.TotalNet.ToString("N2");
                lTrans.TotalPrecoNet  = a.TotalPrecoNet.ToString("N4");
                lTrans.DataLiquidacao = dtLiquidacaoVista.ToString("dd/MM/yyyy");

                lTrans.DetalhesBovespa = new List <TransporteFaxBovespaDetalhe>();

                foreach (var b in a.DetalhesBovespa)
                {
                    if (b.PapelTipoMercado != "VIS" &&
                        b.PapelTipoMercado != "TER" &&
                        b.PapelTipoMercado != "FRA" &&
                        b.PapelTipoMercado != "EOC" &&
                        b.PapelTipoMercado != "EOV")
                    {
                        continue;
                    }

                    TransporteFaxBovespaDetalhe lDetalhe = new TransporteFaxBovespaDetalhe();
                    lTrans.CodigoIsin           = b.PapelCodigoIsin;
                    lTrans.NomeRes              = b.PapelNomeRes;
                    lDetalhe.PapelCodigoNegocio = b.PapelCodigoNegocio;
                    lDetalhe.PapelCorretagem    = b.PapelCorretagem.ToString("N4");
                    lDetalhe.PapelQuantidade    = b.PapelQuantidade.ToString("N0");
                    lDetalhe.PapelPreco         = b.PapelPreco.ToString("N2");
                    lDetalhe.PapelSentido       = b.PapelSentido.ToString();
                    lDetalhe.PapelTotal         = b.PapelTotal.ToString("N2");
                    lDetalhe.PapelTipoMercado   = b.PapelTipoMercado;
                    lDetalhe.PapelNomeRes       = b.PapelNomeRes;
                    lDetalhe.SomaTotal          = b.SomaTotal.ToString("N2");

                    lTrans.DetalhesBovespa.Add(lDetalhe);
                }

                lRetorno.Add(lTrans);
            }

            return(lRetorno);
        }