Exemplo n.º 1
0
        private void CriaTreinamentoCanalOuAtiva(Guid prodTreiId, string nomeTreinamento, Conta canal, Guid?compCanalId)
        {
            List <TreinamentoCanal> lstTreiCanal = TreinamentoCanal.ListarPorInativo(prodTreiId, canal.ID, compCanalId);

            if (lstTreiCanal.Count > 0)
            {
                foreach (var TreiCanal in lstTreiCanal)
                {
                    InserirLog(DateTime.Now + " --------- Ativando Treinamento do Canal: " + TreiCanal.ID.Value);

                    RepositoryService.TreinamentoCanal.AlterarStatus(TreiCanal.ID.Value, 0);
                }
            }
            else
            {
                #region Cria treinamento canal

                TreinamentoCanal treinamentocanal = new TreinamentoCanal(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider);
                treinamentocanal.Canal            = new Lookup(canal.ID.Value, "account");
                treinamentocanal.Treinamento      = new Lookup(prodTreiId, "itbc_treinamento_certificacao_canal");
                treinamentocanal.CompromissoCanal = new Lookup(compCanalId.Value, "itbc_compdocanal");
                string _tempNomeTreinamento = canal.RazaoSocial + " - " + nomeTreinamento;
                treinamentocanal.Nome              = (_tempNomeTreinamento.Length < 100) ? _tempNomeTreinamento : _tempNomeTreinamento.Substring(0, 100);
                treinamentocanal.DataLimite        = DateTime.Today.AddMonths(1);
                treinamentocanal.StatusCompromisso = new Lookup(StatusCompromissoNaoCumprido.ID.Value, "");

                treinamentocanal.ID = RepositoryService.TreinamentoCanal.Create(treinamentocanal);

                InserirLog(DateTime.Now + " --------- Criar Treinamento do Canal: " + treinamentocanal.ID);
                #endregion
            }
        }
Exemplo n.º 2
0
        public void AtualizaTreinamentoCanal(Guid treinamentoId, string statusCompromisso)
        {
            TreinamentoCanal   treinamentoCanal = RepositoryService.TreinamentoCanal.ObterPor(treinamentoId);
            StatusCompromissos status           = RepositoryService.StatusCompromissos.ObterPor(statusCompromisso);

            treinamentoCanal.StatusCompromisso = new Lookup((Guid)status.ID, "");

            RepositoryService.TreinamentoCanal.Update(treinamentoCanal);
        }
Exemplo n.º 3
0
        public void VerificaCumprimento(TreinamentoCanal treinamentoCanal)
        {
            string statusCompromisso = Domain.Enum.CompromissoCanal.StatusCompromisso.Nao_Cumprido;

            if (QuantidadeRequerida(treinamentoCanal.Canal.Id, treinamentoCanal.Treinamento.Id))
            {
                statusCompromisso = Domain.Enum.CompromissoCanal.StatusCompromisso.Cumprido;
            }

            AtualizaTreinamentoCanal((Guid)treinamentoCanal.ID, statusCompromisso);
        }
Exemplo n.º 4
0
        public void CriaTreinamentoeCertificacaoDoCanal(ProdutoTreinamento ProdPortifolio)
        {
            //procura em qual produtos do portifolio está
            if (ProdPortifolio.Produto != null && ProdPortifolio.NroMinimoProf.Value > 0)
            {
                List <ProdutoPortfolio> lstProdutoPorfolio = RepositoryService.ProdutoPortfolio.ListarPorProduto(ProdPortifolio.Produto.Id);

                foreach (ProdutoPortfolio _ProdutoPorfolio in lstProdutoPorfolio)
                {
                    Portfolio _Portfolio = RepositoryService.Portfolio.ObterPor(_ProdutoPorfolio.Portfolio.Id);

                    List <CategoriasCanal> lstCategoriasCanal = RepositoryService.CategoriasCanal.ListarPor(null, _Portfolio.UnidadeNegocio.Id, null, null, null);

                    foreach (CategoriasCanal _CategoriasCanal in lstCategoriasCanal)
                    {
                        TreinamentoCanal treinamentocanal = new TreinamentoCanal(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider);
                        treinamentocanal.Canal       = new Lookup(_CategoriasCanal.Canal.Id, "account");
                        treinamentocanal.Treinamento = new Lookup(ProdPortifolio.Treinamento.Id, "");
                        treinamentocanal.Nome        = _CategoriasCanal.Canal.Name + " - " + ProdPortifolio.Treinamento.Name;
                        treinamentocanal.DataLimite  = DateTime.Now.AddMonths(1);

                        //consulta os profissionais certificados do canal.
                        List <ColaboradorTreinadoCertificado> lstColaboradorTreinadoCertificado = RepositoryService.ColaboradorTreinadoCertificado.ListarPor(_CategoriasCanal.Canal.Id, ProdPortifolio.Treinamento.Id);

                        if (lstColaboradorTreinadoCertificado.Count >= ProdPortifolio.NroMinimoProf.Value)
                        {
                            treinamentocanal.StatusCompromisso = new Lookup(RepositoryService.StatusCompromissos.ObterPor("Cumprido").ID.Value, "");
                        }
                        else
                        {
                            treinamentocanal.StatusCompromisso = new Lookup(RepositoryService.StatusCompromissos.ObterPor("Não Cumprido").ID.Value, "");
                        }

                        treinamentocanal.ID = RepositoryService.TreinamentoCanal.Create(treinamentocanal);
                    }
                }
            }
        }