public void RetornoDWCanalSegmento()
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(DateTime.Now.Date.Year);

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

            DataTable dtOrcamentoCanalSeg = RepositoryService.OrcamentodoCanalporSegmento.ListarCanalSegmentoDW(DateTime.Now.Date.Year, Helper.TrimestreAtual()[1], lstOrcamentodaUnidade);

            #region Atualiza Orçamentos Trimestre
            foreach (DataRow item in dtOrcamentoCanalSeg.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Conta          mConta          = RepositoryService.Conta.ObterCanal(item["CD_Emitente"].ToString());
                Segmento       mSegmento       = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString());

                if (mUnidadeNegocio != null && mConta != null && mSegmento != null)
                {
                    OrcamentodoCanalporSegmento mOrcamentodoCanalporSegmento = RepositoryService.OrcamentodoCanalporSegmento.ObterPor(mUnidadeNegocio.ID.Value, Convert.ToInt32(item["cd_ano"].ToString()), Helper.TrimestreAtual()[1], mConta.ID.Value, mSegmento.ID.Value);

                    if (mOrcamentodoCanalporSegmento != null)
                    {
                        mOrcamentodoCanalporSegmento.OrcamentoRealizado = decimal.Parse(item["vlr"].ToString());

                        RepositoryService.OrcamentodoCanalporSegmento.Update(mOrcamentodoCanalporSegmento);
                    }
                }
            }
            #endregion
        }
Beispiel #2
0
        public void RetornoDWTrimestreProduto(int ano, int trimestre)
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(ano);

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

            DataTable dtOrcamentoTrimestreSeg = RepositoryService.OrcamentodaUnidadeporProduto.ListarOrcamentoProdutoDW(ano, trimestre, lstOrcamentodaUnidade);

            foreach (DataRow item in dtOrcamentoTrimestreSeg.Rows)
            {
                Product        mProduto        = RepositoryService.Produto.ObterPor(item["cd_item"].ToString());
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());

                if (mProduto != null & mUnidadeNegocio != null)
                {
                    OrcamentodaUnidadeporProduto mOrcamentodaUnidadeporProduto = RepositoryService.OrcamentodaUnidadeporProduto
                                                                                 .ObterOrcamentoporProduto(mProduto.ID.Value, mUnidadeNegocio.ID.Value, ano, trimestre, item["cd_segmento"].ToString(), item["cd_familia"].ToString(), item["cd_subfamilia"].ToString());

                    if (mOrcamentodaUnidadeporProduto != null)
                    {
                        mOrcamentodaUnidadeporProduto.OrcamentoRealizado = decimal.Parse(item["vlr"].ToString());
                        mOrcamentodaUnidadeporProduto.QtdeRealizada      = decimal.Parse(item["Qtde"].ToString());

                        RepositoryService.OrcamentodaUnidadeporProduto.Update(mOrcamentodaUnidadeporProduto);
                    }
                }
            }
        }
Beispiel #3
0
        public void RetornoDWCanalFamilia(int ano, int trimestre)
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(ano);

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

            DataTable dtOrcamentoCanalFamilia = RepositoryService.OrcamentodoCanalporFamilia.ListarCanalFamiliaDW(ano, trimestre, lstOrcamentodaUnidade);

            foreach (DataRow item in dtOrcamentoCanalFamilia.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());
                Conta          mConta          = RepositoryService.Conta.ObterCanal(item["CD_Emitente"].ToString());

                if (mUnidadeNegocio != null && mSegmento != null && mFamiliaProduto != null && mConta != null)
                {
                    OrcamentodoCanalporFamilia mOrcamentodoCanalporFamilia = RepositoryService.OrcamentodoCanalporFamilia.Obter(mUnidadeNegocio.ID.Value, ano, trimestre, mConta.ID.Value, mSegmento.ID.Value, mFamiliaProduto.ID.Value);

                    if (mOrcamentodoCanalporFamilia != null)
                    {
                        mOrcamentodoCanalporFamilia.OrcamentoRealizado = decimal.Parse(item["vlr"].ToString());
                        RepositoryService.OrcamentodoCanalporFamilia.Update(mOrcamentodoCanalporFamilia);
                    }
                }
            }
        }
        public void RetornoDWTrimestre(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetas = RepositoryService.MetadaUnidade.ListarMetas(ano);

            if (lstMetas.Count == 0)
            {
                Console.WriteLine("{0} - Não foi encontrado nenhuma meta", DateTime.Now);
                return;
            }

            DataTable dtOrcamentoTrimestre = RepositoryService.MetadaUnidadeporTrimestre.ListarMetaTrimestreDW(ano, trimestre, lstMetas);

            Console.WriteLine("{0} - Existem {1} para ser atualizados", DateTime.Now, dtOrcamentoTrimestre.Rows.Count);

            foreach (DataRow item in dtOrcamentoTrimestre.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item.Field <string>("CD_Unidade_Negocio"));

                if (mUnidadeNegocio != null)
                {
                    MetadaUnidadeporTrimestre mMetadaUnidadeporTrimestre = RepositoryService.MetadaUnidadeporTrimestre.Obterpor(mUnidadeNegocio.ID.Value, ano, trimestre);

                    if (mMetadaUnidadeporTrimestre != null)
                    {
                        var metaUnidadeTrimestreUpdate = new Domain.Model.MetadaUnidadeporTrimestre(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline)
                        {
                            ID            = mMetadaUnidadeporTrimestre.ID,
                            MetaRealizada = item.Field <decimal>("vlr")
                        };

                        RepositoryService.MetadaUnidadeporTrimestre.Update(metaUnidadeTrimestreUpdate);
                    }
                }
            }
        }
        public void RetornoDWCanalProduto(int ano, int trimestre)
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(ano);

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

            DataTable dtOrcamentoCanalProduto = RepositoryService.OrcamentodoCanalporProduto.ListarCanalProdutoDW(ano, trimestre, lstOrcamentodaUnidade);

            foreach (DataRow item in dtOrcamentoCanalProduto.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["cd_unidade_negocio"].ToString());
                Conta          mConta          = RepositoryService.Conta.ObterCanal(item["CD_Emitente"].ToString());
                Product        mProduto        = RepositoryService.Produto.ObterPor(item["cd_item"].ToString());

                if (mUnidadeNegocio != null && mConta != null && mProduto != null)
                {
                    OrcamentodoCanalporProduto mOrcamentodoCanalporProduto = RepositoryService.OrcamentodoCanalporProduto
                                                                             .ObterOrcCanalProduto(mUnidadeNegocio.ID.Value, ano, trimestre, mConta.ID.Value, mProduto.ID.Value);

                    if (mOrcamentodoCanalporProduto != null)
                    {
                        mOrcamentodoCanalporProduto.OrcamentoRealizado = decimal.Parse(item["vlr"].ToString());
                        mOrcamentodoCanalporProduto.QtdeRealizada      = decimal.Parse(item["qtde"].ToString());

                        RepositoryService.OrcamentodoCanalporProduto.Update(mOrcamentodoCanalporProduto);
                    }
                }
            }
        }
        public void RetornoDWKaProduto(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanal = RepositoryService.PotencialdoKAporProduto.ListarMetaTrimestreDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanal.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Contato        mContato        = RepositoryService.Contato.ObterPor(item["CD_representante"].ToString());
                Product        mProduto        = RepositoryService.Produto.ObterPor(item["cd_item"].ToString());

                if (mUnidadeNegocio != null && mContato != null && mProduto != null)
                {
                    PotencialdoKAporProduto mPotencialdoKAporProduto = RepositoryService.PotencialdoKAporProduto.Obter(mUnidadeNegocio.ID.Value, mContato.ID.Value, Convert.ToInt32(item["cd_ano"].ToString()), trimestre, mProduto.ID.Value);
                    if (mPotencialdoKAporProduto != null)
                    {
                        mPotencialdoKAporProduto.PotencialRealizado = decimal.Parse(item["vlr"].ToString());
                        mPotencialdoKAporProduto.QtdeRealizada      = decimal.Parse(item["qtde"].ToString());

                        RepositoryService.PotencialdoKAporProduto.Update(mPotencialdoKAporProduto);
                    }
                }
            }
        }
        public void RetornoDWMetaSubFamilia(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtOrcamentoSubFamilia = RepositoryService.MetadaUnidadeporSubfamilia.ListarMetaSubFamiliaDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtOrcamentoSubFamilia.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());
                SubfamiliaProduto mSubfamiliaProduto = RepositoryService.SubfamiliaProduto.ObterPor(item["CD_subfamilia"].ToString());

                if (mUnidadeNegocio != null && mSegmento != null && mFamiliaProduto != null && mSubfamiliaProduto != null)
                {
                    var itemcapa = RepositoryService.MetadaUnidadeporSubfamilia
                                   .ObterMetaSubFamilia(mUnidadeNegocio.ID.Value, mSegmento.ID.Value, mFamiliaProduto.ID.Value, mSubfamiliaProduto.ID.Value, ano, trimestre);

                    if (itemcapa != null)
                    {
                        itemcapa.MetaRealizada = decimal.Parse(item["vlr"].ToString());
                        RepositoryService.MetadaUnidadeporSubfamilia.Update(itemcapa);
                    }
                }
            }
        }
Beispiel #8
0
        private decimal?ObterPercentualDescontoValorSolicitado(Beneficio beneficio, UnidadeNegocio unidadeNegocio, Classificacao classificacao, Categoria categoria, RepositoryService repoService)
        {
            decimal?fator = null;

            switch (beneficio.Codigo)
            {
            case (int)Domain.Enum.BeneficiodoPrograma.Codigos.Showroom:
                var fatorShowRoom = repoService.ParametroGlobal.ObterPor((int)Domain.Enum.TipoParametroGlobal.PercentualDescontoShowRoom, unidadeNegocio.ID.Value, classificacao.ID.Value, categoria.ID, null, null, beneficio.ID, null);

                if (fatorShowRoom == null)
                {
                    throw new ArgumentException("(CRM) Parâmetro global Percentual Desconto Show Room não localizado para Unidade de Negócio [" + unidadeNegocio.Nome + "]");
                }

                fator = Convert.ToDecimal(fatorShowRoom.Valor);

                break;

            case (int)Domain.Enum.BeneficiodoPrograma.Codigos.Backup:
                var fatorBackup = repoService.ParametroGlobal.ObterPor((int)Domain.Enum.TipoParametroGlobal.PercentualDescontoBackup, unidadeNegocio.ID.Value, classificacao.ID.Value, categoria.ID, null, null, beneficio.ID, null);

                if (fatorBackup == null)
                {
                    throw new ArgumentException("(CRM) Parâmetro global Percentual Desconto Backup não localizado para Unidade de Negócio [" + unidadeNegocio.Nome + "]");
                }

                fator = Convert.ToDecimal(fatorBackup.Valor);

                break;
            }

            return(fator);
        }
        public UnidadeNegocio Persistir(UnidadeNegocio ObjUnidadeNegocio)
        {
            UnidadeNegocio TmpUnidadeNegocio = null;

            if (!String.IsNullOrEmpty(ObjUnidadeNegocio.ChaveIntegracao))
            {
                TmpUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(ObjUnidadeNegocio.ChaveIntegracao);
                if (TmpUnidadeNegocio != null)
                {
                    ObjUnidadeNegocio.ID = TmpUnidadeNegocio.ID;
                    ObjUnidadeNegocio.Id = TmpUnidadeNegocio.ID.Value;

                    RepositoryService.UnidadeNegocio.Update(ObjUnidadeNegocio);

                    return(TmpUnidadeNegocio);
                }
                else
                {
                    ObjUnidadeNegocio.ID = RepositoryService.UnidadeNegocio.Create(ObjUnidadeNegocio);
                    return(ObjUnidadeNegocio);
                }
            }
            else
            {
                return(null);
            }
        }
Beispiel #10
0
        public void AtualizarFaturamentoDoSegmentoCanal(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanalSegmento = RepositoryService.MetadoCanalporSegmento.ListarMetaCanalSegmentoDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanalSegmento.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Conta          mConta          = RepositoryService.Conta.ObterCanal(item["CD_Emitente"].ToString());
                Segmento       mSegmento       = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString());

                if (mUnidadeNegocio != null && mConta != null && mSegmento != null)
                {
                    MetadoCanalporSegmento mMetadoCanalporSegmento = RepositoryService.MetadoCanalporSegmento.Obter(mUnidadeNegocio.ID.Value, mConta.ID.Value, ano, trimestre, mSegmento.ID.Value, "itbc_metadocanalporsegmentoid");
                    if (mMetadoCanalporSegmento != null)
                    {
                        mMetadoCanalporSegmento.MetaRealizada = item.Field <decimal>("vlr");
                        RepositoryService.MetadoCanalporSegmento.Update(mMetadoCanalporSegmento);
                    }
                }
            }
        }
Beispiel #11
0
        public void RetornoDWMetaCanalProduto(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanalProduto = RepositoryService.MetadoCanalporProduto.ListarMetaCanalProdutoDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanalProduto.Rows)
            {
                UnidadeNegocio    mUnidadeNegocio    = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Conta             mConta             = RepositoryService.Conta.ObterCanal(item["CD_Emitente"].ToString());
                SubfamiliaProduto mSubfamiliaProduto = RepositoryService.SubfamiliaProduto.ObterPor(item["CD_subfamilia"].ToString());
                Product           mProduto           = RepositoryService.Produto.ObterPor(item["CD_Item"].ToString());

                if (mUnidadeNegocio != null && mConta != null && mSubfamiliaProduto != null && mProduto != null)
                {
                    MetadoCanalporProduto mMetadoCanalporProduto = RepositoryService.MetadoCanalporProduto
                                                                   .Obterpor(mUnidadeNegocio.ID.Value, mConta.ID.Value, Convert.ToInt32(item["cd_ano"].ToString()), trimestre, mSubfamiliaProduto.ID.Value, mProduto.ID.Value);

                    if (mMetadoCanalporProduto != null)
                    {
                        mMetadoCanalporProduto.MetaRealizada = decimal.Parse(item["vlr"].ToString());
                        RepositoryService.MetadoCanalporProduto.Update(mMetadoCanalporProduto);
                    }
                }
            }
        }
Beispiel #12
0
        public UnidadeNegocio DefinirPropriedades(Intelbras.Message.Helper.MSG0002 xml)
        {
            var crm = new UnidadeNegocio(this.Organizacao, this.IsOffline);

            #region Propriedades Crm->Xml
            if (!String.IsNullOrEmpty(xml.Nome))
            {
                crm.Nome = xml.Nome;
            }

            if (!String.IsNullOrEmpty(xml.CodigoUnidadeNegocio))
            {
                crm.ChaveIntegracao = xml.CodigoUnidadeNegocio;
            }


            UnidadeNegocio unidadePai = new Intelbras.CRM2013.Domain.Servicos.UnidadeNegocioService(this.Organizacao, this.IsOffline).BuscaUnidadeNegocioPorNome("Intelbras");

            if (unidadePai != null)
            {
                crm.NegocioPrimario = new Lookup((Guid)unidadePai.ID, "");
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "Unidade pai não encontrada.";
            }

            #endregion
            return(crm);
        }
Beispiel #13
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);
                    }
                }
            }
        }
Beispiel #14
0
        public void RetornoDWTrimestre()
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(DateTime.Now.Date.Year);

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

            DataTable dtOrcamentoTrimestre = RepositoryService.OrcamentodaUnidadeporTrimestre.ObterOrcamentoTrimestreDW(DateTime.Now.Date.Year, Helper.TrimestreAtual()[1], lstOrcamentodaUnidade);

            #region Atualiza Orçamentos Trimestre
            foreach (DataRow item in dtOrcamentoTrimestre.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                OrcamentodaUnidadeporTrimestre mOrcamentodaUnidadeporTrimestre = RepositoryService.OrcamentodaUnidadeporTrimestre.ObterOrcamentoTrimestre(mUnidadeNegocio.ID.Value, Convert.ToInt32(item["cd_ano"].ToString()), Helper.TrimestreAtual()[1]);

                if (mUnidadeNegocio != null && mOrcamentodaUnidadeporTrimestre != null)
                {
                    mOrcamentodaUnidadeporTrimestre.OrcamentoRealizado = decimal.Parse(item["vlr"].ToString());

                    RepositoryService.OrcamentodaUnidadeporTrimestre.Update(mOrcamentodaUnidadeporTrimestre);
                }
            }
            #endregion
        }
        public void RetornoDWMetaProdutoDetalhado(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtOrcamentoProdDetalhado = RepositoryService.MetadaUnidadeDetalhadaProduto.ListarProdutoDetalhadoDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtOrcamentoProdDetalhado.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Product        mProduto        = RepositoryService.Produto.ObterPor(item["cd_item"].ToString());

                if (mUnidadeNegocio != null && mProduto != null)
                {
                    var itemcapa = RepositoryService.MetadaUnidadeDetalhadaProduto.ObterProdutoDetalhado(mUnidadeNegocio.ID.Value, mProduto.ID.Value, Convert.ToInt32(item["cd_ano"].ToString()), (int)item["cd_trimestre"], (int)item["cd_mes"]);
                    if (itemcapa != null)
                    {
                        itemcapa.MetaRealizada = decimal.Parse(item["vlr"].ToString());
                        itemcapa.QtdeRealizada = decimal.Parse(item["Qtde"].ToString());

                        RepositoryService.MetadaUnidadeDetalhadaProduto.Update(itemcapa);
                    }
                }
            }
        }
        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 RetornoDWKaSubFamilia(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanal = RepositoryService.PotencialdoKAporSubfamilia.ListarMetaTrimestreDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanal.Rows)
            {
                UnidadeNegocio    mUnidadeNegocio    = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Contato           mContato           = RepositoryService.Contato.ObterPor(item["CD_representante"].ToString());
                Segmento          mSegmento          = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString());
                FamiliaProduto    mFamiliaProduto    = RepositoryService.FamiliaProduto.ObterPor(item["CD_familia"].ToString());
                SubfamiliaProduto mSubfamiliaProduto = RepositoryService.SubfamiliaProduto.ObterPor(item["CD_subfamilia"].ToString());

                if (mUnidadeNegocio != null && mContato != null && mSegmento != null && mFamiliaProduto != null && mSubfamiliaProduto != null)
                {
                    PotencialdoKAporSubfamilia mPotencialdoKAporSubfamilia = RepositoryService.PotencialdoKAporSubfamilia
                                                                             .Obter(mUnidadeNegocio.ID.Value, mContato.ID.Value, ano, trimestre, mSegmento.ID.Value, mFamiliaProduto.ID.Value, mSubfamiliaProduto.ID.Value);

                    if (mPotencialdoKAporSubfamilia != null)
                    {
                        mPotencialdoKAporSubfamilia.PotencialRealizado = decimal.Parse(item["vlr"].ToString());
                        RepositoryService.PotencialdoKAporSubfamilia.Update(mPotencialdoKAporSubfamilia);
                    }
                }
            }
        }
Beispiel #18
0
        public void AtualizarFaturamentoDoSegmentoRepresentante(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanal = RepositoryService.PotencialdoKAporSegmento.ListarMetaTrimestreDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanal.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Contato        mContato        = RepositoryService.Contato.ObterPor(item["CD_representante"].ToString());
                Segmento       mSegmento       = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString());

                if (mUnidadeNegocio != null && mContato != null && mSegmento != null)
                {
                    PotencialdoKAporSegmento mPotencialdoKAporSegmento = RepositoryService.PotencialdoKAporSegmento.Obter(mUnidadeNegocio.ID.Value, mContato.ID.Value, ano, trimestre, mSegmento.ID.Value);
                    if (mPotencialdoKAporSegmento != null)
                    {
                        mPotencialdoKAporSegmento.PotencialRealizado = item.Field <decimal>("vlr");
                        RepositoryService.PotencialdoKAporSegmento.Update(mPotencialdoKAporSegmento);
                    }
                }
            }
        }
        public void AtualizarFaturamentoDoSegmento(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetas = RepositoryService.MetadaUnidade.ListarMetas(ano);

            if (lstMetas.Count != 0)
            {
                DataTable dtMetasSegmento = RepositoryService.MetadaUnidadeporSegmento.ListarMetasSegmentoDW(ano, trimestre, lstMetas);

                foreach (DataRow item in dtMetasSegmento.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)
                    {
                        MetadaUnidadeporSegmento itemcapa = RepositoryService.MetadaUnidadeporSegmento.ObterMetasSegmento(mUnidadeNegocio.ID.Value, mSegmento.ID.Value, ano, trimestre, "itbc_metaporsegmentoid");
                        if (itemcapa != null)
                        {
                            itemcapa.MetaRealizada = item.Field <decimal>("vlr");
                            RepositoryService.MetadaUnidadeporSegmento.Update(itemcapa);
                        }
                    }
                }
            }
        }
        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);
                }
            }
        }
Beispiel #22
0
        private Intelbras.Message.Helper.MSG0002 DefinirPropriedades(UnidadeNegocio crm)
        {
            Intelbras.Message.Helper.MSG0002 xml = new Pollux.MSG0002(Domain.Enum.Sistemas.RetornaSistema(Domain.Enum.Sistemas.Sistema.CRM), Helper.Truncate(crm.Nome, 40));

            xml.Nome = crm.Nome;
            xml.CodigoUnidadeNegocio = crm.ChaveIntegracao;

            return(xml);
        }
Beispiel #23
0
        public UnidadeNegocio DefinirPropriedades(Intelbras.Message.Helper.MSG0130 xml)
        {
            var crm = new UnidadeNegocio(this.Organizacao, this.IsOffline);

            #region Propriedades Crm->Xml

            #endregion

            return(crm);
        }
        public UnidadeNegocio BuscaUnidadeNegocioPorChaveIntegracao(string unidadeNegocioCodigo)
        {
            UnidadeNegocio objUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(unidadeNegocioCodigo);

            if (objUnidadeNegocio != null)
            {
                return(objUnidadeNegocio);
            }
            return(null);
        }
Beispiel #25
0
        public void ListaDeUnidadeOK()
        {
            // Arrange
            var repoMock = new Mock <IUnidadeRepositorio>();

            repoMock.Setup(m => m.Selecionar()).Returns(DbMock.Unidade);

            var _unidadeNegocio = new UnidadeNegocio(repoMock.Object);

            // Act
            var objRetornado = _unidadeNegocio.Selecionar();

            // Assert
            Assert.NotNull(objRetornado);
            Assert.Same(DbMock.Unidade, objRetornado);
        }
Beispiel #26
0
        public string Enviar(UnidadeNegocio objModel)
        {
            string resposta;

            Intelbras.Message.Helper.MSG0002 mensagem = DefinirPropriedades(objModel);

            Domain.Servicos.Integracao integracao = new Servicos.Integracao(this.Organizacao, this.IsOffline);
            if (integracao.EnviarMensagemBarramento(mensagem.GenerateMessage(true), "1", "1", out resposta))
            {
                Intelbras.Message.Helper.MSG0002R1 retorno = CarregarMensagem <Pollux.MSG0002R1>(resposta);
                return(retorno.Resultado.Mensagem);
            }
            else
            {
                Intelbras.Message.Helper.ERR0001 retorno = CarregarMensagem <Pollux.ERR0001>(resposta);
                return(retorno.DescricaoErro);
            }
        }
Beispiel #27
0
        public void RetornoDWHistoricoCompraUnidade(int ano)
        {
            DataTable dtHistoricoCompra = RepositoryService.HistoricoCompra.ListarPor(ano.ToString());

            foreach (DataRow item in dtHistoricoCompra.Rows)
            {
                if (item.IsNull("CD_Unidade_Negocio"))
                {
                    continue;
                }

                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item.Field <string>("CD_Unidade_Negocio"));

                if (mUnidadeNegocio == null)
                {
                    continue;
                }

                HistoricoCompra historicoCompra = RepositoryService.HistoricoCompra.ObterPor(mUnidadeNegocio.ID.Value, ano, "itbc_historicocomprasdaunidadeid");

                decimal valorDW = item.Field <decimal>("Valor");

                if (valorDW < 0)
                {
                    valorDW = 0;
                }

                if (historicoCompra != null)
                {
                    historicoCompra.Valor = valorDW;
                    RepositoryService.HistoricoCompra.Update(historicoCompra);
                }
                else
                {
                    HistoricoCompra hsComp = new HistoricoCompra(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline);
                    hsComp.UnidadeNegocio = new Lookup(mUnidadeNegocio.ID.Value, "");
                    hsComp.Ano            = ano;
                    hsComp.Nome           = mUnidadeNegocio.Nome + " - " + ano;
                    hsComp.Valor          = valorDW;
                    RepositoryService.HistoricoCompra.Create(hsComp);
                }
            }
        }
Beispiel #28
0
        public void RetornoDWDetalhadoProduto(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanal = RepositoryService.PotencialDetalhadodoSupervisorporProduto.ListarMetaTrimestreDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanal.Rows)
            {
                UnidadeNegocio    mUnidadeNegocio    = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Usuario           mUsuario           = RepositoryService.Usuario.ObterPor(item["CD_representante"].ToString());
                Segmento          mSegmento          = RepositoryService.Segmento.ObterPor(item["cd_segmento"].ToString());
                FamiliaProduto    mFamiliaProduto    = RepositoryService.FamiliaProduto.ObterPor(item["CD_familia"].ToString());
                SubfamiliaProduto mSubfamiliaProduto = RepositoryService.SubfamiliaProduto.ObterPor(item["CD_subfamilia"].ToString());
                Product           mProduto           = RepositoryService.Produto.ObterPor(item["cd_item"].ToString());

                if (mUnidadeNegocio != null && mUsuario != null && mSegmento != null && mFamiliaProduto != null && mSubfamiliaProduto != null && mProduto != null)
                {
                    PotencialdoSupervisorporProduto mPotencialdoSupervisorporProduto = RepositoryService.PotencialdoSupervisorporProduto
                                                                                       .Obter(mUnidadeNegocio.ID.Value, mUsuario.ID.Value, Convert.ToInt32(item["cd_ano"].ToString()), trimestre, mSegmento.ID.Value, mFamiliaProduto.ID.Value, mSubfamiliaProduto.ID.Value, mProduto.ID.Value);

                    if (mPotencialdoSupervisorporProduto != null)
                    {
                        PotencialdoSupervisorporProdutoDetalhado mPotencialDetalhadodoSupervisorporProduto = RepositoryService.PotencialDetalhadodoSupervisorporProduto
                                                                                                             .Obter(Convert.ToInt32(item["cd_ano"].ToString()), trimestre, Convert.ToInt32(item["cd_mes"].ToString()), mProduto.ID.Value, mUsuario.ID.Value, mPotencialdoSupervisorporProduto.ID.Value);

                        if (mPotencialDetalhadodoSupervisorporProduto != null)
                        {
                            mPotencialdoSupervisorporProduto.PotencialRealizado = decimal.Parse(item["vlr"].ToString());
                            mPotencialdoSupervisorporProduto.QtdeRealizada      = decimal.Parse(item["qtde"].ToString());

                            RepositoryService.PotencialdoSupervisorporProduto.Update(mPotencialdoSupervisorporProduto);
                        }
                    }
                }
            }
        }
Beispiel #29
0
        public void RetornoDWCanalTrimestre(int ano, int trimestre)
        {
            List <OrcamentodaUnidade> lstOrcamentodaUnidade = RepositoryService.OrcamentodaUnidade.ListarOrcamentos(ano);

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

            DataTable dtOrcamentoTrimestre = RepositoryService.OrcamentoPorCanal.ListarCanalDW(ano, trimestre, lstOrcamentodaUnidade);

            foreach (DataRow item in dtOrcamentoTrimestre.Rows)
            {
                if (item.IsNull("CD_Unidade_Negocio") || item.IsNull("CD_Emitente"))
                {
                    continue;
                }

                UnidadeNegocio unidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item.Field <string>("CD_Unidade_Negocio"));
                Conta          conta          = RepositoryService.Conta.ObterCanal(item.Field <string>("CD_Emitente"));

                if (unidadeNegocio != null && conta != null)
                {
                    OrcamentoPorCanal mOrcamentoCanalTrimetre = RepositoryService.OrcamentoPorCanal.ObterPor(unidadeNegocio.ID.Value, ano, trimestre, conta.ID.Value);

                    if (mOrcamentoCanalTrimetre != null)
                    {
                        var orcamentoPorCanalUpdate = new OrcamentoPorCanal(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline)
                        {
                            ID = mOrcamentoCanalTrimetre.ID,
                            OrcamentoRealizado = item.Field <decimal>("vlr")
                        };

                        RepositoryService.OrcamentoPorCanal.Update(orcamentoPorCanalUpdate);
                    }
                }
            }
        }
Beispiel #30
0
        public void RetornoDWMetaCanalManualProdutoDetalhado(int ano, int trimestre)
        {
            List <MetadaUnidade> lstMetadaUnidade = RepositoryService.MetadaUnidade.ListarMetas(ano);

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

            DataTable dtMetaCanalProdDetalhado = RepositoryService.MetaDetalhadadoCanalporProduto.ListarMetaCanalManualDetalhadoProdutoDW(ano, trimestre, lstMetadaUnidade);

            foreach (DataRow item in dtMetaCanalProdDetalhado.Rows)
            {
                UnidadeNegocio mUnidadeNegocio = RepositoryService.UnidadeNegocio.ObterPorChaveIntegracao(item["CD_Unidade_Negocio"].ToString());
                Conta          mConta          = RepositoryService.Conta.ObterCanal(item["CD_Emitente"].ToString());

                if (mUnidadeNegocio != null && mConta != null)
                {
                    MetadoCanal mMetadoCanal = RepositoryService.MetadoCanal.ObterPor(mUnidadeNegocio.ID.Value, trimestre, mConta.ID.Value, ano);

                    if (mMetadoCanal != null)
                    {
                        MetaDetalhadadoCanalporProduto mMetaDetalhadadoCanalporProduto = RepositoryService.MetaDetalhadadoCanalporProduto
                                                                                         .ObterManual(trimestre, ano, mConta.ID.Value, mMetadoCanal.ID.Value, Convert.ToInt32(item["cd_mes"].ToString()), mUnidadeNegocio.ID.Value);

                        if (mMetaDetalhadadoCanalporProduto != null)
                        {
                            mMetaDetalhadadoCanalporProduto.MetaRealizada = decimal.Parse(item["vlr"].ToString());
                            mMetaDetalhadadoCanalporProduto.QtdeRealizada = decimal.Parse(item["qtde"].ToString());

                            RepositoryService.MetaDetalhadadoCanalporProduto.Update(mMetaDetalhadadoCanalporProduto);
                        }
                    }
                }
            }
        }