예제 #1
0
    protected void _dgvCargo_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "Deletar")
        {
            try
            {
                int index  = int.Parse(e.CommandArgument.ToString());
                int crg_id = Convert.ToInt32(_dgvCargo.DataKeys[index].Value);

                RHU_Cargo entity = new RHU_Cargo {
                    crg_id = crg_id
                };
                RHU_CargoBO.GetEntity(entity);

                if (RHU_CargoBO.Delete(entity))
                {
                    _dgvCargo.PageIndex = 0;
                    _dgvCargo.Sort("", SortDirection.Ascending);
                    _dgvCargo.DataBind();
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "crg_id: " + crg_id);
                    _lblMessage.Text = UtilBO.GetErroMessage("Cargo excluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }
            }
            catch (ValidationException ex)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar excluir o cargo.", UtilBO.TipoMensagem.Erro);
            }
        }
    }
예제 #2
0
    /// <summary>
    /// Carrega as disciplinas.
    /// </summary>
    /// <param name="crg_id">ID do cargo</param>
    /// <param name="coc_id">ID do COC</param>
    /// <param name="col_id"></param>
    public void CarregarDisciplinas(int crg_id, int coc_id, long col_id)
    {
        RHU_Cargo cargo = new RHU_Cargo
        {
            crg_id = crg_id
        };

        RHU_CargoBO.GetEntity(cargo);

        fsDisciplinas.Visible = cargo.crg_cargoDocente && !cargo.crg_especialista;

        if (VS_IsDocente)
        {
            DataTable dtTipoDisciplina = RHU_CargoDisciplinaBO.SelecionaCargoDisciplinaByCrgId(cargo.crg_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
            if (dtTipoDisciplina.Rows.Count > 0)
            {
                cblDisciplinasPossiveis.DataSourceID = string.Empty;
                cblDisciplinasPossiveis.DataSource   = dtTipoDisciplina;
            }
            else
            {
                List <sTipoDisciplina> lstTipoDisciplina = ACA_TipoDisciplinaBO.SelecionaTipoDisciplina(__SessionWEB.__UsuarioWEB.Usuario.ent_id);
                cblDisciplinasPossiveis.DataSource = lstTipoDisciplina;
            }
        }
        else
        {
            List <sTipoDisciplina> lstTipoDisciplina = ACA_TipoDisciplinaBO.SelecionaTipoDisciplina(__SessionWEB.__UsuarioWEB.Usuario.ent_id);
            cblDisciplinasPossiveis.DataSource = lstTipoDisciplina;
        }
        cblDisciplinasPossiveis.DataBind();

        if (cargo.crg_cargoDocente)
        {
            if (!cargo.crg_especialista)
            {
                foreach (ListItem li in cblDisciplinasPossiveis.Items)
                {
                    int tds_id = Convert.ToInt32(li.Value);

                    // Encontra linha pela chave primaria da tabela.
                    var x = from DataRow dr in _VS_cargosDisciplinas.Rows
                            where dr.RowState != DataRowState.Deleted &&
                            Convert.ToInt32(dr["crg_id"]) == crg_id &&
                            Convert.ToInt32(dr["coc_id"]) == coc_id &&
                            Convert.ToInt32(dr["tds_id"]) == tds_id
                            select dr;

                    li.Selected = x.Count() > 0;
                }
            }
        }

        VS_col_id = col_id;
    }
예제 #3
0
    /// <summary>
    /// Evento IndexChanged do Combo de cargos.
    /// </summary>
    private void SelecionarCargo()
    {
        try
        {
            if (UCComboCargo1.Valor > 0)
            {
                RHU_Cargo cargo = new RHU_Cargo
                {
                    crg_id = UCComboCargo1.Valor
                };
                RHU_CargoBO.GetEntity(cargo);

                if (VS_IsDocente)
                {
                    DataTable dtTipoDisciplina = RHU_CargoDisciplinaBO.SelecionaCargoDisciplinaByCrgId(cargo.crg_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
                    if (dtTipoDisciplina.Rows.Count > 0)
                    {
                        cblDisciplinasPossiveis.DataSourceID = string.Empty;
                        cblDisciplinasPossiveis.DataSource   = dtTipoDisciplina;
                    }
                    else
                    {
                        List <sTipoDisciplina> lstTipoDisciplina = ACA_TipoDisciplinaBO.SelecionaTipoDisciplina(__SessionWEB.__UsuarioWEB.Usuario.ent_id);
                        cblDisciplinasPossiveis.DataSource = lstTipoDisciplina;
                    }
                }
                else
                {
                    List <sTipoDisciplina> lstTipoDisciplina = ACA_TipoDisciplinaBO.SelecionaTipoDisciplina(__SessionWEB.__UsuarioWEB.Usuario.ent_id);
                    cblDisciplinasPossiveis.DataSource = lstTipoDisciplina;
                }
                cblDisciplinasPossiveis.DataBind();

                if (cargo.crg_cargoDocente)
                {
                    fsDisciplinas.Visible = !cargo.crg_especialista;
                }
                else
                {
                    fsDisciplinas.Visible = false;
                }

                ComboCargaHorariaCarregar(cargo);
            }
            else
            {
                UCComboCargaHoraria1.Valor         = -1;
                UCComboCargaHoraria1.PermiteEditar = false;
            }
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
    }
예제 #4
0
    protected void _dgvCargo_DataBound(object sender, EventArgs e)
    {
        UCTotalRegistros1.Total = RHU_CargoBO.GetTotalRecords();
        // Seta propriedades necessárias para ordenação nas colunas.
        ConfiguraColunasOrdenacao(_dgvCargo);

        if ((!string.IsNullOrEmpty(_dgvCargo.SortExpression)) &&
            (__SessionWEB.BuscaRealizada.PaginaBusca == PaginaGestao.Cargos))
        {
            Dictionary <string, string> filtros = __SessionWEB.BuscaRealizada.Filtros;

            if (filtros.ContainsKey("VS_Ordenacao"))
            {
                filtros["VS_Ordenacao"] = _dgvCargo.SortExpression;
            }
            else
            {
                filtros.Add("VS_Ordenacao", _dgvCargo.SortExpression);
            }

            if (filtros.ContainsKey("VS_SortDirection"))
            {
                filtros["VS_SortDirection"] = _dgvCargo.SortDirection.ToString();
            }
            else
            {
                filtros.Add("VS_SortDirection", _dgvCargo.SortDirection.ToString());
            }

            __SessionWEB.BuscaRealizada = new BuscaGestao
            {
                PaginaBusca = PaginaGestao.Cargos
                ,
                Filtros = filtros
            };
        }
    }
예제 #5
0
    private void _LoadFromEntity(int crg_id)
    {
        try
        {
            RHU_Cargo Cargo = new RHU_Cargo {
                crg_id = crg_id
            };
            RHU_CargoBO.GetEntity(Cargo);

            CarregarDisciplinas(Cargo);

            if (Cargo.ent_id != __SessionWEB.__UsuarioWEB.Usuario.ent_id)
            {
                __SessionWEB.PostMessages = UtilBO.GetErroMessage("O cargo não pertence à entidade na qual você está logado.", UtilBO.TipoMensagem.Alerta);
                Response.Redirect("Busca.aspx", false);
                HttpContext.Current.ApplicationInstance.CompleteRequest();
            }

            _VS_crg_id = Cargo.crg_id;
            _UCComboTipoVinculo.Valor         = Cargo.tvi_id;
            _UCComboTipoVinculo.PermiteEditar = false;
            _ckbCargoDocente.Enabled          = false;
            _ckbEspecialista.Enabled          = false;
            _txtNome.Text                 = Cargo.crg_nome;
            _txtCodigo.Text               = Cargo.crg_codigo;
            _txtDescricao.Text            = Cargo.crg_descricao;
            _txtCodIntegracao.Text        = Cargo.crg_codIntegracao;
            _txtMaxAulaSemana.Text        = Cargo.crg_maxAulaSemana.ToString();
            _txtMaxAulaDia.Text           = Cargo.crg_maxAulaDia.ToString();
            ckbControleIntegracao.Checked = Cargo.crg_controleIntegracao;

            ddlTipo.SelectedValue = Cargo.crg_tipo.ToString();

            if (!string.IsNullOrEmpty(Cargo.pgs_chave))
            {
                if (UCComboParametroGrupoPerfil1.ExisteItem(Cargo.pgs_chave))
                {
                    UCComboParametroGrupoPerfil1.Valor = Cargo.pgs_chave;
                }
            }

            _ckbBloqueado.Visible = true;
            _ckbBloqueado.Checked = !Cargo.crg_situacao.Equals(1);

            if (Cargo.crg_cargoDocente.Equals(false))
            {
                _ckbCargoDocente.Checked = false;
                divDisciplinas.Visible   = false;
            }
            else
            {
                _ckbCargoDocente.Checked = true;

                if (_txtMaxAulaDia.Text == "0")
                {
                    _txtMaxAulaDia.Text = string.Empty;
                }
                if (_txtMaxAulaSemana.Text == "0")
                {
                    _txtMaxAulaSemana.Text = string.Empty;
                }
                divDisciplinas.Visible = true;

                divCargoDocente.Visible = true;

                _ckbEspecialista.Visible = true;

                if (Cargo.crg_especialista.Equals(true))
                {
                    _ckbEspecialista.Checked = true;
                    divDisciplinas.Visible   = false;
                }
                else
                {
                    divDisciplinas.Visible = true;
                }

                if (GestaoEscolarUtilBO.VerificarIntegridade("crg_id", _VS_crg_id.ToString(), "RHU_Cargo", null))
                {
                    _txtMaxAulaDia.Enabled    = false;
                    _txtMaxAulaSemana.Enabled = false;
                }
                else
                {
                    _txtMaxAulaDia.Enabled    = true;
                    _txtMaxAulaSemana.Enabled = true;
                }
            }
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o cargo.", UtilBO.TipoMensagem.Erro);
        }
    }
예제 #6
0
    public void Salvar()
    {
        try
        {
            if (_ckbCargoDocente.Checked)
            {
                if (!string.IsNullOrEmpty(_txtMaxAulaDia.Text) && (Convert.ToInt32(_txtMaxAulaDia.Text) > 24))
                {
                    throw new ArgumentException("Máximo de aulas por dia não pode ser maior do que 24.");
                }

                if (!string.IsNullOrEmpty(_txtMaxAulaSemana.Text) && (Convert.ToInt32(_txtMaxAulaSemana.Text) > 168))
                {
                    throw new ArgumentException("Máximo de aulas por semana não pode ser maior do que 168.");
                }
            }

            RHU_Cargo Cargo = new RHU_Cargo
            {
                crg_id = _VS_crg_id
                ,
                crg_nome = _txtNome.Text
                ,
                crg_codigo = _txtCodigo.Text
                ,
                crg_descricao = _txtDescricao.Text
                ,
                crg_codIntegracao = _txtCodIntegracao.Text
                ,
                tvi_id = _UCComboTipoVinculo.Valor
                ,
                ent_id = __SessionWEB.__UsuarioWEB.Usuario.ent_id
                ,
                crg_maxAulaSemana = Convert.ToByte(string.IsNullOrEmpty(_txtMaxAulaSemana.Text) ? "0" : _txtMaxAulaSemana.Text)
                ,
                crg_maxAulaDia = Convert.ToByte(string.IsNullOrEmpty(_txtMaxAulaDia.Text) ? "0" : _txtMaxAulaDia.Text)
                ,
                crg_cargoDocente = _ckbCargoDocente.Checked
                ,
                crg_especialista = _ckbEspecialista.Checked
                ,
                pgs_chave = UCComboParametroGrupoPerfil1.Valor == "-1" ? string.Empty : UCComboParametroGrupoPerfil1.Valor
                ,
                crg_situacao = Convert.ToByte(_ckbBloqueado.Checked ? 2 : 1)
                ,
                crg_tipo = Convert.ToByte(ddlTipo.SelectedValue)
                ,
                crg_controleIntegracao = ckbControleIntegracao.Checked
                ,
                IsNew = (_VS_crg_id > 0) ? false : true
            };

            //Lista para salvar as disciplinas do cargo
            List <RHU_CargoDisciplina> listDis = new List <RHU_CargoDisciplina>();

            if (fsDisciplinas.Visible)
            {
                foreach (ListItem li in cblDisciplinasPossiveis.Items)
                {
                    if (li.Selected)
                    {
                        RHU_CargoDisciplina entityDis = new RHU_CargoDisciplina
                        {
                            tds_id = Convert.ToInt32(li.Value)
                        };

                        listDis.Add(entityDis);
                    }
                }
            }

            if (RHU_CargoBO.Save(Cargo, listDis))
            {
                if (_VS_crg_id <= 0)
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "crg_id: " + Cargo.crg_id);
                    __SessionWEB.PostMessages = UtilBO.GetErroMessage("Cargo incluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }
                else
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "crg_id: " + Cargo.crg_id);
                    __SessionWEB.PostMessages = UtilBO.GetErroMessage("Cargo alterado com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }

                Response.Redirect("Busca.aspx", false);
                HttpContext.Current.ApplicationInstance.CompleteRequest();
            }
            else
            {
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o cargo.", UtilBO.TipoMensagem.Erro);
            }
        }
        catch (MSTech.Validation.Exceptions.ValidationException ex)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (ArgumentException ex)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (DuplicateNameException ex)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o cargo." + ex.Message, UtilBO.TipoMensagem.Erro);
        }
    }
예제 #7
0
 /// <summary>
 /// Carrega os cargos não excluídos logicamente filtrando por tvi_id e ent_id
 /// </summary>
 public void CarregarCargoByTipoVinculo(int tvi_id)
 {
     CarregarCombo(RHU_CargoBO.SelecionaCargoByTipoVinculo(tvi_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id));
 }
예제 #8
0
 /// <summary>
 /// Carrega os cargos não excluídos logicamente com crg_cargoDocente = true
 /// </summary>
 public void CarregarCargoDocenteVerificandoControleIntegracao(bool controleIntegracao)
 {
     CarregarCombo(RHU_CargoBO.SelecionaVerificandoControleIntegracaoPorCargoDocente(controleIntegracao, true, __SessionWEB.__UsuarioWEB.Usuario.ent_id));
 }
예제 #9
0
 /// <summary>
 /// Carrega os cargos não excluídos logicamente com crg_cargoDocente = true
 /// </summary>
 public void CarregarCargoDocente()
 {
     CarregarCombo(RHU_CargoBO.SelecionaNaoExcluidosPorCargoDocente(true, __SessionWEB.__UsuarioWEB.Usuario.ent_id));
 }
예제 #10
0
 /// <summary>
 /// Carrega os cargos não excluídos logicamente
 /// </summary>
 public void CarregarCargo()
 {
     CarregarCombo(RHU_CargoBO.SelecionaNaoExcluidos(__SessionWEB.__UsuarioWEB.Usuario.ent_id));
 }