Exemple #1
0
        /// <summary>
        /// Altera as Informações do document.
        /// </summary>
        /// <param name="obj">obj que contem as informações para serem alteradas</param>
        /// <returns>true ou false</returns>
        public bool Update(mLegislacao obj)
        {
            string sqlcommand = @"UPDATE [Legislacao] SET [Tipo] = @Tipo, [Numero] = @Numero, [Complemento] = @Complemento, [Data] = @Data, [Publicado] = @Publicado, [Resumo] = @Resumo, [Classificado] = @Classificado, [Link] = @Link, [Situacao] = @Situacao, [Origem] = @Origem, [Autor] = @Autor, [Cadastro] = @Cadastro, [Atualizado] = @Atualizado,  [Excluido] = @Excluido WHERE ([Indice] = @Original_Indice)";

            Sim.Data.IData AcessarDados = Sim.Data.Instances.DataM();

            try
            {
                AcessarDados.ClearParameters();
                AcessarDados.AddParameters("@Tipo", obj.Tipo);
                AcessarDados.AddParameters("@Numeo", obj.Numero);
                AcessarDados.AddParameters("@Complemento", obj.Complemento);
                AcessarDados.AddParameters("@Data", obj.Data);
                AcessarDados.AddParameters("@Publicado", obj.Publicado);
                AcessarDados.AddParameters("@Resumo", obj.Resumo);
                AcessarDados.AddParameters("@Classificado", obj.Classificacao);
                AcessarDados.AddParameters("@Link", obj.Link);
                AcessarDados.AddParameters("@Situacao", obj.Situacao);
                AcessarDados.AddParameters("@Origem", obj.Origem);
                AcessarDados.AddParameters("@Autor", obj.Autor);
                AcessarDados.AddParameters("@Cadastro", obj.Cadastro);
                AcessarDados.AddParameters("@Atualizado", obj.Atualizado.ToShortDateString());
                AcessarDados.AddParameters("@Excluido", obj.Excluido);

                AcessarDados.AddParameters("@Original_Indice", obj.Indice);

                return(AcessarDados.Write(sqlcommand));
            }
            catch (Exception ex)
            {
                return(false);

                throw new Exception(ex.Message);
            }
            finally
            {
                AcessarDados = null;
            }
        }
        /// <summary>
        /// Apaga uma ação da tabela legislacaoacoes
        /// verifica o objeto alvo da ação a ser apagada na tabela legislacaoacoes
        /// se tiver somente uma (1) acao sofrida, altera a situacao na tabela legislacao,
        /// se tivser mais de uma (1), mantem a situacao do documento alvo na tabela legislacao.
        /// retorna uma lista atualizada das acoes restantes ref. ao objeto consultante
        /// </summary>
        /// <param name="obj">objeto acoes</param>
        /// <returns>true ou false</returns>
        public List <mAcoes> DelAcao(mAcoes obj)
        {
            string sqlcommand = @"DELETE FROM Leg_Acoes WHERE (Indice = @Indice)";

            Sim.Data.IData AcoesDados = Sim.Data.Instances.DataM();

            try
            {
                var upSituacao = Sim.Data.Instances.DataM();

                string novaSituacao = obj.Acao;

                string sqlcommandRollbackSituacao = @"SELECT * FROM Leg_Acoes WHERE (TipoAlvo = @TipoAlvo) AND (NumeroAlvo = @NumeroAlvo) AND (ComplementoAlvo = @CompAlvo) AND (DataAlvo = @DataAlvo)";

                upSituacao.ClearParameters();

                upSituacao.AddParameters("@TipoAlvo", obj.TipoAlvo);
                upSituacao.AddParameters("@NumeroAlvo", obj.NumeroAlvo);
                upSituacao.AddParameters("@CompAlvo", obj.ComplementoAlvo);
                upSituacao.AddParameters("@DataAlvo", obj.DataAlvo.ToShortDateString());

                if (upSituacao.Read(sqlcommandRollbackSituacao).Rows.Count == 1)
                {
                    novaSituacao = "1";

                    string sqlcommandUpdateSituacao = @"UPDATE [Legislacao] SET [Situacao] = @Situacao WHERE (Tipo = @TipoAlvo) AND (Numero = @NumeroAlvo) AND (Complemento = @CompAlvo) AND (Data = @DataAlvo)";

                    upSituacao.ClearParameters();

                    upSituacao.AddParameters("@Situacao", novaSituacao);
                    upSituacao.AddParameters("@TipoAlvo", obj.TipoAlvo);
                    upSituacao.AddParameters("@NumeroAlvo", obj.NumeroAlvo);
                    upSituacao.AddParameters("@CompAlvo", obj.ComplementoAlvo);
                    upSituacao.AddParameters("@DataAlvo", obj.DataAlvo.ToShortDateString());

                    upSituacao.Write(sqlcommandUpdateSituacao);
                }

                AcoesDados.ClearParameters();

                AcoesDados.AddParameters("@Indice", obj.Indice);

                var    listaAcoes      = new List <mAcoes>();
                string sqlCommandAcoes = @"SELECT * FROM Leg_Acoes WHERE(TipoOrigem LIKE @Tipo) AND (NumeroOrigem = @Numero) AND (ComplementoOrigem LIKE @Comp)";

                if (AcoesDados.Write(sqlcommand))
                {
                    AcoesDados.ClearParameters();
                    AcoesDados.AddParameters("@Tipo", obj.TipoOrigem);
                    AcoesDados.AddParameters("@Numero", obj.NumeroOrigem);
                    AcoesDados.AddParameters("@Comp", obj.ComplementoOrigem);

                    foreach (DataRow ac in AcoesDados.Read(sqlCommandAcoes).Rows)
                    {
                        var acoes = new mAcoes();
                        acoes.Indice          = (int)ac["Indice"];
                        acoes.TipoAlvo        = ac["TipoAlvo"].ToString();
                        acoes.NumeroAlvo      = (int)ac["NumeroAlvo"];
                        acoes.ComplementoAlvo = ac["ComplementoAlvo"].ToString();
                        acoes.DataAlvo        = (DateTime)ac["DataAlvo"];
                        acoes.Acao            = new mAcoesExercidas().Exercidas((int)(ac["AcaoExecutada"]));
                        listaAcoes.Add(acoes);
                    }
                }

                return(listaAcoes);
            }
            catch (Exception ex)
            {
                return(null);

                throw new Exception(ex.Message);
            }
            finally
            {
                AcoesDados = null;
            }
        }