public void ddlProgama_SelectedIndexChanged(object sender, EventArgs e) { dvFormularioTurma.Visible = false; if (ddlProgama.SelectedIndex > 0) { var lista = new BMCapacitacao().ObterPorIdPrograma(int.Parse(ddlProgama.SelectedValue)).ToList(); if (!bmUsuario.PerfilAdministrador()) { //Retirei pois é uma regra que deve ser aplicada a turmas //int ufGestor = bmUsuario.ObterUFLogadoSeGestor(); //if (ufGestor > 0) // lista = lista.Where(x => x.ListaTurmas.Any(t => t.ListaPermissao.Any(p => p.Uf == null || p.Uf.ID == ufGestor))).ToList(); if (rblGerenciarMatriculasAbertas.SelectedValue == "S") { lista = new BMCapacitacao().ObterPorIdPrograma(int.Parse(ddlProgama.SelectedValue), true).Where(x => x.PermiteMatriculaPeloGestor).ToList(); } } if (lista.Count() > 0) { ddlCapacitacao.Enabled = true; WebFormHelper.PreencherLista(lista, ddlCapacitacao, false, true); } } }
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { var bmCapacitacao = new BMCapacitacao(); WebFormHelper.PreencherLista(new BMPrograma().ObterTodos().OrderBy(x => x.Nome).ToList(), ddlPrograma, true); } }
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); }
public void ddlCapacitacao_SelectedIndexChanged(object sender, EventArgs e) { dvFormularioTurma.Visible = false; if (ddlCapacitacao.SelectedIndex > 0) { this.ucMatriculaOferta1.IdCapacitacao = int.Parse(ddlCapacitacao.SelectedValue); PreencherMatriculas(); var capacitacao = new BMCapacitacao().ObterPorId(this.ucMatriculaOferta1.IdCapacitacao); if (rblGerenciarMatriculasAbertas.SelectedValue == "S" && capacitacao != null && capacitacao.PermiteMatriculaPeloGestor) { dvMatricularAluno.Visible = true; } else { dvMatricularAluno.Visible = false; } } else { pnlMatricula.Visible = false; } }
public ManterCapacitacao() : base() { bmCapacitacao = new BMCapacitacao(); }
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); }
private void PreencherDTOComInformacoesDaMatriculaPrograma(int id_Usuario, List <DTOItemMeusCursos> resultado) { DTOItemMeusCursos dtoItemMeusCursos = null; try { IList <MatriculaCapacitacao> ListaMatriculaCapacitacao = new BMMatriculaCapacitacao().ObterPorUsuario(id_Usuario).Where(x => x.StatusMatricula.Equals(enumStatusMatricula.Inscrito)).OrderBy(x => x.Capacitacao.Programa.ID).ToList(); var manterMatCapacitacao = new ManterMatriculaCapacitacaoService(); int prevPrograma = 0; int cont = 0; double totalAprovacoesSol = 0; double totalSol = 0; foreach (var itemHistorico in ListaMatriculaCapacitacao) { BMCapacitacao bmCapacitacao = new BMCapacitacao(); // PROGRAMAS - Mudou o programa cria um novo item pai if (prevPrograma != itemHistorico.Capacitacao.Programa.ID) { totalAprovacoesSol = 0; totalSol = 0; dtoItemMeusCursos = new DTOItemMeusCursos(); dtoItemMeusCursos.ID = itemHistorico.Capacitacao.Programa.ID; dtoItemMeusCursos.NomeSolucao = itemHistorico.Capacitacao.Programa.Nome; dtoItemMeusCursos.Fornecedor = Constantes.Sebrae; dtoItemMeusCursos.TextoApresentacao = itemHistorico.Capacitacao.Programa.Apresentacao; dtoItemMeusCursos.DataInicio = itemHistorico.Capacitacao.DataInicio.ToString("dd/MM/yyyy"); dtoItemMeusCursos.DataLimite = itemHistorico.Capacitacao.DataFim.HasValue ? itemHistorico.Capacitacao.DataFim.Value.ToString("dd/MM/yyyy") : ""; dtoItemMeusCursos.Tipo = Constantes.ProgramaUC; dtoItemMeusCursos.CargaHoraria = Constantes.NaoDefinido; dtoItemMeusCursos.IdProgramaPortal = itemHistorico.Capacitacao.Programa.IdNodePortal; dtoItemMeusCursos.LinkAcesso = "";//!string.IsNullOrEmpty(itemHistorico.Capacitacao.Programa.Acesso) ? itemHistorico.Capacitacao.Programa.Acesso : ""; } DTOCapacitacao dtoCapacitacao = manterMatCapacitacao.AprovacoesSolucoesEducacionais(itemHistorico, id_Usuario); dtoItemMeusCursos.CapacitacoesPrograma.Add(dtoCapacitacao); string[] totais = dtoCapacitacao.TextoConclusaoCapacitacao.Split('/'); totalAprovacoesSol += float.Parse(totais[0]); totalSol += float.Parse(totais[1]); //dtoItemMeusCursos.LinkSemAcesso.Add(new DTOLinkSemAcesso { MotivoLinkSemAcesso = string.Format("Este curso será iniciado no dia {0}", exibirData.ToString("dd/MM/yyyy")) }); // Se o próximo programa for diferente ou for o último insere no DTO Pai os filhos if (ListaMatriculaCapacitacao.Count - 1 == cont || itemHistorico.Capacitacao.Programa.ID != ListaMatriculaCapacitacao[cont + 1].Capacitacao.Programa.ID) { dtoItemMeusCursos.PorcentagemConlusaoPrograma = (int)(Math.Round(totalAprovacoesSol / totalSol, 2) * 100); dtoItemMeusCursos.TextoConclusaoPrograma = totalAprovacoesSol + "/" + totalSol; resultado.Add(dtoItemMeusCursos); } // Atualiza a referência ao passado prevPrograma = itemHistorico.Capacitacao.Programa.ID; cont++; } } catch (Exception ex) { ErroUtil.Instancia.TratarErro(ex); } }
public List <DTOCapacitacao> ConsultarCapacitacoes(int idUsuario, int idCapacitacao = 0, int idPrograma = 0, string nome = "") { Usuario usuario = new BMUsuario().ObterPorId(idUsuario); if (usuario == null) { throw new AcademicoException("Usuário não localizado na base"); } Capacitacao objCapacitacao = new Capacitacao(); if (idPrograma > 0) { objCapacitacao.Programa.ID = idPrograma; } if (!string.IsNullOrEmpty(nome)) { objCapacitacao.Nome = nome; } if (idCapacitacao > 0) { objCapacitacao.ID = idCapacitacao; } IList <Capacitacao> ListaCapacitacoes = new BMCapacitacao().ObterPorFiltroNoPeriodoInscricoes(objCapacitacao); if (ListaCapacitacoes.Count == 0 || ListaCapacitacoes == null) { throw new AcademicoException("Não há capacitações disponíveis"); } List <DTOCapacitacao> retorno = new List <DTOCapacitacao>(); IList <MatriculaCapacitacao> capacitacoesJaMatriculado = new BMMatriculaCapacitacao().ObterPorUsuario(usuario.ID); foreach (var cap in ListaCapacitacoes) { DTOCapacitacao listReturn = new DTOCapacitacao(); listReturn.jaInscrito = false; if (capacitacoesJaMatriculado.Count > 0) { var jaInscrito = capacitacoesJaMatriculado.Where(x => x.Capacitacao.ID == cap.ID).ToList(); if (jaInscrito.Count > 0) { listReturn.jaInscrito = true; } } listReturn.ID = cap.ID; listReturn.NomeCapacitacao = cap.Nome; listReturn.DataInicio = cap.DataInicio.ToString("dd/MM/yyyy"); listReturn.DataFim = cap.DataFim.HasValue ? cap.DataFim.Value.ToString("dd/MM/yyyy") : ""; listReturn.DataInicioInscricoes = cap.DataInicioInscricao.HasValue ? cap.DataInicioInscricao.Value.ToString("dd/MM/yyyy") : ""; listReturn.DataFimInscricoes = cap.DataFimInscricao.HasValue ? cap.DataFimInscricao.Value.ToString("dd/MM/yyyy") : ""; listReturn.Programa.ID = cap.Programa.ID; listReturn.Programa.Nome = cap.Programa.Nome; listReturn.Programa.Ativo = cap.Programa.Ativo; listReturn.descricao = cap.Descricao; listReturn.TurmaCapacitacao = cap.ListaTurmas.Select(f => new DTOTurmaCapacitacao { ID = f.ID, Nome = f.Nome }).ToList(); listReturn.PodeRealizarIscricao = cap.DataInicioInscricao.HasValue && cap.DataFimInscricao.HasValue && (DateTime.Now > cap.DataInicioInscricao.Value && DateTime.Now < cap.DataFimInscricao.Value); retorno.Add(listReturn); } return(retorno); }