public void AtualizarFaturamentoDoSegmento(int ano, int trimestre) { List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(ano); if (lstOrcamentodaUnidade.Count == 0) { return; } DataTable dtOrcamentoTrimestreSeg = RepositoryService.OrcamentodaUnidadeporSegmento.ListarOrcamentoSegmentoDW(ano, trimestre, lstOrcamentodaUnidade); foreach (DataRow item in dtOrcamentoTrimestreSeg.Rows) { UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString()); Segmento mSegmento = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString()); if (mUnidadeNegocio != null && mSegmento != null) { OrcamentodaUnidadeporSegmento orcamentoUnidadePorSegmento = RepositoryService.OrcamentodaUnidadeporSegmento .ObterOrcamentoSegmento(mUnidadeNegocio.ID.Value, ano, trimestre, mSegmento.ID.Value, "itbc_orcamentoporsegmentoid"); if (orcamentoUnidadePorSegmento != null) { orcamentoUnidadePorSegmento.OrcamentoRealizado = item.Field <decimal>("vlr"); RepositoryService.OrcamentodaUnidadeporSegmento.Update(orcamentoUnidadePorSegmento); } } } }
public void Criar(OrcamentodaUnidadeporTrimestre mOrcamentodaUnidadeporTrimestre, List <Model.OrcamentoDetalhado> lstOrcamentoDetalhado) { var lstOrcamentoporSegmento = (from x in lstOrcamentoDetalhado group x by string.Format("{0}", x.Segmento.Id)); foreach (var OrcaSegmento in lstOrcamentoporSegmento) { OrcamentodaUnidadeporSegmento mOrcamentodaUnidadeporSegmento; mOrcamentodaUnidadeporSegmento = RepositoryService.OrcamentodaUnidadeporSegmento.ObterOrcamentoSegmento(OrcaSegmento.First().Segmento.Id, mOrcamentodaUnidadeporTrimestre.ID.Value); if (mOrcamentodaUnidadeporSegmento == null) { mOrcamentodaUnidadeporSegmento = new OrcamentodaUnidadeporSegmento(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider); mOrcamentodaUnidadeporSegmento.ID = Guid.NewGuid(); mOrcamentodaUnidadeporSegmento.Nome = mOrcamentodaUnidadeporTrimestre.Nome + " - " + OrcaSegmento.First().Segmento.Name; mOrcamentodaUnidadeporSegmento.UnidadedeNegocio = mOrcamentodaUnidadeporTrimestre.UnidadedeNegocio; mOrcamentodaUnidadeporSegmento.Ano = mOrcamentodaUnidadeporTrimestre.Ano; mOrcamentodaUnidadeporSegmento.Trimestre = mOrcamentodaUnidadeporTrimestre.Trimestre; //mOrcamentodaUnidadeporSegmento.Segmento = new Lookup(item.Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName<Model.Segmento>()); mOrcamentodaUnidadeporSegmento.Segmento = new Lookup(OrcaSegmento.First().Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Segmento>()); mOrcamentodaUnidadeporSegmento.OrcamentoporTrimestredaUnidade = new Lookup(mOrcamentodaUnidadeporTrimestre.ID.Value, SDKore.Crm.Util.Utility.GetEntityName <Model.OrcamentodaUnidadeporTrimestre>()); RepositoryService.OrcamentodaUnidadeporSegmento.Create(mOrcamentodaUnidadeporSegmento); } ServiceOrcamentodaUnidadeporFamilia.Criar(mOrcamentodaUnidadeporTrimestre.OrcamentoporUnidade.Id, mOrcamentodaUnidadeporSegmento, OrcaSegmento.ToList(), OrcaSegmento.First().Segmento.Id); } }
public void Criar(Guid orcamentounidadeId, OrcamentodaUnidadeporSegmento mOrcamentodaUnidadeporSegmento, List <Model.OrcamentoDetalhado> lstOrcamentoDetalhado, Guid SegmentoId) { var lstorcamentoporsegfamilia = (from x in lstOrcamentoDetalhado group x by string.Format("{0}/{1}", x.Segmento.Id, x.Familia.Id)); foreach (var OrcaSegFamilia in lstorcamentoporsegfamilia) { OrcamentodaUnidadeporFamilia mOrcamentodaUnidadeporSegFamilia; mOrcamentodaUnidadeporSegFamilia = RepositoryService.OrcamentodaUnidadeporFamilia.ObterOrcamentoFamilia(OrcaSegFamilia.First().Familia.Id, mOrcamentodaUnidadeporSegmento.ID.Value); if (mOrcamentodaUnidadeporSegFamilia == null) { mOrcamentodaUnidadeporSegFamilia = new OrcamentodaUnidadeporFamilia(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider); mOrcamentodaUnidadeporSegFamilia.ID = Guid.NewGuid(); mOrcamentodaUnidadeporSegFamilia.UnidadedeNegocio = mOrcamentodaUnidadeporSegmento.UnidadedeNegocio; mOrcamentodaUnidadeporSegFamilia.Ano = mOrcamentodaUnidadeporSegmento.Ano; mOrcamentodaUnidadeporSegFamilia.Trimestre = mOrcamentodaUnidadeporSegmento.Trimestre; mOrcamentodaUnidadeporSegFamilia.Segmento = new Lookup(OrcaSegFamilia.First().Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Segmento>()); mOrcamentodaUnidadeporSegFamilia.FamiliadeProduto = new Lookup(OrcaSegFamilia.First().Familia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.FamiliaProduto>()); mOrcamentodaUnidadeporSegFamilia.OrcamentoporSegmento = new Lookup(mOrcamentodaUnidadeporSegmento.ID.Value, SDKore.Crm.Util.Utility.GetEntityName <Model.OrcamentodaUnidadeporSegmento>()); mOrcamentodaUnidadeporSegFamilia.Nome = (mOrcamentodaUnidadeporSegmento.Nome + " - " + OrcaSegFamilia.First().Familia.Name).ToString().Length > 99 ? (mOrcamentodaUnidadeporSegmento.Nome + " - " + OrcaSegFamilia.First().Familia.Name).Substring(1, 99) : (mOrcamentodaUnidadeporSegmento.Nome + " - " + OrcaSegFamilia.First().Familia.Name); RepositoryService.OrcamentodaUnidadeporFamilia.Create(mOrcamentodaUnidadeporSegFamilia); } ServiceOrcamentodaUnidadeporSubFamilia.Criar(orcamentounidadeId, mOrcamentodaUnidadeporSegFamilia, OrcaSegFamilia.ToList(), OrcaSegFamilia.First().Familia.Id); } }