Пример #1
0
        public void Criar(Guid orcamentounidadeId, OrcamentodaUnidadeporFamilia mOrcamentodaUnidadeporSegFamilia, List <Model.OrcamentoDetalhado> lstOrcamentoDetalhado, Guid familiaId)
        {
            var lstOrcamentoporSegSubFamilia = (from x in lstOrcamentoDetalhado
                                                group x by string.Format("{0}/{1}/{2}", x.Segmento.Id, x.Familia.Id, x.SubFamilia.Id));

            foreach (var OrcaSegSubFamilia in lstOrcamentoporSegSubFamilia)
            {
                OrcamentodaUnidadeporSubFamilia mOrcamentodaUnidadeporSubFamilia;
                mOrcamentodaUnidadeporSubFamilia = RepositoryService.OrcamentodaUnidadeporSubFamilia.ObterOrcamentoSubFamilia(OrcaSegSubFamilia.First().SubFamilia.Id, mOrcamentodaUnidadeporSegFamilia.ID.Value);
                if (mOrcamentodaUnidadeporSubFamilia == null)
                {
                    mOrcamentodaUnidadeporSubFamilia    = new OrcamentodaUnidadeporSubFamilia(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider);
                    mOrcamentodaUnidadeporSubFamilia.ID = Guid.NewGuid();
                    mOrcamentodaUnidadeporSubFamilia.UnidadedeNegocio = mOrcamentodaUnidadeporSegFamilia.UnidadedeNegocio;
                    mOrcamentodaUnidadeporSubFamilia.Ano                 = mOrcamentodaUnidadeporSegFamilia.Ano;
                    mOrcamentodaUnidadeporSubFamilia.Trimestre           = mOrcamentodaUnidadeporSegFamilia.Trimestre;
                    mOrcamentodaUnidadeporSubFamilia.Segmento            = new Lookup(OrcaSegSubFamilia.First().Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Segmento>());
                    mOrcamentodaUnidadeporSubFamilia.FamiliadeProduto    = new Lookup(OrcaSegSubFamilia.First().Familia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.FamiliaProduto>());
                    mOrcamentodaUnidadeporSubFamilia.SubFamilia          = new Lookup(OrcaSegSubFamilia.First().SubFamilia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.SubfamiliaProduto>());
                    mOrcamentodaUnidadeporSubFamilia.OrcamentoporFamilia = new Lookup(mOrcamentodaUnidadeporSegFamilia.ID.Value, SDKore.Crm.Util.Utility.GetEntityName <Model.OrcamentodaUnidadeporFamilia>());
                    mOrcamentodaUnidadeporSubFamilia.Nome                = (mOrcamentodaUnidadeporSegFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Length > 99 ? (mOrcamentodaUnidadeporSegFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Substring(1, 99) : (mOrcamentodaUnidadeporSegFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name);

                    RepositoryService.OrcamentodaUnidadeporSubFamilia.Create(mOrcamentodaUnidadeporSubFamilia);
                }
                ServiceOrcamentodaUnidadeporProduto.Criar(orcamentounidadeId, mOrcamentodaUnidadeporSubFamilia, OrcaSegSubFamilia.ToList(), OrcaSegSubFamilia.First().SubFamilia.Id, mOrcamentodaUnidadeporSegFamilia.OrcamentoporSegmento.Id);
            }
        }
Пример #2
0
        public void RetornoDWTrimestreFamilia(int ano, int trimestre)
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(ano);

            if (lstOrcamentodaUnidade.Count == 0)
            {
                return;
            }

            DataTable dtOrcamentoTrimestreSeg = RepositoryService.OrcamentodaUnidadeporFamilia.ListarOrcamentoFamiliaDW(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());
                FamiliaProduto mFamiliaProduto = RepositoryService.FamiliaProduto.ObterPor(item["CD_familia"].ToString());

                if (mUnidadeNegocio != null && mSegmento != null && mFamiliaProduto != null)
                {
                    OrcamentodaUnidadeporFamilia mOrcamentoCanalTrimetre = RepositoryService.OrcamentodaUnidadeporFamilia.ObterOrcamentoFamilia(mUnidadeNegocio.ID.Value, ano, trimestre, mSegmento.ID.Value, mFamiliaProduto.ID.Value);

                    if (mOrcamentoCanalTrimetre != null)
                    {
                        mOrcamentoCanalTrimetre.OrcamentoRealizado = item.Field <decimal>("vlr");
                        RepositoryService.OrcamentodaUnidadeporFamilia.Update(mOrcamentoCanalTrimetre);
                    }
                }
            }
        }
Пример #3
0
        public void Calcular(OrcamentodaUnidadeporFamilia mOrcamentodaUnidadeporFamilia, OrcamentoDetalhado mOrcamentoDetalhado)
        {
            OrcamentodaUnidadeporSubFamilia mOrcamentodaUnidadeporSubFamilia = RepositoryService.OrcamentodaUnidadeporSubFamilia.ObterOrcamentoSubFamilia(mOrcamentoDetalhado.SubFamiliaID.Value, mOrcamentodaUnidadeporFamilia.ID.Value);

            ServiceOrcamentodaUnidadeporProduto.Calcular(mOrcamentodaUnidadeporSubFamilia, mOrcamentoDetalhado);
        }