public void RetornoDWHistoricoCompraCanal(int ano, int trimestre) { DataTable dtHistoricoCompraCanal = RepositoryService.HistoricoComprasCanal.ListarPor(ano.ToString(), trimestre.ToString()); foreach (DataRow item in dtHistoricoCompraCanal.Rows) { Conta canal = RepositoryService.Conta.Retrieve(new Guid(item["CD_guid"].ToString())); if (canal == null) { continue; } UnidadeNegocio unidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString()); if (unidadeNegocio == null) { continue; } HistoricoCompraCanal historicoCompraCanal = RepositoryService.HistoricoCompraCanal.ObterPor(unidadeNegocio.ID.Value, trimestre, ano, canal.ID.Value); if (historicoCompraCanal != null) { historicoCompraCanal.Valor = decimal.Parse(item["Valor"].ToString()); HistoricoComprasTrimestre hsTrimestre = RepositoryService.HistoricoComprasTrimestre .ObterPor(unidadeNegocio.ID.Value, historicoCompraCanal.Ano.Value, historicoCompraCanal.Trimestre.Value); if (hsTrimestre != null) { historicoCompraCanal.TrimestreRelacionamento = new Lookup(hsTrimestre.ID.Value, ""); } RepositoryService.HistoricoComprasCanal.Update(historicoCompraCanal); } else { HistoricoCompraCanal hsHistoricoCompraCanal = new HistoricoCompraCanal(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline); hsHistoricoCompraCanal.Canal = new Lookup(canal.ID.Value, ""); hsHistoricoCompraCanal.UnidadeNegocio = new Lookup(unidadeNegocio.ID.Value, ""); hsHistoricoCompraCanal.Valor = decimal.Parse(item["Valor"].ToString()); hsHistoricoCompraCanal.Ano = ano; hsHistoricoCompraCanal.Trimestre = trimestre; hsHistoricoCompraCanal.Nome = canal.NomeFantasia + " - " + unidadeNegocio.Nome + " - " + ano; HistoricoComprasTrimestre hsTrimestre = RepositoryService.HistoricoComprasTrimestre .ObterPor(unidadeNegocio.ID.Value, hsHistoricoCompraCanal.Ano.Value, hsHistoricoCompraCanal.Trimestre.Value); if (hsTrimestre != null) { hsHistoricoCompraCanal.TrimestreRelacionamento = new Lookup(hsTrimestre.ID.Value, ""); } RepositoryService.HistoricoCompraCanal.Create(hsHistoricoCompraCanal); } } }
public void RetornoDWHistoricoCompraTrimestre(int ano, int trimestre) { DataTable dtHistoricoCompraTrimestre = RepositoryService.HistoricoComprasTrimestre.ListarPor(ano.ToString(), trimestre.ToString()); Console.WriteLine("{0} - Existem {1} para ser atualizados", DateTime.Now, dtHistoricoCompraTrimestre.Rows.Count); foreach (DataRow item in dtHistoricoCompraTrimestre.Rows) { if (item.IsNull("CD_Unidade_Negocio")) { continue; } UnidadeNegocio metaUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item.Field <string>("CD_Unidade_Negocio")); if (metaUnidadeNegocio == null) { continue; } decimal valor = item.IsNull("Valor") ? 0 : item.Field <decimal>("Valor"); HistoricoCompra hsCompra = RepositoryService.HistoricoCompra.ObterPor(metaUnidadeNegocio.ID.Value, ano); HistoricoComprasTrimestre historicoCompraTrimestre = RepositoryService.HistoricoComprasTrimestre.ObterPor(metaUnidadeNegocio.ID.Value, ano, trimestre); if (historicoCompraTrimestre != null) { var historicoCompraTrimestreUpdate = new HistoricoComprasTrimestre(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline) { ID = historicoCompraTrimestre.ID, Valor = valor }; if (hsCompra != null) { historicoCompraTrimestreUpdate.HistoricoCompraUnidade = new Lookup(hsCompra.ID.Value, ""); } RepositoryService.HistoricoComprasTrimestre.Update(historicoCompraTrimestreUpdate); } else { HistoricoComprasTrimestre hsCompTri = new HistoricoComprasTrimestre(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline); hsCompTri.UnidadeNegocio = new Lookup(metaUnidadeNegocio.ID.Value, ""); hsCompTri.Ano = ano; hsCompTri.Trimestre = trimestre; hsCompTri.Valor = valor; hsCompTri.Nome = string.Format("{0} - {1} o trimestre - {2}", metaUnidadeNegocio.Nome, trimestre, ano).Truncate(100); if (hsCompra != null) { hsCompTri.HistoricoCompraUnidade = new Lookup(hsCompra.ID.Value, ""); } RepositoryService.HistoricoComprasTrimestre.Create(hsCompTri); } } }
public void AtualizarFaturamentoDoSegmento(int ano, int trimestre) { DataTable dtHistoricoCompraSegmento = RepositoryService.HistoricoComprasSegmento.ListarPor(ano.ToString(), trimestre.ToString()); foreach (DataRow item in dtHistoricoCompraSegmento.Rows) { UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString()); if (!mUnidadeNegocio.ID.HasValue) { continue; } Segmento mSegmento = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString()); if (mSegmento == null) { continue; } HistoricoComprasSegmento historicoSegmento = RepositoryService.HistoricoComprasSegmento.ObterPor(mUnidadeNegocio.ID.Value, mSegmento.ID.Value, ano, trimestre.ToString()); if (historicoSegmento != null) { historicoSegmento.Valor = decimal.Parse(item["Valor"].ToString()); //Temos que converter pra decimal primeiro por conta do dado do DW historicoSegmento.Quantidade = Convert.ToInt32(decimal.Parse(item["qtd"].ToString())); HistoricoComprasTrimestre hTrimestre = RepositoryService.HistoricoComprasTrimestre.ObterPor(historicoSegmento.UnidadeNegocio.Id, ano, trimestre); if (hTrimestre != null) { historicoSegmento.TrimestreRelacionamento = new Lookup(hTrimestre.ID.Value, ""); } RepositoryService.HistoricoComprasSegmento.Update(historicoSegmento); } else { HistoricoComprasSegmento hsComp = new HistoricoComprasSegmento(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline); hsComp.UnidadeNegocio = new Lookup(mUnidadeNegocio.ID.Value, ""); hsComp.Ano = int.Parse(item["cd_ano"].ToString()); if (String.IsNullOrEmpty(mSegmento.Nome)) { hsComp.Nome = mUnidadeNegocio.Nome + " - " + item["cd_ano"].ToString(); } else { hsComp.Nome = mUnidadeNegocio.Nome + " - " + mSegmento.Nome + " - " + item["cd_ano"].ToString(); } hsComp.Quantidade = Convert.ToInt32(decimal.Parse(item["qtd"].ToString())); hsComp.Valor = decimal.Parse(item["Valor"].ToString()); if (mSegmento != null) { hsComp.Segmento = new Lookup(mSegmento.ID.Value, ""); } hsComp.Trimestre = trimestre; HistoricoComprasTrimestre hTrimestre = RepositoryService.HistoricoComprasTrimestre.ObterPor(hsComp.UnidadeNegocio.Id, hsComp.Ano, trimestre); if (hTrimestre != null) { hsComp.TrimestreRelacionamento = new Lookup(hTrimestre.ID.Value, ""); } RepositoryService.HistoricoComprasSegmento.Create(hsComp); } } }