コード例 #1
0
        public void Salvar(IConexao conexao, DataRow registro)
        {
            IDbCommand comando = null;

            if ((registro.RowState == DataRowState.Added) || (registro.RowState == DataRowState.Modified))
            {
                comando = (registro.RowState == DataRowState.Added)
                                        ? Insert
                                        : Update;
                if (_dicionario.AutoIncremento == OpcoesAutoIncremento.Calculado)
                {
                    CalcularAutoIncremento(conexao, registro);
                }
            }
            else if (registro.RowState == DataRowState.Deleted)
            {
                comando = Delete;
            }

            if (_dicionario.AutoIncremento == OpcoesAutoIncremento.Identity)
            {
                var autoIncremento = ExecutarComandoInsertComIdentity(conexao, comando);
                AtribuirValorAutoIncremento(Incremento.Identity, item => registro[item.Nome] = autoIncremento);
            }
            else
            {
                ExecutarComando(conexao, comando);
            }
        }
コード例 #2
0
        public void Salvar(IConexao conexao, DataRow registro)
        {
            SqlCommand comando = null;

            if ((registro.RowState == DataRowState.Added) || (registro.RowState == DataRowState.Modified))
            {
                comando = (registro.RowState == DataRowState.Added)
                                        ? Insert
                                        : Update;
                if (_dicionario.AutoIncremento == OpcoesAutoIncremento.Calculado)
                {
                    CalcularAutoIncremento(conexao, registro);
                }
                CommandBuilder.SincronizarParametrosDeTodosOsCampos(_dicionario, comando, registro);
            }
            else if (registro.RowState == DataRowState.Deleted)
            {
                comando = Delete;
                registro.RejectChanges();
                CommandBuilder.SincronizarParametrosDosCamposChave(_dicionario, comando, registro);
            }

            if ((registro.RowState == DataRowState.Added) && (_dicionario.AutoIncremento == OpcoesAutoIncremento.Identity))
            {
                var autoIncremento = ExecutarComandoInsertComIdentity(conexao, comando);
                AtribuirValorAutoIncremento(Incremento.Identity, item => registro[item.Nome] = autoIncremento);
            }
            else
            {
                ExecutarComando(conexao, comando);
            }
        }
コード例 #3
0
        //-- ambiente

        public void SetAmbiente(IAmbiente ambiente)
        {
            _ambiente = ambiente ?? throw new ArgumentNullException(nameof(ambiente));
            _conexao  = ConexaoFactory.GetConexao(ambiente);
            _comando  = new Comando(ambiente.TipoDatabase);
            _migracao = new Migracao(this);
        }
コード例 #4
0
        public void Salvar(IConexao conexao, TObjeto model)
        {
            if ((model == null) || (model.EstadoEntidade == EstadosEntidade.NaoModificado))
            {
                return;
            }

            var tabela   = (conexao as ContextoFake).ConsultarTabelaDoBancoDeDadosVirtual(typeof(TObjeto));
            var registro = DataTableBuilder.ConverterItemEmDataRow(tabela, model, novoRegistro: model.EstadoEntidade == EstadosEntidade.Novo);

            switch (model.EstadoEntidade)
            {
            case EstadosEntidade.Novo:
                tabela.Rows.Add(registro);
                if (_dicionario.AutoIncremento == OpcoesAutoIncremento.Identity)
                {
                    var autoIncremento = Convert.ToInt32(registro[ConsultarColunaIdentity(tabela)]);
                    AtribuirValorAutoIncremento(Incremento.Identity, item => item.Propriedade.SetValue(model, autoIncremento, null));
                }
                break;

            case EstadosEntidade.Modificado:
                AtualizarRegistro(tabela, registro);
                break;

            case EstadosEntidade.Excluido:
                ExcluirRegistro(tabela, registro);
                break;
            }
        }
コード例 #5
0
        public void Salvar(IConexao conexao, TObjeto registro)
        {
            IDbCommand comando = null;

            if ((registro.EstadoEntidade == EstadosEntidade.Novo) || (registro.EstadoEntidade == EstadosEntidade.Modificado))
            {
                comando = (registro.EstadoEntidade == EstadosEntidade.Novo)
                                        ? Insert
                                        : Update;
                if (_dicionario.AutoIncremento == OpcoesAutoIncremento.Calculado)
                {
                    CalcularAutoIncremento(conexao, registro);
                }
            }
            else if (registro.EstadoEntidade == EstadosEntidade.Excluido)
            {
                comando = Delete;
            }

            if ((registro.EstadoEntidade == EstadosEntidade.Novo) && (_dicionario.AutoIncremento == OpcoesAutoIncremento.Identity))
            {
                var autoIncremento = ExecutarComandoInsertComIdentity(conexao, comando);
                AtribuirValorAutoIncremento(Incremento.Identity, item => item.Propriedade.SetValue(registro, autoIncremento, null));
            }
            else
            {
                ExecutarComando(conexao, comando);
            }
        }
コード例 #6
0
        public void Salvar(IConexao conexao, TObjeto registro)
        {
            SqlCommand comando = null;

            if ((registro.EstadoEntidade == EstadosEntidade.Novo) || (registro.EstadoEntidade == EstadosEntidade.Modificado))
            {
                comando = (registro.EstadoEntidade == EstadosEntidade.Novo)
                                        ? Insert
                                        : Update;
                if (_dicionario.AutoIncremento == OpcoesAutoIncremento.Calculado)
                {
                    CalcularAutoIncremento(conexao, registro);
                }
                CommandBuilder.SincronizarParametrosDeTodosOsCampos(_dicionario, comando, registro);
            }
            else if (registro.EstadoEntidade == EstadosEntidade.Excluido)
            {
                comando = Delete;
                CommandBuilder.SincronizarParametrosDosCamposChave(_dicionario, comando, registro);
            }

            if ((registro.EstadoEntidade == EstadosEntidade.Novo) && (_dicionario.AutoIncremento == OpcoesAutoIncremento.Identity))
            {
                var autoIncremento = ExecutarComandoInsertComIdentity(conexao, comando);
                AtribuirValorAutoIncremento(Incremento.Identity, item => item.Propriedade.SetValue(registro, autoIncremento, null));
            }
            else
            {
                ExecutarComando(conexao, comando);
            }

            SincronizarChaveDoPaiComOsFilhos(registro);
        }
コード例 #7
0
 private void AdicionaParametros(Cidade entity, IConexao conexao)
 {
     conexao.AdicionaParametro("COD_CIDADE", entity.CodCidade);
     conexao.AdicionaParametro("COD_ESTADO", entity.CodEstado);
     conexao.AdicionaParametro("NOME", entity.Nome);
     conexao.AdicionaParametro("IC_CAPITAL", entity.Capital);
 }
コード例 #8
0
 private void AdicionaParametros(Estado entity, IConexao conexao)
 {
     conexao.AdicionaParametro("COD_ESTADO", entity.CodEstado);
     conexao.AdicionaParametro("PAIS", entity.Pais);
     conexao.AdicionaParametro("SIGLA", entity.Sigla);
     conexao.AdicionaParametro("NOME", entity.Nome);
     conexao.AdicionaParametro("REGIAO", entity.Regiao);
 }
コード例 #9
0
        public ObterPosicoesOmnilinkJobService(IConexao conexao)
        {
            _conexao = conexao ?? throw new ArgumentNullException(nameof(conexao));

            dynamic config   = ConfigurationHelper.getConfiguration();
            var     provider = Convert.ToString(config.ConnectionStrings.DefaultConnection);

            _conexao.Configura(provider);
        }
コード例 #10
0
        public override void Salvar(IConexao conexao, object registro)
        {
            var item = registro as IEntidade;

            if (item == null)
            {
                throw new TipoDeObjetoInvalidoException(typeof(TObjeto).Name);
            }
            Atualizador.Salvar(conexao, (TObjeto)item);
            item.EstadoEntidade = EstadosEntidade.NaoModificado;
        }
コード例 #11
0
        public override void Salvar(IConexao conexao, object registro)
        {
            var item = registro as DataRow;

            if (item == null)
            {
                throw new TipoDeObjetoInvalidoException("DataRow");
            }
            Atualizador.Salvar(conexao, item);
            item.AcceptChanges();
        }
コード例 #12
0
        /// <summary>
        /// Load your modules or register your services here!
        /// </summary>
        /// <param name="kernel">The kernel.</param>
        private static void RegisterServices(IKernel kernel)
        {
            uriString = ConfigurationManager.AppSettings["SQLSERVER_URI"];
            Conexao   = FabricaConexao.Criar(uriString);

            kernel.Bind <IRepositorioUsuario>().To <RepositorioUsuario>().WithConstructorArgument("conexao", Conexao);
            kernel.Bind <IRepositorioNotaFiscal>().To <RepositorioNotaFiscal>().WithConstructorArgument("conexao", Conexao);
            kernel.Bind <IRepositorioParticipante>().To <ReposiotorioParticipante>().WithConstructorArgument("conexao", Conexao);

            kernel.Bind <IServicosUsuario>().To <ServicosUsuario>();
            kernel.Bind <IServicoNotaFiscal>().To <ServicosNotaFiscal>();
        }
コード例 #13
0
ファイル: NinjectMVC3.cs プロジェクト: yanjustino/nfe-startup
        /// <summary>
        /// Load your modules or register your services here!
        /// </summary>
        /// <param name="kernel">The kernel.</param>
        private static void RegisterServices(IKernel kernel)
        {
            uriString = ConfigurationManager.AppSettings["SQLSERVER_URI"];
            Conexao = FabricaConexao.Criar(uriString);

            kernel.Bind<IRepositorioUsuario>().To<RepositorioUsuario>().WithConstructorArgument("conexao", Conexao);
            kernel.Bind<IRepositorioNotaFiscal>().To<RepositorioNotaFiscal>().WithConstructorArgument("conexao", Conexao);
            kernel.Bind<IRepositorioParticipante>().To<ReposiotorioParticipante>().WithConstructorArgument("conexao", Conexao);

            kernel.Bind<IServicosUsuario>().To<ServicosUsuario>();
            kernel.Bind<IServicoNotaFiscal>().To<ServicosNotaFiscal>();
        }
コード例 #14
0
        public ApiControllerTest()
        {
            IConexao conexao = FabricaConexao.Criar();

            var repositorioNotaFiscal   = new RepositorioNotaFiscal(conexao);
            var repositorioParticipante = new ReposiotorioParticipante(conexao);
            var repositorioUsuario      = new RepositorioUsuario(conexao);

            IServicoNotaFiscal servico = new ServicosNotaFiscal(repositorioNotaFiscal, repositorioUsuario, repositorioParticipante);

            api = new ApiController(servico);
        }
コード例 #15
0
        public ObterVeiculosSascarJobService(IConexao conexao)
        {
            dynamic config   = ConfigurationHelper.getConfiguration();
            var     provider = Convert.ToString(config.ConnectionStrings.DefaultConnection);

            Endereco = Convert.ToString(config.Rastreadores.Sascar.Endereco);
            Usuario  = Convert.ToString(config.Rastreadores.Sascar.Usuario);
            Senha    = Convert.ToString(config.Rastreadores.Sascar.Senha);
            Ativo    = Convert.ToBoolean(config.Rastreadores.Sascar.Ativo);

            _conexao = conexao ?? throw new ArgumentNullException(nameof(conexao));
            _conexao.Configura(provider);
        }
コード例 #16
0
        private void ExecutarComando(IConexao conexao, IDbCommand comando)
        {
            if (comando == null)
            {
                return;
            }
            conexao.DefinirConexao(comando);
            var afetados = comando.ExecuteNonQuery();

            if (afetados == 0)
            {
                throw new DBConcurrencyException();
            }
        }
コード例 #17
0
        public Cidade Seleciona(int id, IConexao conexao)
        {
            conexao.AdicionaParametro("COD_CIDADE", id);
            SqlDataReader reader = conexao.ExecuteDataReader("CIDADE_SELECIONA");
            Cidade        entity = new Cidade();

            if (reader.Read())
            {
                entity.CodCidade = Convert.ToInt32(reader["COD_CIDADE"].ToString());
                entity.CodEstado = Convert.ToInt32(reader["COD_ESTADO"].ToString());
                entity.Nome      = reader["NOME"].ToString();
                entity.Capital   = Convert.ToBoolean(reader["IC_CAPITAL"]);
            }
            return(entity);
        }
コード例 #18
0
        public Estado Seleciona(int id, IConexao conexao)
        {
            conexao.AdicionaParametro("COD_ESTADO", id);
            SqlDataReader reader = conexao.ExecuteDataReader("ESTADO_SELECIONA");
            Estado        entity = new Estado();

            if (reader.Read())
            {
                entity.CodEstado = Convert.ToInt32(reader["COD_ESTADO"].ToString());
                entity.Pais      = reader["PAIS"].ToString();
                entity.Sigla     = reader["SIGLA"].ToString();
                entity.Nome      = reader["NOME"].ToString();
                entity.Regiao    = reader["REGIAO"].ToString();
            }
            return(entity);
        }
コード例 #19
0
        public ObterPosicoesAutotracJobService(IConexao conexao)
        {
            _conexao = conexao ?? throw new ArgumentNullException(nameof(conexao));

            dynamic config   = ConfigurationHelper.getConfiguration();
            var     provider = Convert.ToString(config.ConnectionStrings.DefaultConnection);

            Endereco     = Convert.ToString(config.Rastreadores.Autotrac.Endereco);
            Usuario      = Convert.ToString(config.Rastreadores.Autotrac.Usuario);
            Senha        = Convert.ToString(config.Rastreadores.Autotrac.Senha);
            ContaEmpresa = Convert.ToString(config.Rastreadores.Autotrac.Conta);
            Ativo        = Convert.ToBoolean(config.Rastreadores.Autotrac.Ativo);


            _conexao.Configura(provider);
        }
コード例 #20
0
        public List <Estado> Lista(IConexao conexao)
        {
            SqlDataReader reader  = conexao.ExecuteDataReader("ESTADO_LISTA");
            List <Estado> retorno = new List <Estado>();

            while (reader.Read())
            {
                Estado entidade = new Estado();
                entidade.CodEstado = Convert.ToInt32(reader["COD_ESTADO"].ToString());
                entidade.Nome      = reader["NOME"].ToString();
                entidade.Pais      = reader["PAIS"].ToString();
                entidade.Regiao    = reader["REGIAO"].ToString();
                entidade.Sigla     = reader["SIGLA"].ToString();
                retorno.Add(entidade);
            }
            return(retorno);
        }
コード例 #21
0
        public List <Cidade> Lista(IConexao conexao)
        {
            SqlDataReader reader  = conexao.ExecuteDataReader("CIDADE_LISTA");
            List <Cidade> retorno = new List <Cidade>();

            while (reader.Read())
            {
                Cidade entidade = new Cidade();
                entidade.CodCidade = Convert.ToInt32(reader["COD_CIDADE"].ToString());
                entidade.CodEstado = Convert.ToInt32(reader["COD_ESTADO"].ToString());
                entidade.Nome      = reader["NOME"].ToString();
                entidade.Capital   = Convert.ToBoolean(reader["IC_CAPITAL"]);
                retorno.Add(entidade);
            }

            return(retorno);
        }
コード例 #22
0
        private void CalcularAutoIncremento(IConexao conexao, DataRow registro)
        {
            var valor = _ultimoIncremento;

            if (!valor.HasValue)
            {
                conexao.DefinirConexao(AutoIncremento);
                valor = Convert.ToInt32(AutoIncremento.ExecuteScalar());
            }

            AtribuirValorAutoIncremento(Incremento.Calculado, item => registro[item.Nome] = valor);

            if (_dicionario.QuantidadeCamposNaChave == 1)
            {
                _ultimoIncremento = valor + 1;
            }
        }
コード例 #23
0
        private void CalcularAutoIncremento(IConexao conexao, DataRow registro)
        {
            var valor = _ultimoIncremento;

            if (!valor.HasValue)
            {
                CommandBuilder.SincronizarParametrosDosCamposChaveQueNaoSaoAutoIncremento(_dicionario, AutoIncremento, registro);
                conexao.DefinirConexao(AutoIncremento);
                valor = Convert.ToInt32(AutoIncremento.ExecuteScalar());
            }

            AtribuirValorAutoIncremento(Incremento.Calculado, item => registro[item.Nome] = valor);

            if (_dicionario.QuantidadeCamposNaChave == 1)
            {
                _ultimoIncremento = valor + 1;
            }
        }
コード例 #24
0
        private void CalcularAutoIncremento(IConexao conexao, TObjeto registro)
        {
            var valor = _ultimoIncremento;

            if (!valor.HasValue)
            {
                var comando = AutoIncremento;
                conexao.DefinirConexao(comando);
                valor = Convert.ToInt32(comando.ExecuteScalar());
            }

            AtribuirValorAutoIncremento(Incremento.Calculado, item => item.Propriedade.SetValue(registro, valor, null));

            if (_dicionario.QuantidadeCamposNaChave == 1)
            {
                _ultimoIncremento = valor + 1;
            }
        }
コード例 #25
0
        private void CalcularAutoIncremento(IConexao conexao, TObjeto registro)
        {
            var valor = _ultimoIncremento;

            if (!valor.HasValue)
            {
                var comando = AutoIncremento;
                if (string.IsNullOrEmpty(comando.CommandText))
                {
                    throw new NaoFoiPossivelLocalizarScriptParaCalculoDoAutoIncrementoException(_dicionario.Nome);
                }
                CommandBuilder.SincronizarParametrosDosCamposChaveQueNaoSaoAutoIncremento(_dicionario, comando, registro);
                conexao.DefinirConexaoTransacionada(comando);
                valor = Convert.ToInt32(comando.ExecuteScalar());
            }

            AtribuirValorAutoIncremento(Incremento.Calculado, item => item.Propriedade.SetValue(registro, valor, null));

            if (_dicionario.QuantidadeCamposNaChave == 1)
            {
                _ultimoIncremento = valor + 1;
            }
        }
コード例 #26
0
        public void Salvar(IConexao conexao, DataRow registro)
        {
            if ((registro == null) || (registro.RowState == DataRowState.Unchanged) || (registro.RowState == DataRowState.Detached))
            {
                return;
            }

            var tabela = (conexao as ContextoFake).ConsultarTabelaDoBancoDeDadosVirtual(typeof(TObjeto));

            switch (registro.RowState)
            {
            case DataRowState.Added:
                tabela.Rows.Add(registro);
                break;

            case DataRowState.Modified:
                AtualizarRegistro(tabela, registro);
                break;

            case DataRowState.Deleted:
                ExcluirRegistro(tabela, registro);
                break;
            }
        }
コード例 #27
0
 //Construtor da classe RastreamentoController
 public RastreamentoController(IConexao conexao)
 {
     _conexao = conexao;
 }
コード例 #28
0
 public PessoaRepository(IConexao conexao)
 {
     this.Conexao = conexao;
 }
コード例 #29
0
 //Construtor da classe RastreamentoController
 public FreteController(IConexao conexao)
 {
     _conexao = conexao;
 }
コード例 #30
0
 private int ExecutarComandoInsertComIdentity(IConexao conexao, IDbCommand comando)
 {
     conexao.DefinirConexao(comando);
     return(Convert.ToInt32(comando.ExecuteScalar()));
 }
コード例 #31
0
 public TarefaRepositorio(IConexao conexao)
 {
     _conexao = conexao;
 }