Example #1
0
 public ActionResult Editar(HabilitacaoEmissaoPTV habilitacao)
 {
     _bus.Salvar(habilitacao);
     return(Json(new { @EhValido = Validacao.EhValido, @Erros = Validacao.Erros, @Url = Url.Action("Index", "HabilitacaoEmissaoPTV") + "?Msg=" + Validacao.QueryParam() }));
 }
Example #2
0
        private void Editar(HabilitacaoEmissaoPTV habilitacao, BancoDeDados banco = null)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                Comando comando = bancoDeDados.CriarComando(@"
				update tab_hab_emi_ptv set tid = :tid, situacao = :situacao, funcionario = :funcionario, arquivo = :arquivo, numero_habilitacao = :numero_habilitacao, rg = :rg, numero_matricula = :numero_matricula, 
				profissao = :profissao, orgao_classe = :orgao_classe, registro_orgao_classe = :registro_orgao_classe, uf_habilitacao = :uf_habilitacao, numero_visto_crea = :numero_visto_crea, 
				numero_crea = :numero_crea, telefone_comercial = :telefone_comercial, telefone_residencial = :telefone_residencial, telefone_celular = :telefone_celular, cep = :cep, logradouro = :logradouro, 
				bairro_gleba = :bairro_gleba, estado = :estado, municipio = :municipio, numero = :numero, distrito_localidade = :distrito_localidade, complemento = :complemento 
				where id = :id"                , EsquemaBanco);

                comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                comando.AdicionarParametroEntrada("situacao", habilitacao.SituacaoId, DbType.Int32);
                comando.AdicionarParametroEntrada("funcionario", habilitacao.Funcionario.Id > 0 ? habilitacao.Funcionario.Id : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("arquivo", habilitacao.Arquivo.Id > 0 ? habilitacao.Arquivo.Id : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("numero_habilitacao", habilitacao.NumeroHabilitacao, DbType.String);
                comando.AdicionarParametroEntrada("rg", habilitacao.RG, DbType.String);
                comando.AdicionarParametroEntrada("numero_matricula", habilitacao.NumeroMatricula, DbType.String);
                comando.AdicionarParametroEntrada("profissao", habilitacao.Profissao.Id > 0 ? habilitacao.Profissao.Id : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("orgao_classe", habilitacao.Profissao.OrgaoClasseId > 0 ? habilitacao.Profissao.OrgaoClasseId : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("registro_orgao_classe", habilitacao.Profissao.Registro, DbType.String);
                comando.AdicionarParametroEntrada("uf_habilitacao", habilitacao.EstadoRegistro > 0 ? habilitacao.EstadoRegistro : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("numero_visto_crea", DbType.String, 12, habilitacao.NumeroVistoCREA);
                comando.AdicionarParametroEntrada("numero_crea", DbType.String, 12, habilitacao.NumeroCREA);
                comando.AdicionarParametroEntrada("telefone_comercial", habilitacao.TelefoneComercial, DbType.String);
                comando.AdicionarParametroEntrada("telefone_residencial", habilitacao.TelefoneResidencial, DbType.String);
                comando.AdicionarParametroEntrada("telefone_celular", habilitacao.TelefoneCelular, DbType.String);
                comando.AdicionarParametroEntrada("cep", habilitacao.Endereco.Cep, DbType.String);
                comando.AdicionarParametroEntrada("logradouro", habilitacao.Endereco.Logradouro, DbType.String);
                comando.AdicionarParametroEntrada("bairro_gleba", habilitacao.Endereco.Bairro, DbType.String);
                comando.AdicionarParametroEntrada("estado", habilitacao.Endereco.EstadoId > 0 ? habilitacao.Endereco.EstadoId : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("municipio", habilitacao.Endereco.MunicipioId > 0 ? habilitacao.Endereco.MunicipioId : (object)DBNull.Value, DbType.Int32);
                comando.AdicionarParametroEntrada("numero", habilitacao.Endereco.Numero, DbType.String);
                comando.AdicionarParametroEntrada("distrito_localidade", habilitacao.Endereco.DistritoLocalizacao, DbType.String);
                comando.AdicionarParametroEntrada("complemento", habilitacao.Endereco.Complemento, DbType.String);
                comando.AdicionarParametroEntrada("id", habilitacao.Id, DbType.Int32);

                bancoDeDados.ExecutarNonQuery(comando);

                comando = bancoDeDados.CriarComando(@"delete from tab_hab_emi_ptv_operador ", EsquemaBanco);
                comando.DbCommand.CommandText += String.Format("where habilitacao = :habilitacao {0}", comando.AdicionarNotIn("and", "id", DbType.Int32, habilitacao.Operadores.Select(x => x.Id).ToList()));
                comando.AdicionarParametroEntrada("habilitacao", habilitacao.Id, DbType.Int32);
                bancoDeDados.ExecutarNonQuery(comando);

                habilitacao.Operadores.ForEach(operador =>
                {
                    if (operador.Id <= 0)
                    {
                        comando = bancoDeDados.CriarComando(@"insert into tab_hab_emi_ptv_operador (id, tid, habilitacao, funcionario) 
						values (seq_tab_hab_emi_ptv_operador.nextval, :tid, :habilitacao, :funcionario)"                        , EsquemaBanco);
                        comando.AdicionarParametroEntrada("habilitacao", habilitacao.Id, DbType.Int32);
                    }
                    else
                    {
                        comando = bancoDeDados.CriarComando(@"update tab_hab_emi_ptv_operador set funcionario =:funcionario, tid =:tid where id = :id", EsquemaBanco);
                        comando.AdicionarParametroEntrada("id", operador.Id, DbType.Int32);
                    }

                    comando.AdicionarParametroEntrada("funcionario", operador.FuncionarioId > 0 ? operador.FuncionarioId : (object)DBNull.Value, DbType.Int32);
                    comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());

                    bancoDeDados.ExecutarNonQuery(comando);
                });

                Historico.Gerar(habilitacao.Id, eHistoricoArtefato.habilitacaoemissaoptv, eHistoricoAcao.atualizar, bancoDeDados);

                bancoDeDados.Commit();
            }
        }
Example #3
0
        public HabilitacaoEmissaoPTV Obter(int id)
        {
            HabilitacaoEmissaoPTV retorno = null;

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia())
            {
                Comando comando = bancoDeDados.CriarComando(@"select t.id, t.tid, t.situacao, t.funcionario, f.nome funcionario_nome, f.cpf funcionario_cpf, t.arquivo, t.numero_habilitacao, 
				t.rg, t.numero_matricula, t.profissao, p.texto profissao_texto, t.orgao_classe, t.registro_orgao_classe, t.uf_habilitacao, t.numero_visto_crea, t.numero_crea, t.telefone_comercial, 
				t.telefone_residencial, t.telefone_celular, t.cep, t.logradouro, t.bairro_gleba, t.estado, t.municipio, t.numero, t.distrito_localidade, t.complemento 
				from tab_hab_emi_ptv t, tab_funcionario f, tab_profissao p where f.id = t.funcionario and p.id(+) = t.profissao and t.id = :id"                , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", id, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    while (reader.Read())
                    {
                        retorno                              = new HabilitacaoEmissaoPTV();
                        retorno.Id                           = id;
                        retorno.Tid                          = reader.GetValue <string>("tid");
                        retorno.SituacaoId                   = reader.GetValue <int>("situacao");
                        retorno.Funcionario.Id               = reader.GetValue <int>("funcionario");
                        retorno.Funcionario.Nome             = reader.GetValue <string>("funcionario_nome");
                        retorno.Funcionario.Cpf              = reader.GetValue <string>("funcionario_cpf");
                        retorno.Arquivo.Id                   = reader.GetValue <int>("arquivo");
                        retorno.NumeroHabilitacao            = reader.GetValue <string>("numero_habilitacao");
                        retorno.RG                           = reader.GetValue <string>("rg");
                        retorno.NumeroMatricula              = reader.GetValue <string>("numero_matricula");
                        retorno.Profissao.Id                 = reader.GetValue <int>("profissao");
                        retorno.Profissao.ProfissaoTexto     = reader.GetValue <string>("profissao_texto");
                        retorno.Profissao.OrgaoClasseId      = reader.GetValue <int>("orgao_classe");
                        retorno.Profissao.Registro           = reader.GetValue <string>("registro_orgao_classe");
                        retorno.EstadoRegistro               = reader.GetValue <int>("uf_habilitacao");
                        retorno.NumeroVistoCREA              = reader.GetValue <string>("numero_visto_crea");
                        retorno.NumeroCREA                   = reader.GetValue <string>("numero_crea");
                        retorno.Endereco.Cep                 = reader.GetValue <string>("cep");
                        retorno.Endereco.Logradouro          = reader.GetValue <string>("logradouro");
                        retorno.Endereco.Bairro              = reader.GetValue <string>("bairro_gleba");
                        retorno.Endereco.EstadoId            = reader.GetValue <int>("estado");
                        retorno.Endereco.MunicipioId         = reader.GetValue <int>("municipio");
                        retorno.Endereco.Numero              = reader.GetValue <string>("numero");
                        retorno.Endereco.Complemento         = reader.GetValue <string>("complemento");
                        retorno.Endereco.DistritoLocalizacao = reader.GetValue <string>("distrito_localidade");

                        if (!string.IsNullOrEmpty(reader.GetValue <string>("telefone_comercial")))
                        {
                            retorno.Telefones.Add(new Contato()
                            {
                                TipoContato = eTipoContato.TelefoneComercial, Valor = reader.GetValue <string>("telefone_comercial")
                            });
                        }

                        if (!string.IsNullOrEmpty(reader.GetValue <string>("telefone_residencial")))
                        {
                            retorno.Telefones.Add(new Contato()
                            {
                                TipoContato = eTipoContato.TelefoneResidencial, Valor = reader.GetValue <string>("telefone_residencial")
                            });
                        }

                        if (!string.IsNullOrEmpty(reader.GetValue <string>("telefone_celular")))
                        {
                            retorno.Telefones.Add(new Contato()
                            {
                                TipoContato = eTipoContato.TelefoneCelular, Valor = reader.GetValue <string>("telefone_celular")
                            });
                        }
                    }
                    reader.Close();
                }

                retorno.Operadores = ObterOperadores(retorno.Id);
            }

            return(retorno);
        }
        internal bool Salvar(HabilitacaoEmissaoPTV habilitacao)
        {
            if (habilitacao.Funcionario.Id <= 0)
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.VerificarCPFObrigatorio);
                return(false);
            }

            if (string.IsNullOrEmpty(habilitacao.NumeroHabilitacao))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroHabilitacaoObrigatorio);
            }
            else
            {
                if (habilitacao.NumeroHabilitacao.Length != 8)
                {
                    Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroHabilitacaoInvalido);
                }
                else if (_da.ExisteNumeroHabilitacao(habilitacao.NumeroHabilitacao, habilitacao.Funcionario.Id))
                {
                    Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroHabilitacaoJaExiste);
                }
            }

            if (string.IsNullOrEmpty(habilitacao.RG))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.RGObrigatorio);
            }

            if (string.IsNullOrEmpty(habilitacao.NumeroMatricula))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumberoMatriculaObrigatorio);
            }
            else if (habilitacao.NumeroMatricula.Length != 7)
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumberoMatriculaInvalido);
            }

            if (habilitacao.EstadoRegistro <= 0)
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.UFHabilitacaoObrigatorio);
            }
            else
            {
                ListaBus _busLista = new ListaBus();
                Estado   estado    = _busLista.Estados.SingleOrDefault(x => String.Equals(x.Texto, _configSys.Obter <String>(ConfiguracaoSistema.KeyEstadoDefault), StringComparison.InvariantCultureIgnoreCase)) ?? new Estado();

                if (habilitacao.EstadoRegistro != estado.Id)
                {
                    if (string.IsNullOrEmpty(habilitacao.NumeroVistoCREA))
                    {
                        Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroVistoCREAObrigatorio);
                    }
                }
                else
                {
                    if (string.IsNullOrEmpty(habilitacao.NumeroCREA))
                    {
                        Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroCREAObrigatorio);
                    }
                }
            }

            if (string.IsNullOrEmpty(habilitacao.TelefoneResidencial) && string.IsNullOrEmpty(habilitacao.TelefoneCelular) && string.IsNullOrEmpty(habilitacao.TelefoneComercial))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.MeioContatoObrigatorio);
            }

            if (string.IsNullOrEmpty(habilitacao.Endereco.Logradouro))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.LogradouroObrigatorio);
            }

            if (string.IsNullOrEmpty(habilitacao.Endereco.Bairro))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.BairroObrigatorio);
            }

            if (habilitacao.Endereco.EstadoId <= 0)
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.UFObrigatorio);
            }

            if (habilitacao.Endereco.MunicipioId <= 0)
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.MunicipioObrigatorio);
            }

            if (string.IsNullOrEmpty(habilitacao.Endereco.Numero))
            {
                Validacao.Add(Mensagem.HabilitacaoEmissaoPTV.NumeroObrigatorio);
            }

            return(Validacao.EhValido);
        }