protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                var turmaCapacitacao = new classes.TurmaCapacitacao();
                WebFormHelper.PreencherLista(new BMPrograma().ObterTodos().OrderBy(x => x.Nome).ToList(), ddlPrograma, true);

                var listaQuestionariosDePesquisa = new ManterQuestionario().ObterQuestionariosDePesquisa();

                if (listaQuestionariosDePesquisa.Any())
                {
                    WebFormHelper.PreencherLista(listaQuestionariosDePesquisa, ddlQuestionarioPre, false, true);
                    WebFormHelper.PreencherLista(listaQuestionariosDePesquisa, ddlQuestionarioPos, false, true);

                    ddlQuestionarioPre.Enabled = true;
                    ddlQuestionarioPos.Enabled = true;
                }
                else
                {
                    PreencherQuestionarioListaVazia();
                }

                if (Request["Id"] != null)
                {
                    var idTurmaCapacitacao = int.Parse(Request["Id"]);
                    turmaCapacitacao = new BMTurmaCapacitacao().ObterPorId(idTurmaCapacitacao);
                    PreencherCampos(turmaCapacitacao);
                }

                PreencherListaUfs(turmaCapacitacao);
            }
        }
        protected void dgvTurmaCapacitacao_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int idCapacitacao = int.Parse(e.CommandArgument.ToString());

            if (e.CommandName.Equals("editar"))
            {
                Response.Redirect("EditarTurmaCapacitacao.aspx?Id=" + idCapacitacao.ToString(), false);
            }
            if (e.CommandName.Equals("excluir"))
            {
                try
                {
                    var bm = new BMTurmaCapacitacao();
                    var objTurmaCapacitacao = bm.ObterPorId(idCapacitacao);
                    bm.Excluir(objTurmaCapacitacao);
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso, "Registro excluído com sucesso", "ListarTurmaCapacitacao.aspx");
                }
                catch (AcademicoException ex)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, ex.Message);
                    return;
                }
            }
            if (e.CommandName.Equals("duplicar"))
            {
                hdIndexOfIdTurma.Value = idCapacitacao.ToString();
                ExibirModal();
            }
        }
        private void PrepararQuestionarios(int idTurmaCapacitacao = 0)
        {
            var manterTurma = new BMTurmaCapacitacao();

            classes.TurmaCapacitacao turma = null;

            if (idTurmaCapacitacao != 0)
            {
                turma = manterTurma.ObterPorId(idTurmaCapacitacao);
            }
            else if (Request["id"] != null)
            {
                turma = manterTurma.ObterPorId(int.Parse(Request["id"]));
            }

            if (turma == null)
            {
                return;
            }

            var lsIds = new List <int>();
            int id;

            int.TryParse(ddlQuestionarioPre.SelectedValue, out id);

            if (id == 0)
            {
                if (turma.ListaQuestionarioAssociacao != null)
                {
                    var questionarioAssociacao = turma.ListaQuestionarioAssociacao.FirstOrDefault(p => p.TipoQuestionarioAssociacao.ID == (int)enumTipoQuestionarioAssociacao.Pre);
                    if (questionarioAssociacao != null)
                    {
                        lsIds.Add(questionarioAssociacao.ID);
                    }
                }
            }

            int.TryParse(ddlQuestionarioPos.SelectedValue, out id);

            if (id == 0)
            {
                if (turma.ListaQuestionarioAssociacao != null)
                {
                    var questionarioAssociacao = turma.ListaQuestionarioAssociacao.FirstOrDefault(p => p.TipoQuestionarioAssociacao.ID == (int)enumTipoQuestionarioAssociacao.Pos);
                    if (questionarioAssociacao != null)
                    {
                        lsIds.Add(questionarioAssociacao.ID);
                    }
                }
            }
            foreach (var i in lsIds)
            {
                (new BMQuestionarioAssociacao()).Excluir(new QuestionarioAssociacao {
                    ID = i
                });
            }
        }
        protected void btnEnviar_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(hdIndexOfIdTurma.Value))
            {
                try
                {
                    if (!string.IsNullOrWhiteSpace(txtNomeTurmaDuplicar.Text))
                    {
                        BMTurmaCapacitacao bmTurmaCapacitacao = new BMTurmaCapacitacao();

                        classes.TurmaCapacitacao turmaCapacitacao = bmTurmaCapacitacao.ObterPorId(int.Parse(hdIndexOfIdTurma.Value));
                        if (turmaCapacitacao != null)
                        {
                            classes.TurmaCapacitacao novaTurmaCapacitacao = new classes.TurmaCapacitacao();
                            novaTurmaCapacitacao.Nome = txtNomeTurmaDuplicar.Text;
                            if (turmaCapacitacao.ListaPermissao.Count > 0)
                            {
                                foreach (var permissao in turmaCapacitacao.ListaPermissao)
                                {
                                    novaTurmaCapacitacao.ListaPermissao.Add(new classes.TurmaCapacitacaoPermissao
                                    {
                                        TurmaCapacitacao = novaTurmaCapacitacao,
                                        Uf = permissao.Uf,
                                        QuantidadeVagasPorEstado = permissao.QuantidadeVagasPorEstado
                                    });
                                }
                            }
                            novaTurmaCapacitacao.Capacitacao = turmaCapacitacao.Capacitacao;
                            bmTurmaCapacitacao.Salvar(novaTurmaCapacitacao);
                            WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso, "Dados Gravados com Sucesso !", "ListarTurmaCapacitacao.aspx");
                        }
                        else
                        {
                            throw new AcademicoException("A turma não foi localizada para ser duplicada.");
                        }
                    }
                    else
                    {
                        throw new AcademicoException("Informe o nome da turma para a duplicação.");
                    }
                }
                catch (AcademicoException ex)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, ex.Message);
                }
                catch (Exception)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Erro ao recuprar os dados da sessão para edição");
                }
            }
            else
            {
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Erro ao recuperar turma para duplicar.");
            }
            Console.Write(hdIndexOfIdTurma.Value);
        }
        public string MatriculaCapacitacao(int idUsuario, int idCapacitacao, int idTurma)
        {
            var usuario = new BMUsuario().ObterPorId(idUsuario);

            if (usuario == null)
            {
                throw new AcademicoException("Usuário não localizado na base");
            }

            var capacitacao = new BMCapacitacao().ObterPorId(idCapacitacao);

            if (capacitacao == null)
            {
                throw new AcademicoException("Capacitação não localizado na base");
            }

            var matCap = new BMMatriculaCapacitacao().ObterUsuariosPorCapacitacao(usuario.ID, capacitacao.ID);

            if (matCap.Count > 0)
            {
                throw new AcademicoException("Usuário já matriculado nesta capacitação.");
            }

            var turmaCap = new BMTurmaCapacitacao().ObterPorId(idTurma);

            if (turmaCap == null)
            {
                throw new AcademicoException("Turma não localizada na base");
            }

            var matriculaCapacitacao = new MatriculaCapacitacao {
                Usuario          = usuario,
                Capacitacao      = capacitacao,
                UF               = usuario.UF,
                NivelOcupacional = usuario.NivelOcupacional,
                StatusMatricula  = enumStatusMatricula.Inscrito,
                DataInicio       = DateTime.Today
            };


            new BMMatriculaCapacitacao().Salvar(matriculaCapacitacao);

            var matriculaTurmaCapacitacao = new MatriculaTurmaCapacitacao {
                MatriculaCapacitacao = matriculaCapacitacao,
                TurmaCapacitacao     = turmaCap,
                DataMatricula        = DateTime.Today
            };

            new BMMatriculaTurmaCapacitacao().Salvar(matriculaTurmaCapacitacao);

            return(string.Empty);
        }
Exemple #6
0
        public void PreencherTurmaCapacitacao()
        {
            var listaTurmas = new BMTurmaCapacitacao().ObterPorCapacitacao(int.Parse(ddlCapacitacao.SelectedValue));

            if (!bmUsuario.PerfilAdministrador() && bmUsuario.ObterUfLogadoSeGestor() > 0)
            {
                listaTurmas = listaTurmas.Where(x => x.ListaPermissao.Any(p => p.Uf == null || p.Uf.ID == bmUsuario.ObterUfLogadoSeGestor())).ToList();

                txtNomeTurma.Text    = ddlCapacitacao.SelectedItem.Text + ". " + bmUsuario.ObterUsuarioLogado().UF.Sigla + " - " + (listaTurmas.Count() + 1);
                txtNomeTurma.Enabled = false;
            }

            gvTurmas.DataSource = listaTurmas;
            gvTurmas.DataBind();
        }
        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            classes.TurmaCapacitacao         capacitacao = ObterObjetoCapacitacao();
            IList <classes.TurmaCapacitacao> listaTurma  = new BMTurmaCapacitacao().ObterPorFiltro(capacitacao);

            if (listaTurma != null && listaTurma.Count > 0)
            {
                WebFormHelper.PreencherGrid(listaTurma, this.gvTurmaCapacitacao);
                pnlTurmaCapacitacao.Visible = true;
            }
            else
            {
                pnlTurmaCapacitacao.Visible = false;
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "Nenhuma Informação Encontrada");
            }
        }
Exemple #8
0
        public void btnCriarTurma_OnClick(object sender, EventArgs e)
        {
            int qtdeVagas = 0;

            if (string.IsNullOrEmpty(txtNomeTurma.Text) || string.IsNullOrEmpty(txtQuantidadeVagasTurma.Text))
            {
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "Você deve informar o nome da turma e a quantidade de vagas");
            }
            else if (!(int.TryParse(txtQuantidadeVagasTurma.Text, out qtdeVagas)))
            {
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "A quantidade de vagas deve ser numérica");
            }
            else
            {
                Dominio.Classes.TurmaCapacitacao turmaCapacitacao = new Dominio.Classes.TurmaCapacitacao();
                turmaCapacitacao.Nome        = txtNomeTurma.Text;
                turmaCapacitacao.Capacitacao = new BMCapacitacao().ObterPorId(int.Parse(ddlCapacitacao.SelectedValue));

                TurmaCapacitacaoPermissao turmaCapacitacaoPermissao = new TurmaCapacitacaoPermissao();
                turmaCapacitacaoPermissao.Uf = new BMUf().ObterPorId(bmUsuario.ObterUsuarioLogado().UF.ID);
                turmaCapacitacaoPermissao.QuantidadeVagasPorEstado = qtdeVagas;
                turmaCapacitacaoPermissao.TurmaCapacitacao         = turmaCapacitacao;
                turmaCapacitacao.ListaPermissao.Add(turmaCapacitacaoPermissao);

                var filtro = new BMTurmaCapacitacao().ObterPorFiltro(turmaCapacitacao);

                if (filtro.Count() > 0)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "A turma já está cadastrada.");
                }
                else
                {
                    new BMTurmaCapacitacao().Salvar(turmaCapacitacao);
                    PreencherTurmaCapacitacao();
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso, "Turma cadastrada com sucesso.");
                }
            }
        }
        public void PreencherComboTurma()
        {
            if (this.IdCapacitacao > 0)
            {
                var turmas = new BMTurmaCapacitacao().ObterPorCapacitacao(this.IdCapacitacao);

                var bmUsuario = new BMUsuario();
                if (!bmUsuario.PerfilAdministrador())
                {
                    int ufGestor = bmUsuario.ObterUfLogadoSeGestor();
                    if (ufGestor > 0)
                    {
                        turmas = turmas.Where(t => t.ListaPermissao.Any(p => p.Uf == null || p.Uf.ID == ufGestor)).ToList();
                    }
                }

                if (turmas.Count() > 0)
                {
                    ddlTurmaCapacitacao.Enabled = true;
                    WebFormHelper.PreencherLista(turmas, ddlTurmaCapacitacao, false, true);
                }
            }
        }
        private classes.TurmaCapacitacao ObterObjetoTurmaCapacitacao()
        {
            var retorno = new classes.TurmaCapacitacao();

            if (Request["Id"] != null)
            {
                PrepararQuestionarios();

                retorno = new BMTurmaCapacitacao().ObterPorId(Convert.ToInt32(Request["Id"]));
            }

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

            if (ddlPrograma.SelectedIndex <= 0)
            {
                throw new AcademicoException("Informar o programa da turma");
            }

            if (ddlCapacitacao.SelectedIndex <= 0)
            {
                throw new AcademicoException("Informar a oferta da turma");
            }
            else
            {
                var objCapacitacao = new BMCapacitacao().ObterPorId(int.Parse(ddlCapacitacao.SelectedValue));
                if (objCapacitacao != null)
                {
                    retorno.Capacitacao = objCapacitacao;
                }
                else
                {
                    throw new AcademicoException("A oferta não foi encontrada no banco de dados.");
                }
            }

            // Data Início
            if (string.IsNullOrEmpty(TxtDtInicio.Text))
            {
                throw new AcademicoException("Informar a Data Início da turma");
            }
            else
            {
                retorno.DataInicio = CommonHelper.TratarData(TxtDtInicio.Text, "Data de Início");
            }


            // Validacao de Data Final
            if (!string.IsNullOrEmpty(TxtDtFinal.Text))
            {
                // Data Final
                var dataFinal = CommonHelper.TratarData(TxtDtFinal.Text.Trim(), "Data Final");
                if (dataFinal < retorno.DataInicio)
                {
                    throw new AcademicoException("A Data Final não pode ser menor que a Data Início");
                }
                else
                {
                    retorno.DataFim = dataFinal;
                }
            }

            // Questionários Associação.
            retorno.ListaQuestionarioAssociacao = ObterQuestionariosAssociacao(retorno);

            AdicionarOuRemoverUf(retorno);

            return(retorno);
        }
 public ManterTurmaCapacitacao()
     : base()
 {
     bmTurmaCapacitacao = new BMTurmaCapacitacao();
 }