예제 #1
0
        private void IniciarThreadGeral()
        {
            var manterSe              = new ManterSolucaoEducacional();
            var manterOferta          = new ManterOferta();
            var manterPr              = new ManterPrograma();
            var manterCp              = new ManterCapacitacao();
            var manterTr              = new ManterTrilha();
            var bmConfiguracaoSistema = new BMConfiguracaoSistema();
            var bmLogSincronia        = new BMLogSincronia();
            var usuarioLogado         = new ManterUsuario().ObterUsuarioLogado();

            var somenteNaoSincronizados = ckbSomenteNaoSincronizados.Checked;


            var thread = new Thread(() =>
            {
                EnviarSolucoes(manterSe, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado, somenteNaoSincronizados);
                EnviarOfertas(manterOferta, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado, somenteNaoSincronizados);
                EnviarProgramasCapacitacoes(manterPr, manterCp, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado, somenteNaoSincronizados);
                EnviarTrilhas(manterTr, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado, somenteNaoSincronizados);
            })
            {
                IsBackground = true,
                Name         = Guid.NewGuid().ToString()
            };

            thread.Start();
        }
예제 #2
0
        //private classes.Capacitacao ObterObjetoCapacitacao()
        //{
        //    classes.Programa programa = new classes.Programa();

        //    if (!string.IsNullOrWhiteSpace(this.txtNome.Text))
        //        programa.Nome = this.txtNome.Text.Trim();

        //    return programa;
        //}

        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                try
                {
                    classes.Capacitacao capacitacao = ObterObjetoCapacitacao();
                    manterCapacitacao = new ManterCapacitacao();
                    //IList<classes.Capacitacao> ListaCapacitacao = manterCapacitacao.ObterCapacitacaoPorFiltro(Capacitacao);
                    IList <classes.Capacitacao> ListaCapacitacao = manterCapacitacao.ObterPorFiltro(capacitacao);
                    //WebFormHelper.PreencherGrid(ListaCapacitacao, this.dgvCapacitacao);

                    if (ListaCapacitacao != null && ListaCapacitacao.Count > 0)
                    {
                        WebFormHelper.PreencherGrid(ListaCapacitacao, this.dgvCapacitacao);
                        pnlCapacitacao.Visible = true;
                    }
                    else
                    {
                        pnlCapacitacao.Visible = false;
                        WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "Nenhuma Informação Encontrada");
                    }
                }
                catch (AcademicoException ex)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, ex.Message);
                }
            }
        }
예제 #3
0
        protected void txtPrograma_OnTextChanged(object sender, EventArgs e)
        {
            var manterCapacitacoes = new ManterCapacitacao();
            var idPrograma         = string.IsNullOrEmpty(txtPrograma.Text) ? 0 : int.Parse(txtPrograma.Text);

            WebFormHelper.PreencherLista(manterCapacitacoes.ObterPorIdPrograma(idPrograma).ToList(), cbxOfertas, true);

            var manterTurmaCapacitacao = new ManterTurmaCapacitacao();

            WebFormHelper.PreencherLista(manterTurmaCapacitacao.ObterPorIdPrograma(idPrograma).ToList(), cbxTurmas, true);

            AtualizarListaCamposVisiveis();
        }
예제 #4
0
        private void EnviarProgramasCapacitacoes(ManterPrograma manterPr, ManterCapacitacao manterCp,
                                                 BMConfiguracaoSistema bmConfiguracaoSistema, BMLogSincronia bmLogSincronia, Usuario usuarioLogado, bool somenteNaoSincronizados)
        {
            var programas = manterPr.ObterTodosProgramas();

            foreach (var programa in programas)
            {
                try
                {
                    if (somenteNaoSincronizados && programa.IdNodePortal.HasValue)
                    {
                        continue;
                    }

                    programa.IdNodePortal = null;

                    manterPr.AtualizarNodeIdDrupal(programa, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado);
                }
                catch
                {
                    // ignored;
                }
            }

            var capacitacoes = manterCp.ObterTodasCapacitacoes();

            foreach (var capacitacao in capacitacoes)
            {
                try
                {
                    if (somenteNaoSincronizados && capacitacao.IdNodePortal.HasValue)
                    {
                        continue;
                    }

                    manterCp.AtualizarNodeIdDrupal(capacitacao, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado);
                }
                catch (Exception)
                {
                    // ignored;
                }
            }
        }
예제 #5
0
        protected void dgvCapacitacao_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName.Equals("excluir"))
            {
                try
                {
                    manterCapacitacao = new ManterCapacitacao();
                    int idCapacitacao = int.Parse(e.CommandArgument.ToString());
                    manterCapacitacao.ExcluirCapacitacao(idCapacitacao);
                }
                catch (AcademicoException ex)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, ex.Message);
                    return;
                }

                WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso, "Registro excluído com sucesso!", "/Cadastros/Capacitacao/ListarCapacitacao.aspx");
            }
            else if (e.CommandName.Equals("editar"))
            {
                int idCapacitacao = int.Parse(e.CommandArgument.ToString());
                Response.Redirect("EdicaoCapacitacao.aspx?Id=" + idCapacitacao.ToString(), false);
            }
        }
예제 #6
0
        protected void btnSincronizarCapacitacoes_Click(object sender, EventArgs e)
        {
            var manter = new ManterCapacitacao();
            var lista  =
                manter.ObterTodasCapacitacoes()
                .Where(
                    p =>
                    p.Programa.ListaAreasTematicas.Any() &&
                    (p.DataInicio.Year == DateTime.Now.Year ||
                     (p.DataInicioInscricao.HasValue && p.DataInicioInscricao.Value.Year == DateTime.Now.Year)))
                .ToList();

            foreach (var item in lista)
            {
                try
                {
                    manter.AlterarCapacitacao(item);
                }
                catch (Exception)
                {
                }
            }
            WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso, "Sincronia Realizada: " + lista.Count + " registros");
        }
예제 #7
0
        private classes.Capacitacao ObterObjetoCapacitacao()
        {
            var retorno = new classes.Capacitacao();

            if (Request["Id"] != null)
            {
                int idCapacitacao = int.Parse(Request["Id"].ToString());
                retorno = new ManterCapacitacao().ObterPorID(idCapacitacao);
            }

            if (string.IsNullOrEmpty(txtNome.Text))
            {
                throw new AcademicoException("Informar o nome da Oferta");
            }
            else
            {
                retorno.Nome = txtNome.Text;
            }

            if (string.IsNullOrEmpty(txtDescricao.Text))
            {
                throw new AcademicoException("informar a descrição da Oferta");
            }
            else
            {
                retorno.Descricao = txtDescricao.Text;
            }

            if (ddlPrograma.SelectedIndex > 0)
            {
                retorno.Programa.ID = int.Parse(ddlPrograma.SelectedValue);
            }
            else
            {
                throw new AcademicoException("Informar o programa da Oferta");
            }

            if (string.IsNullOrEmpty(txtDtInicio.Text))
            {
                throw new AcademicoException("Informar data de início da Realização da oferta");
            }
            else
            {
                retorno.DataInicio = Convert.ToDateTime(txtDtInicio.Text);
            }

            retorno.PermiteCancelarMatricula   = (rblPermitirCancelamentoMatricula.SelectedValue == "S");
            retorno.PermiteAlterarSituacao     = (rblAlterarSituacao.SelectedValue == "S");
            retorno.PermiteMatriculaPeloGestor = (rblPermiteMatriculaPeloGestor.SelectedValue == "S");

            if (string.IsNullOrEmpty(txtDtInicioInscricao.Text))
            {
                throw new AcademicoException("Informar uma Data de Início das inscrições para a Oferta");
            }
            if (string.IsNullOrEmpty(txtDtFimInscricao.Text))
            {
                throw new AcademicoException("Informar uma Data de Fim das inscrições para a Oferta");
            }

            DateTime dtIni;
            DateTime dtFim;

            if (DateTime.TryParse(txtDtInicio.Text, out dtIni))
            {
                retorno.DataInicio = dtIni;
            }

            if (DateTime.TryParse(txtDtFim.Text, out dtFim))
            {
                retorno.DataFim = dtFim;
            }

            if (DateTime.TryParse(txtDtInicioInscricao.Text, out dtIni))
            {
                retorno.DataInicioInscricao = dtIni;
            }
            if (DateTime.TryParse(txtDtFimInscricao.Text, out dtFim))
            {
                retorno.DataFimInscricao = dtFim;
            }

            if (retorno.DataFim.HasValue)
            {
                if (retorno.DataFim.Value.Date < retorno.DataInicio.Date)
                {
                    throw new AcademicoException("A Data Final da Realização não pode ser maior que a Data de Inicio da Realização.");
                }
            }

            if (retorno.DataFimInscricao.HasValue && retorno.DataFim.HasValue)
            {
                if (retorno.DataFimInscricao.Value.Date > retorno.DataFim.Value.Date || retorno.DataFimInscricao.Value.Date < retorno.DataInicioInscricao.Value.Date)
                {
                    throw new AcademicoException("Informar uma Data de Fim das inscrições que esteja entre a Data Inicio e Data Fim da Realização.");
                }
            }

            int idCertificado;

            if (int.TryParse(ddlCertificado.SelectedValue, out idCertificado))
            {
                retorno.Certificado = new ManterCertificadoTemplate().ObterCertificadoTemplatePorID(idCertificado);
            }

            return(retorno);
        }