Exemple #1
0
        public void RetornoDWHistoricoCompraProdutoMes(int ano, int trimestre)
        {
            DataTable dtHistoricoCompraProduto = RepositoryService.HistoricoComprasProdutoMes.ListarPor(ano.ToString(), trimestre.ToString());

            foreach (DataRow item in dtHistoricoCompraProduto.Rows)
            {
                int productNumber = 0;
                if (!Int32.TryParse(item["CD_item"].ToString(), out productNumber))
                {
                    continue;
                }

                Product produto = RepositoryService.Produto.ObterPor(item["CD_item"].ToString());

                if (produto == null)
                {
                    continue;
                }


                HistoricoDeComprasPorProdutoMes historicoCompraProdutoMes = RepositoryService.HistoricoComprasProdutoMes
                                                                            .ObterPor(trimestre, ano, produto.ID.Value, (int)item["CD_Mes"]);

                if (historicoCompraProdutoMes != null)
                {
                    historicoCompraProdutoMes.Valor      = decimal.Parse(item["Valor"].ToString());
                    historicoCompraProdutoMes.quantidade = decimal.Parse(item["Qtd"].ToString());

                    HistoricoDeComprasPorProduto hCompraProduto = RepositoryService.HistoricoComprasProduto
                                                                  .ObterPor(historicoCompraProdutoMes.trimestre, historicoCompraProdutoMes.ano, historicoCompraProdutoMes.produto.Id);

                    if (hCompraProduto != null)
                    {
                        historicoCompraProdutoMes.HistoricoProduto = new Lookup(hCompraProduto.ID.Value, "");
                    }

                    RepositoryService.HistoricoComprasProdutoMes.Update(historicoCompraProdutoMes);
                }
                else
                {
                    HistoricoDeComprasPorProdutoMes hsCompProdutoMes = new HistoricoDeComprasPorProdutoMes(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline);
                    hsCompProdutoMes.produto    = new Lookup(produto.ID.Value, "");
                    hsCompProdutoMes.quantidade = decimal.Parse(item["Qtd"].ToString());
                    hsCompProdutoMes.Valor      = decimal.Parse(item["Valor"].ToString());
                    hsCompProdutoMes.mes        = int.Parse(item["CD_Mes"].ToString());
                    hsCompProdutoMes.ano        = ano;
                    hsCompProdutoMes.trimestre  = trimestre;
                    hsCompProdutoMes.Nome       = produto.Codigo.ToString() + " - " + Helper.ConverterMesEnumParaExtenso(item["CD_Mes"].ToString()) + " - " + ano;

                    RepositoryService.HistoricoComprasProdutoMes.Create(hsCompProdutoMes);
                }
            }
        }
        public void RetornoDWHistoricoCompraProduto(int ano, int trimestre)
        {
            DataTable dtHistoricoCompraProduto = RepositoryService.HistoricoComprasProduto.ListarPor(ano.ToString(), trimestre.ToString());

            foreach (DataRow item in dtHistoricoCompraProduto.Rows)
            {
                int productNumber = 0;
                if (!Int32.TryParse(item["CD_item"].ToString(), out productNumber))
                {
                    continue;
                }

                Product produto = RepositoryService.Produto.ObterPor(item["CD_item"].ToString());

                if (produto == null)
                {
                    continue;
                }

                HistoricoDeComprasPorProduto historicoCompraProduto = RepositoryService.HistoricoComprasProduto.ObterPor(trimestre, ano, produto.ID.Value);

                if (historicoCompraProduto != null)
                {
                    historicoCompraProduto.Valor      = decimal.Parse(item["Valor"].ToString());
                    historicoCompraProduto.quantidade = decimal.Parse(item["Qtd"].ToString());

                    if (produto.UnidadeNegocio != null && produto.SubfamiliaProduto != null && produto.Segmento != null && produto.FamiliaProduto != null)
                    {
                        HistoricoComprasSubfamilia hSubFamilia = RepositoryService.HistoricoComprasSubFamilia
                                                                 .ObterPor(produto.UnidadeNegocio.Id, produto.SubfamiliaProduto.Id, produto.Segmento.Id, produto.FamiliaProduto.Id, ano, trimestre);

                        if (hSubFamilia != null)
                        {
                            historicoCompraProduto.SubFamilia = new Lookup(hSubFamilia.ID.Value, "");
                        }
                    }

                    RepositoryService.HistoricoComprasProduto.Update(historicoCompraProduto);
                }
                else
                {
                    HistoricoDeComprasPorProduto hsCompProduto = new HistoricoDeComprasPorProduto(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline);
                    hsCompProduto.produto    = new Lookup(produto.ID.Value, "");
                    hsCompProduto.quantidade = decimal.Parse(item["Qtd"].ToString());
                    hsCompProduto.Valor      = decimal.Parse(item["Valor"].ToString());
                    hsCompProduto.ano        = ano;
                    hsCompProduto.trimestre  = trimestre;
                    hsCompProduto.Nome       = produto.Codigo.ToString() + " - " + ano;

                    if (produto.UnidadeNegocio != null && produto.SubfamiliaProduto != null && produto.Segmento != null && produto.FamiliaProduto != null)
                    {
                        HistoricoComprasSubfamilia hSubFamilia = RepositoryService.HistoricoComprasSubFamilia
                                                                 .ObterPor(produto.UnidadeNegocio.Id, produto.SubfamiliaProduto.Id, produto.Segmento.Id, produto.FamiliaProduto.Id, ano, trimestre);

                        if (hSubFamilia != null)
                        {
                            hsCompProduto.SubFamilia = new Lookup(hSubFamilia.ID.Value, "");
                        }
                    }

                    RepositoryService.HistoricoComprasProduto.Create(hsCompProduto);
                }
            }
        }