Esempio n. 1
0
        public Modulo ListPreRequisitosPorModulo(ModuloSolucaoEducacional modSol, int IdUsuario)
        {
            Modulo modReq = new Modulo();

            var query = repositorio.session.Query <ModuloPreRequisito>();

            query = query.Where(x => x.ModuloFilho == modSol.Modulo);

            IList <ModuloPreRequisito> modPreReqs = query.ToList();

            if (modPreReqs.Count() > 0)
            {
                BMMatriculaOferta matOfer = new BMMatriculaOferta();

                foreach (ModuloPreRequisito modPreReq in modPreReqs)
                {
                    int totalSol = modPreReq.ModuloPai.ListaSolucaoEducacional.Count();

                    if (modPreReq.ModuloPai.ListaSolucaoEducacional.Count() > 0)
                    {
                        foreach (ModuloSolucaoEducacional modPreReqSol in modPreReq.ModuloPai.ListaSolucaoEducacional)
                        {
                            if (!matOfer.AprovacaoPorUsuarioESolucaoEducacional(IdUsuario, modPreReqSol.SolucaoEducacional.ID))
                            {
                                return(modPreReq.ModuloPai);
                            }
                        }
                    }
                }
            }
            return(modReq);
        }
Esempio n. 2
0
        private classes.Modulo ObterObjetoModulo()
        {
            var retorno = new classes.Modulo();

            if (Request["Id"] != null)
            {
                retorno = new BMModulo().ObterPorId(Convert.ToInt32(Request["Id"]));
            }

            if (string.IsNullOrEmpty(txtNome.Text))
            {
                throw new AcademicoException("Você deve informar o nome do módulo");
            }
            else
            {
                retorno.Nome = txtNome.Text;
            }

            if (string.IsNullOrEmpty(txtDescricao.Text))
            {
                throw new AcademicoException("Você deve informar a descrição do módulo");
            }
            else
            {
                retorno.Descricao = txtDescricao.Text;
            }

            if (ddlPrograma.SelectedIndex <= 0)
            {
                throw new AcademicoException("Você deve informar o programa do módulo");
            }

            if (ddlCapacitacao.SelectedIndex <= 0)
            {
                throw new AcademicoException("Você deve informar a Oferta do módulo");
            }
            else
            {
                retorno.Capacitacao.ID = int.Parse(ddlCapacitacao.SelectedValue);
            }

            DateTime dtIni;
            DateTime dtFim;

            if (DateTime.TryParse(txtDtInicio.Text, out dtIni))
            {
                retorno.DataInicio = dtIni;
            }
            else
            {
                throw new AcademicoException("Você deve informar a Data Inicio da Realização do módulo");
            }

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

            ListBox lbSolucoesEscolhidas = (ListBox)this.ucSolucaoEducacional1.FindControl("lbSolucoesEscolhidas");

            if (lbSolucoesEscolhidas != null)
            {
                var solucoesEducacionaisListadas = lbSolucoesEscolhidas.Items;
                int i = 0;
                foreach (ListItem item in solucoesEducacionaisListadas)
                {
                    var moduloSolucaoEducacional = new ModuloSolucaoEducacional();
                    moduloSolucaoEducacional.Ordem = i;
                    moduloSolucaoEducacional.SolucaoEducacional.ID = Convert.ToInt32(item.Value);

                    if (!retorno.ListaSolucaoEducacional.Any(x => x.SolucaoEducacional.ID == moduloSolucaoEducacional.SolucaoEducacional.ID))
                    {
                        retorno.ListaSolucaoEducacional.Add(moduloSolucaoEducacional);
                        i++;
                    }
                }

                foreach (var item in retorno.ListaSolucaoEducacional.ToList())
                {
                    if (item.ID > 0)
                    {
                        if (!solucoesEducacionaisListadas.Contains(new ListItem {
                            Value = item.SolucaoEducacional.ID.ToString(), Text = item.SolucaoEducacional.Nome
                        }))
                        {
                            retorno.ListaSolucaoEducacional.Remove(item);
                        }
                    }
                }
            }

            for (int i = 0; i < gvModulosPreRequisitos.Rows.Count; i++)
            {
                int      idModuloPai  = int.Parse(gvModulosPreRequisitos.DataKeys[i].Value.ToString());
                CheckBox ckbModuloPai = (CheckBox)gvModulosPreRequisitos.Rows[i].FindControl("ckbModuloPai");
                if (ckbModuloPai.Checked)
                {
                    if (!retorno.ListaModuloPai.Any(x => x.ModuloPai.ID == idModuloPai))
                    {
                        var moduloPai = new ModuloPreRequisito();
                        moduloPai.ModuloPai.ID = idModuloPai;
                        retorno.ListaModuloPai.Add(moduloPai);
                    }
                }
                else
                {
                    if (retorno.ListaModuloPai.Any(x => x.ModuloPai.ID == idModuloPai))
                    {
                        retorno.ListaModuloPai.Remove(retorno.ListaModuloPai.FirstOrDefault(x => x.ModuloPai.ID == idModuloPai));
                    }
                }
            }

            return(retorno);
        }
 public void Salvar(ModuloSolucaoEducacional pModuloSolucaoEducacional)
 {
     repositorio.Salvar(pModuloSolucaoEducacional);
 }
 public void Excluir(ModuloSolucaoEducacional pModuloSolucaoEducacional)
 {
     repositorio.Excluir(pModuloSolucaoEducacional);
 }