示例#1
0
    /// <summary>
    /// Insere ou altera o tipo de periodo calendário
    /// </summary>
    public void Salvar()
    {
        try
        {
            ACA_TipoPeriodoCalendario tipoPeriodoCalendario = new ACA_TipoPeriodoCalendario
            {
                tpc_id = _VS_tpc_id
                ,
                tpc_nome = _txtTipoPeriodoCalendario.Text
                ,
                tpc_nomeAbreviado = _txtTipoPeriodoCalendarioAbreviado.Text
                ,
                tpc_ordem = _VS_tpc_ordem
                ,
                tpc_situacao = (_ckbBloqueado.Checked ? Convert.ToByte(2) : Convert.ToByte(1))
                ,
                tpc_foraPeriodoLetivo = _ckbForaPeriodoLetivo.Checked
                ,
                IsNew = (_VS_tpc_id > 0) ? false : true
            };

            if (ACA_TipoPeriodoCalendarioBO.Save(tipoPeriodoCalendario))
            {
                if (_VS_tpc_id <= 0)
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "tpc_id: " + tipoPeriodoCalendario.tpc_id);
                    __SessionWEB.PostMessages = UtilBO.GetErroMessage("Tipo de período do calendário incluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }
                else
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tpc_id: " + tipoPeriodoCalendario.tpc_id);
                    __SessionWEB.PostMessages = UtilBO.GetErroMessage("Tipo de período do calendário alterado com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }

                Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "Configuracao/TipoPeriodoCalendario/Busca.aspx", false);
                HttpContext.Current.ApplicationInstance.CompleteRequest();
            }
            else
            {
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o tipo período do calendário.", UtilBO.TipoMensagem.Erro);
            }
        }
        catch (MSTech.Validation.Exceptions.ValidationException e)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (DuplicateNameException e)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (ArgumentException e)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (Exception e)
        {
            ApplicationWEB._GravaErro(e);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o tipo período do calendário.", UtilBO.TipoMensagem.Erro);
        }
    }
示例#2
0
        /// <summary>
        /// Parâmetros para efetuar a alteração preservando a data de criação
        /// </summary>
        /// <param name="qs"></param>
        /// <param name="entity"></param>
        protected override void ParamAlterar(QueryStoredProcedure qs, ACA_TipoPeriodoCalendario entity)
        {
            base.ParamAlterar(qs, entity);

            qs.Parameters.RemoveAt("@tpc_dataCriacao");
            qs.Parameters["@tpc_dataAlteracao"].Value = DateTime.Now;
        }
示例#3
0
        /// <summary>
        /// Carrega todos os tipos de período calendário não excluídos logicamente
        /// filtrando por calendário
        /// </summary>
        /// <param name="cal_id">ID do calendário</param>
        public void CarregarPorCalendario(int cal_id, bool adicionarRecesso = false)
        {
            sTipoPeriodoCalendario sTpc = new sTipoPeriodoCalendario();

            ddlCombo.DataTextField = "cap_descricao";
            List <sTipoPeriodoCalendario> dt = ACA_TipoPeriodoCalendarioBO.SelecionaTipoPeriodoCalendarioPorCalendario(cal_id, ApplicationWEB.AppMinutosCacheLongo);

            if (adicionarRecesso)
            {
                int tpc_id = ACA_ParametroAcademicoBO.ParametroValorInt32PorEntidade(eChaveAcademico.TIPO_PERIODO_CALENDARIO_RECESSO, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
                if (tpc_id > 0)
                {
                    ACA_TipoPeriodoCalendario tpc = new ACA_TipoPeriodoCalendario {
                        tpc_id = tpc_id
                    };
                    ACA_TipoPeriodoCalendarioBO.GetEntity(tpc);
                    sTpc.tpc_id     = tpc_id;
                    sTpc.tpc_nome   = sTpc.cap_descricao = tpc.tpc_nome;
                    sTpc.tpc_cap_id = string.Format("{0};-1", tpc_id);

                    dt.Add(sTpc);
                }
            }
            CarregarCombo(dt);
            CarregarPeriodoAtual(dt, SelecionaPeriodoAtualAoCarregar);

            if (sTpc.tpc_id > 0)
            {
                dt.Remove(sTpc);
            }
        }
示例#4
0
        private void Pesquisar()
        {
            var lstLimite      = ACA_EventoLimiteBO.GetSelectByCalendario(VS_cal_id);
            var tblTipoEvento  = ACA_TipoEventoBO.SelecionaTipoEvento(0, Guid.Empty);
            var lstTipoPeriodo = ACA_TipoPeriodoCalendarioBO.SelecionaTipoPeriodoCalendarioPorCalendario(VS_cal_id, ApplicationWEB.AppMinutosCacheLongo);

            int    tpc_idRecesso   = ACA_ParametroAcademicoBO.ParametroValorInt32PorEntidade(eChaveAcademico.TIPO_PERIODO_CALENDARIO_RECESSO, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
            string tcp_nomeRecesso = string.Empty;

            if (tpc_idRecesso > 0)
            {
                ACA_TipoPeriodoCalendario tpc = new ACA_TipoPeriodoCalendario {
                    tpc_id = tpc_idRecesso
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(tpc);
                tcp_nomeRecesso = tpc.tpc_nome;
            }

            var source = lstLimite.Join(tblTipoEvento.Rows.Cast <DataRow>(),
                                        evl => evl.tev_id,
                                        tev => Convert.ToInt32(tev["tev_id"]),
                                        (evl, tev) => new sLimite()
            {
                tev_nome = tev["tev_nome"].ToString(),
                tpc_nome = (evl.tpc_id > 0
                                                                        ? (evl.tpc_id == tpc_idRecesso ? tcp_nomeRecesso : lstTipoPeriodo.First(tpc => tpc.tpc_id == evl.tpc_id).tpc_nome)
                                                                        : string.Empty),
                tev_id = evl.tev_id,
                evl_id = evl.evl_id,
                evl    = evl
            })
                         .GroupBy(evl => string.Format("{0}{1}{2}",
                                                       evl.tev_nome,
                                                       (string.IsNullOrEmpty(evl.tpc_nome) ? string.Empty : " - "),
                                                       evl.tpc_nome))
                         .Select(grp => new
            {
                TipoEventoBimestre = grp.Key,
                Limites            = grp.ToList()
            })
                         .OrderBy(grp => grp.TipoEventoBimestre);

            rptLimitesCalendario.DataSource = source;
            rptLimitesCalendario.DataBind();
        }
示例#5
0
 /// <summary>
 /// Carrega os dados de tipo de período calendáro
 /// </summary>
 /// <param name="tne_id">Id de tipo de período calendário</param>
 private void _LoadFromEntity(int tpc_id)
 {
     try
     {
         ACA_TipoPeriodoCalendario tipoPeriodoCalendario = new ACA_TipoPeriodoCalendario {
             tpc_id = tpc_id
         };
         ACA_TipoPeriodoCalendarioBO.GetEntity(tipoPeriodoCalendario);
         _VS_tpc_id    = tipoPeriodoCalendario.tpc_id;
         _VS_tpc_ordem = tipoPeriodoCalendario.tpc_ordem;
         _txtTipoPeriodoCalendario.Text          = tipoPeriodoCalendario.tpc_nome;
         _txtTipoPeriodoCalendarioAbreviado.Text = tipoPeriodoCalendario.tpc_nomeAbreviado;
         _ckbForaPeriodoLetivo.Checked           = tipoPeriodoCalendario.tpc_foraPeriodoLetivo;
         _ckbBloqueado.Checked         = !tipoPeriodoCalendario.tpc_situacao.Equals(1);
         _ckbBloqueado.Visible         = true;
         _ckbForaPeriodoLetivo.Enabled = !GestaoEscolarUtilBO.VerificarIntegridade("tpc_id", _VS_tpc_id.ToString(), "ACA_TipoPeriodoCalendario,REL_AlunosSituacaoFechamento", null);
     }
     catch (Exception e)
     {
         ApplicationWEB._GravaErro(e);
         _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o tipo de período do calendário.", UtilBO.TipoMensagem.Erro);
     }
 }
示例#6
0
        /// <summary>
        /// Parâmetros para efetuar a exclusão lógica.
        /// </summary>
        /// <param name="qs"></param>
        /// <param name="entity"></param>
        protected override void ParamDeletar(QueryStoredProcedure qs, ACA_TipoPeriodoCalendario entity)
        {
            Param               = qs.NewParameter();
            Param.DbType        = DbType.Int32;
            Param.ParameterName = "@tpc_id";
            Param.Size          = 4;
            Param.Value         = entity.tpc_id;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.Byte;
            Param.ParameterName = "@tpc_situacao";
            Param.Size          = 1;
            Param.Value         = 3;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.DateTime;
            Param.ParameterName = "@tpc_dataAlteracao";
            Param.Size          = 16;
            Param.Value         = DateTime.Now;
            qs.Parameters.Add(Param);
        }
示例#7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Int64 alu_id = __SessionWEB.__UsuarioWEB.alu_id;

                // somente terá acesso se o flag exibirBoletim do cadastro de "Tipo de ciclo" estiver marcado
                if (!ACA_TipoCicloBO.VerificaSeExibeCompromissoAluno(alu_id))
                {
                    lblMensagem.Text             = UtilBO.GetErroMessage("Este usuário não tem permissão de acesso a esta página.", UtilBO.TipoMensagem.Alerta);
                    fdsCompromissoEstudo.Visible = false;
                    btnSalvar.Visible            = false;
                    return;
                }

                // Carrega combo Bimestre
                string tipo             = ((byte)AvaliacaoTipo.Periodica).ToString() + "," + ((byte)AvaliacaoTipo.PeriodicaFinal).ToString();
                string parametroPeriodo = GestaoEscolarUtilBO.nomePadraoPeriodo_Calendario(__SessionWEB.__UsuarioWEB.Usuario.ent_id);

                DataTable dtCurriculo = ACA_AlunoCurriculoBO.SelecionaDadosUltimaMatricula(alu_id);
                UCComboTipoPeriodoCalendario1.CarregarTipoPeriodoCalendario(Convert.ToInt64(dtCurriculo.Rows[0]["tur_id"]));
                UCComboTipoPeriodoCalendario1._Validator.ValidationGroup = "CompromissoEstudo";
                UCComboTipoPeriodoCalendario1._Validator.Visible         = true;
                UCComboTipoPeriodoCalendario1._Label.Text = parametroPeriodo + " *";

                VS_Tur_Id  = Convert.ToInt64(dtCurriculo.Rows[0]["tur_id"]);
                VS_Cal_Id  = Convert.ToInt32(dtCurriculo.Rows[0]["cal_id"]);
                VS_Cpe_Ano = VSAnoLetivo;

                // Carrega dados para alteração do registro
                if ((PreviousPage != null) && PreviousPage.IsCrossPagePostBack)
                {
                    VS_Cpe_Id = PreviousPage.EditItem;

                    ACA_CompromissoEstudo compromisso = new ACA_CompromissoEstudo
                    {
                        alu_id = alu_id,
                        cpe_id = VS_Cpe_Id
                    };
                    ACA_CompromissoEstudoBO.GetEntity(compromisso);

                    txtOqTenhoFeito.Text    = compromisso.cpe_atividadeFeita;
                    txtOqPretendoFazer.Text = compromisso.cpe_atividadePretendeFazer;

                    // Seleciona o bimestre
                    ListItem itemBimestre = UCComboTipoPeriodoCalendario1._Combo.Items.FindByValue(compromisso.tpc_id.ToString());

                    if (itemBimestre != null)
                    {
                        UCComboTipoPeriodoCalendario1._Combo.SelectedValue = itemBimestre.Value;
                        UCComboTipoPeriodoCalendario1._Combo.Enabled       = false;
                    }
                    else
                    {
                        ACA_TipoPeriodoCalendario tpc = ACA_TipoPeriodoCalendarioBO.GetEntity(new ACA_TipoPeriodoCalendario {
                            tpc_id = compromisso.tpc_id
                        });
                        itemBimestre = new ListItem(tpc.tpc_nome, tpc.tpc_id.ToString());
                        UCComboTipoPeriodoCalendario1._Combo.Items.Add(itemBimestre);
                        UCComboTipoPeriodoCalendario1._Combo.SelectedValue = itemBimestre.Value;
                        UCComboTipoPeriodoCalendario1._Combo.Enabled       = false;
                    }
                }
            }
            UCConfirmacaoOperacao1.ConfimaOperacao += UCConfirmacaoOperacao1_ConfimaOperacao;
        }
示例#8
0
    protected void _dgvTipoPeriodoCalendario_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "Deletar")
        {
            try
            {
                int index  = int.Parse(e.CommandArgument.ToString());
                int tpc_id = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index].Value.ToString());

                ACA_TipoPeriodoCalendario entity = new ACA_TipoPeriodoCalendario {
                    tpc_id = tpc_id
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(entity);

                if (ACA_TipoPeriodoCalendarioBO.Delete(entity))
                {
                    if (_dgvTipoPeriodoCalendario.Rows.Count > 0)
                    {
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[0].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[_dgvTipoPeriodoCalendario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }

                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "tpc_id: " + tpc_id);
                    _lblMessage.Text = UtilBO.GetErroMessage("Tipo de período do calendário excluído com sucesso.", UtilBO.TipoMensagem.Sucesso);

                    _dgvTipoPeriodoCalendario.PageIndex = 0;
                    _dgvTipoPeriodoCalendario.DataBind();

                    if (_dgvTipoPeriodoCalendario.Rows.Count > 0)
                    {
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[0].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[_dgvTipoPeriodoCalendario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }
                }
                else
                {
                    _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar excluir o tipo período do calendário.", UtilBO.TipoMensagem.Erro);
                }
            }
            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 tipo de período do calendário.", UtilBO.TipoMensagem.Erro);
            }
        }

        if (e.CommandName == "Subir")
        {
            try
            {
                int index = int.Parse(e.CommandArgument.ToString());

                int tpc_idDescer    = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index - 1]["tpc_id"]);
                int tpc_ordemDescer = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index]["tpc_ordem"]);
                ACA_TipoPeriodoCalendario entityDescer = new ACA_TipoPeriodoCalendario {
                    tpc_id = tpc_idDescer
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(entityDescer);
                entityDescer.tpc_ordem = tpc_ordemDescer;

                int tes_idSubir    = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index]["tpc_id"]);
                int tes_ordemSubir = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index - 1]["tpc_ordem"]);
                ACA_TipoPeriodoCalendario entitySubir = new ACA_TipoPeriodoCalendario {
                    tpc_id = tes_idSubir
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(entitySubir);
                entitySubir.tpc_ordem = tes_ordemSubir;

                if (ACA_TipoPeriodoCalendarioBO.SaveOrdem(entityDescer, entitySubir))
                {
                    odsTipoPeriodoCalendario.DataBind();
                    _dgvTipoPeriodoCalendario.PageIndex = 0;
                    _dgvTipoPeriodoCalendario.DataBind();

                    if (_dgvTipoPeriodoCalendario.Rows.Count > 0)
                    {
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[0].Cells[2].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[_dgvTipoPeriodoCalendario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }
                }

                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tes_id: " + tes_idSubir);
                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tes_id: " + tpc_idDescer);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Erro);
            }
        }

        if (e.CommandName == "Descer")
        {
            try
            {
                int index = int.Parse(e.CommandArgument.ToString());

                int tpc_idDescer    = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index]["tpc_id"]);
                int tpc_ordemDescer = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index + 1]["tpc_ordem"]);
                ACA_TipoPeriodoCalendario entityDescer = new ACA_TipoPeriodoCalendario {
                    tpc_id = tpc_idDescer
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(entityDescer);
                entityDescer.tpc_ordem = tpc_ordemDescer;

                int tes_idSubir    = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index + 1]["tpc_id"]);
                int tes_ordemSubir = Convert.ToInt32(_dgvTipoPeriodoCalendario.DataKeys[index]["tpc_ordem"]);
                ACA_TipoPeriodoCalendario entitySubir = new ACA_TipoPeriodoCalendario {
                    tpc_id = tes_idSubir
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(entitySubir);
                entitySubir.tpc_ordem = tes_ordemSubir;

                if (ACA_TipoPeriodoCalendarioBO.SaveOrdem(entityDescer, entitySubir))
                {
                    odsTipoPeriodoCalendario.DataBind();
                    _dgvTipoPeriodoCalendario.PageIndex = 0;
                    _dgvTipoPeriodoCalendario.DataBind();

                    if (_dgvTipoPeriodoCalendario.Rows.Count > 0)
                    {
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[0].Cells[2].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)_dgvTipoPeriodoCalendario.Rows[_dgvTipoPeriodoCalendario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }
                }

                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tes_id: " + tes_idSubir);
                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tes_id: " + tpc_idDescer);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Erro);
            }
        }
    }
示例#9
0
    /// <summary>
    /// Valida os campos do grid
    /// </summary>
    /// <returns>0 - deu certo / 1 - deu errado / 2 - Se tiver apenas
    /// uma linha com dados vazios (grava como se não houvessem dados) </returns>
    private int ValidaCampos()
    {
        bool flag    = true         //Flag final - é true apenas se todas as outras flags de verificação são true
        , DescVazia  = true         //Verifica se ja foi mostrada mensagem de validação "Descrição é obrigatória."
        , TipoVazio  = true         //Verifica se ja foi mostrada mensagem de validação "Tipo de período é obrigatório."
        , DataIVazia = true         //Verifica se ja foi mostrada mensagem de validação "Data de início é obrigatória."
        , DataFVazia = true;        //Verifica se ja foi mostrada mensagem de validação "Data de fim é obrigatória."

        DateTime InicioAno = Convert.ToDateTime(_txtDataInicio.Text)
        , FimAno           = Convert.ToDateTime(_txtDataFim.Text);

        List <ACA_CalendarioPeriodo> list = listCalendarioPeriodo();

        //Arrays que armazenam os valores que já passaram pela verificação de igualdade
        ArrayList tipoIgual      = new ArrayList();
        ArrayList descricaoIgual = new ArrayList();

        //Verifica se existe apenas uma linha com dados em branco
        if (list.Count == 1 &&
            (string.IsNullOrEmpty(list[0].cap_descricao) &&
             list[0].tpc_id == -1 &&
             list[0].cap_dataInicio == new DateTime() &&
             list[0].cap_dataFim == new DateTime()))
        {
            return(2);
        }
        else
        {
            //Percorre o grid verificando se existem erros
            foreach (GridViewRow row in _dgvCalendarioPeriodo.Rows)
            {
                bool flagFim  = true        //Flag de verificação de erros na data de fim
                , flagInicio  = true        //Flag de verificação de erros na data de início
                , flagPeriodo = true        //Flag de verificação de erros no tipo do período
                , flagDesc    = true;       //Flag de verificação de erros na descrição

                string descricao = ((TextBox)row.FindControl("txtDescricao")).Text;

                string dataI = ((TextBox)row.FindControl("txtInicioPeriodo")).Text
                , dataF      = ((TextBox)row.FindControl("txtFimPeriodo")).Text;

                CustomValidator cvInicio = (CustomValidator)row.FindControl("cvDataInicio")
                , cvFim         = (CustomValidator)row.FindControl("cvDataFim")
                , cvTipoPeriodo = (CustomValidator)row.FindControl("cvTipoPeriodo")
                , cvDescricao   = (CustomValidator)row.FindControl("cvDescricao");

                int tpc_id = Convert.ToInt32(((DropDownList)row.FindControl("ddlTipoPeriodo")).SelectedValue);

                ACA_TipoPeriodoCalendario tpc = new ACA_TipoPeriodoCalendario {
                    tpc_id = tpc_id
                };
                ACA_TipoPeriodoCalendarioBO.GetEntity(tpc);

                #region Valida Campo Vazio

                if (string.IsNullOrEmpty(descricao))
                {
                    //Verifica se a mensagem ja foi mostrada
                    if (DescVazia)
                    {
                        cvDescricao.ErrorMessage = "Descrição é obrigatória.";
                        DescVazia = false;
                    }
                    cvDescricao.IsValid = false;
                    flagDesc            = false;
                }
                if (tpc_id == -1)
                {
                    //Verifica se a mensagem já foi mostrada
                    if (TipoVazio)
                    {
                        cvTipoPeriodo.ErrorMessage = "Tipo de período é obrigatório.";
                        TipoVazio = false;
                    }
                    cvTipoPeriodo.IsValid = false;
                    flagPeriodo           = false;
                }
                if (string.IsNullOrEmpty(dataI))
                {
                    //Verifica se a mensagem já foi mostrada
                    if (DataIVazia)
                    {
                        cvInicio.ErrorMessage = "Data de início é obrigatória.";
                        DataIVazia            = false;
                    }
                    cvInicio.IsValid = false;
                    flagInicio       = false;
                }
                if (string.IsNullOrEmpty(dataF))
                {
                    //Verifica se a mensagem já foi mostrada
                    if (DataFVazia)
                    {
                        cvFim.ErrorMessage = "Data de fim é obrigatória.";
                        DataFVazia         = false;
                    }
                    cvFim.IsValid = false;
                    flagFim       = false;
                }

                #endregion

                #region Valida Campos Iguais

                //Se o campo TipoPeriodo não estiver vazio valiada se existem dois ou mais períodos com o mesmo tpc_id
                if (flagPeriodo && list.FindAll(p => p.tpc_id == tpc_id).Count > 1)
                {
                    //Verifica se a mensagem já foi mostrada para um campo com este mesmo tpc_id
                    if (tipoIgual.IndexOf(tpc_id) < 0)
                    {
                        //Adiciona o tpc_id ao array dos tipos que ja mostraram mensagem
                        tipoIgual.Add(tpc_id);
                        cvTipoPeriodo.ErrorMessage = "Existem dois ou mais períodos cadastrados com o tipo de período: " + tpc.tpc_nome + ".";
                    }
                    cvTipoPeriodo.IsValid = false;
                    flagPeriodo           = false;
                }
                //Se o campo Descrição não estiver vazio valiada se existem dois ou mais períodos com a mesma descrição
                if (flagDesc && list.FindAll(p => p.cap_descricao == descricao).Count > 1)
                {
                    //Verifica se a mensagem já foi mostrada para um campo com esta mesma descrição
                    if (descricaoIgual.IndexOf(descricao) < 0)
                    {
                        //Adiciona a descrição ao array das descrições que ja mostraram mensagem
                        descricaoIgual.Add(descricao);
                        cvDescricao.ErrorMessage = "Existem dois ou mais períodos cadastrados com a descrição: " + descricao + ".";
                    }
                    cvDescricao.IsValid = false;
                    flagDesc            = false;
                }

                #endregion

                #region Valida Datas

                //Verifica se os campos de datas não estão vazios
                if (flagInicio && flagFim)
                {
                    DateTime dataInicio = Convert.ToDateTime(dataI)
                    , dataFim           = Convert.ToDateTime(dataF);

                    //Valida se a data de início está dentro do intervalo permitido
                    if (dataInicio < InicioAno || dataInicio > FimAno)
                    {
                        cvInicio.ErrorMessage = "Data de início do período " + descricao + " deve estar entre  " + InicioAno.ToShortDateString() + " - " + FimAno.ToShortDateString() + ".";
                        cvInicio.IsValid      = false;
                        flagInicio            = false;
                    }
                    //Valida se a data de fim está dentro do intervalo permitido
                    if (dataFim < InicioAno || dataFim > FimAno)
                    {
                        cvFim.ErrorMessage = "Data de fim do período " + descricao + " deve estar entre  " + InicioAno.ToShortDateString() + " - " + FimAno.ToShortDateString() + ".";
                        cvFim.IsValid      = false;
                        flagFim            = false;
                    }
                    //Se as datas ainda não foram validadas, valida se ela é maior que a data de início
                    if (flagFim && flagInicio && dataFim <= dataInicio)
                    {
                        cvFim.ErrorMessage = "Data de fim do período " + descricao + " deve ser maior que a data de início.";
                        cvFim.IsValid      = false;
                        flagFim            = false;
                    }
                }

                #endregion

                if (flag)
                {
                    flag = flagFim && flagInicio && flagPeriodo && flagDesc;
                }
            }
        }
        return(flag ? 0 : 1);
    }
示例#10
0
 /// <summary>
 /// Método alterado para que o delete não faça exclusão física e sim lógica (update).
 /// </summary>
 /// <param name="entity">Entidade ACA_TipoPeriodoCalendario</param>
 /// <returns>true = sucesso | false = fracasso</returns>
 public override bool Delete(ACA_TipoPeriodoCalendario entity)
 {
     __STP_DELETE = "NEW_ACA_TipoPeriodoCalendario_UPDATE_Situacao";
     return(base.Delete(entity));
 }
示例#11
0
 /// <summary>
 /// Método alterado para que o update não faça a alteração da data de criação
 /// </summary>
 /// <param name="entity">Entidade ACA_TipoPeriodoCalendario</param>
 /// <returns>true = sucesso | false = fracasso</returns>
 protected override bool Alterar(ACA_TipoPeriodoCalendario entity)
 {
     __STP_UPDATE = "NEW_ACA_TipoPeriodoCalendario_UPDATE";
     return(base.Alterar(entity));
 }