public static ClienteAutorizacaoInfo ReceberAutorizacoesCadastrais(int IdCliente)
        {
            var resposta = new ClienteAutorizacaoInfo();

            ConexaoDbHelper lAcessaDados = new ConexaoDbHelper();

            lAcessaDados.ConnectionStringName = gNomeConexaoCadastro;

            using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "cliente_autorizacoes_sel_sp"))
            {
                lAcessaDados.AddInParameter(lDbCommand, "id_cliente", DbType.Int32, IdCliente);

                DataTable lDataTable = lAcessaDados.ExecuteDbDataTable(lDbCommand);

                if (lDataTable != null)
                {
                    for (int i = 0; i <= lDataTable.Rows.Count - 1; i++)
                    {
                        resposta = CriarAutorizacaoInfo(lDataTable.Rows[i]);
                    }
                }
            }

            return(resposta);
        }
        public static ClienteAutorizacaoInfo SalvarAutorizacaoCadastralImportacao(DbTransaction lTrans, ClienteAutorizacaoInfo pParametros)
        {
            var lRetorno = new ClienteAutorizacaoInfo();

            var lAcessaDados = new ConexaoDbHelper();

            lAcessaDados.ConnectionStringName = gNomeConexaoCadastro;

            using (var lDbCommand = lAcessaDados.CreateCommand(lTrans, CommandType.StoredProcedure, "cliente_autorizacoes_ins_importacao_sp"))
            {
                lAcessaDados.AddInParameter(lDbCommand, "@id_cliente", DbType.Int32, pParametros.IdCliente);
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_d1", DbType.Int32, pParametros.IdLogin_D1);
                lAcessaDados.AddInParameter(lDbCommand, "@dt_autorizacao_d1", DbType.DateTime, pParametros.DataAutorizacao_D1);
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_d2", DbType.Int32, pParametros.IdLogin_D2);
                lAcessaDados.AddInParameter(lDbCommand, "@dt_autorizacao_d2", DbType.DateTime, pParametros.DataAutorizacao_D2);
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_p1", DbType.Int32, pParametros.IdLogin_P1);
                lAcessaDados.AddInParameter(lDbCommand, "@dt_autorizacao_p1", DbType.DateTime, pParametros.DataAutorizacao_P1);
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_p2", DbType.Int32, pParametros.IdLogin_P2);
                lAcessaDados.AddInParameter(lDbCommand, "@dt_autorizacao_p2", DbType.DateTime, pParametros.DataAutorizacao_P2);
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_t1", DbType.Int32, pParametros.IdLogin_T1);
                lAcessaDados.AddInParameter(lDbCommand, "@dt_autorizacao_t1", DbType.DateTime, pParametros.DataAutorizacao_T1);
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_t2", DbType.Int32, pParametros.IdLogin_T2);
                lAcessaDados.AddInParameter(lDbCommand, "@dt_autorizacao_t2", DbType.DateTime, pParametros.DataAutorizacao_T2);
                lAcessaDados.AddInParameter(lDbCommand, "@st_autorizado", DbType.String, pParametros.StAutorizado);

                lAcessaDados.ExecuteNonQuery(lDbCommand, lTrans);

                lRetorno = pParametros;
            }

            return(lRetorno);
        }
        public static ClienteAutorizacaoInfo SalvarAutorizacaoCadastral(ClienteAutorizacaoInfo pParametros)
        {
            var lRetorno = new ClienteAutorizacaoInfo();

            var lAcessaDados = new ConexaoDbHelper();

            lAcessaDados.ConnectionStringName = gNomeConexaoCadastro;

            using (var lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "cliente_autorizacoes_ins_sp"))
            {
                lAcessaDados.AddInParameter(lDbCommand, "@id_cliente", DbType.Int32, pParametros.IdCliente);
                lAcessaDados.AddInParameter(lDbCommand, "@tipo", DbType.Int16, pParametros.IdLogin_D1);                     //sempre esse campo para o tipo
                lAcessaDados.AddInParameter(lDbCommand, "@numero", DbType.Int16, pParametros.IdLogin_D2);                   //sempre esse campo para o numero
                lAcessaDados.AddInParameter(lDbCommand, "@id_login_autorizador", DbType.Int32, pParametros.IdLogin_P1);     //sempre esse campo para o login auth
                lAcessaDados.AddOutParameter(lDbCommand, "@status_final", DbType.String, 1);

                lAcessaDados.ExecuteNonQuery(lDbCommand);

                lRetorno = pParametros;

                object lStat = lDbCommand.Parameters[4].Value;

                if (lStat != DBNull.Value)
                {
                    lRetorno.StAutorizado = Convert.ToString(lDbCommand.Parameters[4].Value);
                }
            }

            return(lRetorno);
        }
Beispiel #4
0
        /// <summary>
        /// Método responsável por Inserir Cliente com todos os dados
        /// </summary>
        /// <DataCriacao>14/05/2010</DataCriacao>
        /// <Autor>Gustavo Malta Guimarães</Autor>
        /// <Alteracao>
        ///     <DataAlteracao></DataAlteracao>
        ///     <Autor></Autor>
        ///     <Motivo></Motivo>
        /// </Alteracao>
        /// <param name="pLogin">Login</param>
        /// <param name="pCliente">Cliente</param>
        /// <param name="pTelefone">Lista de Telefones</param>
        /// <param name="pEndereco">Lista de Endereços</param>
        /// <param name="pContaBancaria">Lista de Contas Bancárias</param>
        /// <param name="pConta">Lista de Contas</param>
        /// <param name="pDiretor">Lista de Diretores</param>
        /// <param name="pEmitente">Lista de Emitentes</param>
        /// <param name="pSfp">Situação Financeira Patrimonial</param>
        public int InserirCliente
            (Boolean pStReimportacao
            , LoginInfo pLogin
            , ClienteInfo pCliente
            , List <ClienteTelefoneInfo> pTelefone
            , List <ClienteEnderecoInfo> pEndereco
            , List <ClienteBancoInfo> pContaBancaria
            , List <ClienteContaInfo> pConta
            , List <ClienteDiretorInfo> pDiretor
            , List <ClienteEmitenteInfo> pEmitente
            , ClienteSituacaoFinanceiraPatrimonialInfo pSfp)
        {
            //Criar Transação
            DbConnection  conn;
            DbTransaction trans;

            Conexao._ConnectionStringName = gNomeConexaoSql;
            conn = Conexao.CreateIConnection();
            conn.Open();
            trans = conn.BeginTransaction();

            try
            {
                Nullable <int> lIdClienteAntigo = null;

                Nullable <int> lIdLoginAntigo = null;

                ClienteNaoOperaPorContaPropriaInfo lClienteOperaContaPropria = null;

                List <ClientePendenciaCadastralInfo> lPendenciasCad = null;

                List <ClienteContratoInfo> lContratosCliente = null;

                List <LogIntranetInfo> lLogsIntranet = null;

                LoginInfo lLoginReimportacao = null;

                ClienteAutorizacaoInfo lAutorizacao = null;

                if (pStReimportacao)
                {
                    //-->> Consultar pendencias cadastrais do cliente.
                    ClienteDbLib.SelecionaClientePorDataNacCpfCnpj(new RemoverEntidadeRequest <ClienteInfo>()
                    {
                        Objeto = pCliente
                    });

                    lIdClienteAntigo = pCliente.IdCliente;

                    lIdLoginAntigo = pLogin.IdLogin;

                    //-->> Recupera as informações de contratos de clientes
                    lContratosCliente = ClienteDbLib.ConsultarClienteContrato(pCliente.IdCliente.Value);

                    //--> consulta pendencias cadastrais para posteriormente inserir novamente
                    lPendenciasCad = ClienteDbLib.ListarClientePendenciaCadastral(pCliente.IdCliente.Value);

                    //--> consulta para ver se o cliente opera por conta Própria
                    lClienteOperaContaPropria = ClienteDbLib.ConsultarClienteNaoOperaPorContaPropria(pCliente.IdCliente.Value);

                    if (lClienteOperaContaPropria.IdCliente == 0)
                    {
                        lClienteOperaContaPropria = null;
                    }

                    //-->> Recupera as informações de log na intranet para depois ser inseridas novamente com o id_login novo
                    lLogsIntranet = ClienteDbLib.ConsultarLogsClientes(pCliente.IdLogin.Value);

                    //-->> Recupera as informações de login do usuario reimportado
                    lLoginReimportacao = ClienteDbLib.ReceberLogin(pCliente.DsCpfCnpj, pCliente.DtNascimentoFundacao.Value);

                    //-->> Recupera as informações de autorizações do cliente, caso haja alguma
                    lAutorizacao = ClienteDbLib.ReceberAutorizacoesCadastrais(pCliente.IdCliente.Value);

                    //--> Verifica a necessidade de exclusão do cliente antes de iserrir
                    ClienteDbLib.RemoverCliente(trans, new RemoverEntidadeRequest <ClienteInfo>()
                    {
                        Objeto = pCliente
                    });
                }

                //Inserir Login
                SalvarObjetoRequest <LoginInfo> lLogin = new SalvarObjetoRequest <LoginInfo>();

                lLogin.Objeto  = (pStReimportacao) ? lLoginReimportacao : pLogin;
                pLogin.IdLogin = ClienteDbLib.SalvarLogin(trans, lLogin, false).Codigo;

                //Colocar idLogin no cliente
                pCliente.IdLogin = pLogin.IdLogin.Value;

                //Inserir Cliente
                SalvarObjetoRequest <ClienteInfo> lCliente = new SalvarObjetoRequest <ClienteInfo>();
                lCliente.Objeto = pCliente;

                if (lClienteOperaContaPropria != null)
                {
                    lCliente.Objeto.DadosClienteNaoOperaPorContaPropria = lClienteOperaContaPropria;
                }
                else
                {
                    lCliente.Objeto.DadosClienteNaoOperaPorContaPropria = null; //--> Este dado não existe no Sinacor, portanto não deve ser informado.
                }



                pCliente.IdCliente = ClienteDbLib.SalvarCliente(trans, lCliente, false, pStReimportacao).Codigo;

                //Faz o swap de cliente no suitability
                if (pStReimportacao && lIdClienteAntigo != null)
                {
                    ClienteDbLib.SalvarImportacaoSuitability(lIdClienteAntigo.Value, pCliente.IdCliente.Value, trans);

                    if (lPendenciasCad != null && lPendenciasCad.Count > 0)
                    {
                        lPendenciasCad.ForEach(pend =>
                        {
                            ClientePendenciaCadastralInfo lPendencia = new ClientePendenciaCadastralInfo();

                            lPendencia = pend;

                            lPendencia.IdCliente = pCliente.IdCliente;

                            lPendencia.IdPendenciaCadastral = null;

                            lPendencia.IdLoginRealizacao = null;

                            ClienteDbLib.SalvarClientePendenciaCadastral(trans, lPendencia);
                        });
                    }
                }

                //--> Verifica se o cliente preencheu o contrato de
                //--> legislação anteriormente e salva com o código novo do cliente
                if (lContratosCliente != null && lContratosCliente.Count > 0)
                {
                    lContratosCliente.ForEach(contrato =>
                    {
                        ClienteContratoInfo lContrato = new ClienteContratoInfo();

                        lContrato.IdCliente = pCliente.IdCliente;

                        lContrato.IdContrato = contrato.IdContrato;

                        lContrato.DtAssinatura = contrato.DtAssinatura;

                        ClienteDbLib.SalvarImportacaoClienteContrato(trans, lContrato);
                    });
                }

                //--> Verifica se há logs na intranet do cliente para gravar novamente
                if (lLogsIntranet != null && lLogsIntranet.Count > 0)
                {
                    lLogsIntranet.ForEach(log => {
                        LogIntranetInfo lLog = new LogIntranetInfo();

                        lLog = log;

                        lLog.IdLogin = pCliente.IdLogin.Value;

                        lLog.DsObservacao += string.Concat(" ", lLog.IdLogin);

                        ClienteDbLib.RegistrarLog(trans, lLog);
                    });
                }

                //--> Insere novamente a autorização, se houver
                if (lAutorizacao != null && lAutorizacao.StAutorizado != null)
                {
                    lAutorizacao.IdCliente = pCliente.IdCliente.Value;
                    ClienteDbLib.SalvarAutorizacaoCadastralImportacao(trans, lAutorizacao);
                }

                //colocar idCliente nas outras entidades
                //Inserir outras entidades
                SalvarObjetoRequest <ClienteTelefoneInfo> lTelefone;
                foreach (ClienteTelefoneInfo item in pTelefone)
                {
                    item.IdCliente   = pCliente.IdCliente.Value;
                    lTelefone        = new SalvarObjetoRequest <ClienteTelefoneInfo>();
                    lTelefone.Objeto = item;
                    ClienteDbLib.SalvarClienteTelefone(trans, lTelefone);
                }

                SalvarObjetoRequest <ClienteEnderecoInfo> lEndereco;
                foreach (ClienteEnderecoInfo item in pEndereco)
                {
                    item.IdCliente   = pCliente.IdCliente.Value;
                    lEndereco        = new SalvarObjetoRequest <ClienteEnderecoInfo>();
                    lEndereco.Objeto = item;
                    ClienteDbLib.SalvarClienteEndereco(trans, lEndereco);
                }

                SalvarObjetoRequest <ClienteBancoInfo> lBanco;
                foreach (ClienteBancoInfo item in pContaBancaria)
                {
                    item.IdCliente = pCliente.IdCliente.Value;
                    lBanco         = new SalvarObjetoRequest <ClienteBancoInfo>();
                    lBanco.Objeto  = item;
                    ClienteDbLib.SalvarClienteBanco(trans, lBanco);
                }

                SalvarObjetoRequest <ClienteContaInfo> lConta;
                foreach (ClienteContaInfo item in pConta)
                {
                    item.IdCliente = pCliente.IdCliente.Value;
                    lConta         = new SalvarObjetoRequest <ClienteContaInfo>();
                    lConta.Objeto  = item;
                    ClienteDbLib.SalvarClienteConta(trans, lConta);
                }

                SalvarObjetoRequest <ClienteDiretorInfo> lDiretor;
                foreach (ClienteDiretorInfo item in pDiretor)
                {
                    item.IdCliente  = pCliente.IdCliente.Value;
                    lDiretor        = new SalvarObjetoRequest <ClienteDiretorInfo>();
                    lDiretor.Objeto = item;
                    ClienteDbLib.SalvarClienteDiretor(trans, lDiretor);
                }

                SalvarObjetoRequest <ClienteEmitenteInfo> lEmitente;
                foreach (ClienteEmitenteInfo item in pEmitente)
                {
                    item.IdCliente   = pCliente.IdCliente.Value;
                    lEmitente        = new SalvarObjetoRequest <ClienteEmitenteInfo>();
                    lEmitente.Objeto = item;
                    ClienteDbLib.SalvarClienteEmitente(trans, lEmitente);
                }

                pSfp.IdCliente = pCliente.IdCliente.Value;
                SalvarObjetoRequest <ClienteSituacaoFinanceiraPatrimonialInfo> lSfp = new SalvarObjetoRequest <ClienteSituacaoFinanceiraPatrimonialInfo>();
                lSfp.Objeto = pSfp;
                ClienteDbLib.SalvarClienteSituacaoFinanceiraPatrimonial(trans, lSfp);

                ConexaoDbHelper lAcessaDados = new ConexaoDbHelper();
                lAcessaDados.ConnectionStringName = gNomeConexaoControleAcesso;

                using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_UsuariosPermissoes_ins"))
                {
                    lAcessaDados.AddInParameter(lDbCommand, "@CodigoItem", DbType.Int32, pLogin.IdLogin.Value);
                    lAcessaDados.AddInParameter(lDbCommand, "@Status", DbType.Int32, 0);
                    lAcessaDados.AddInParameter(lDbCommand, "@CodigoPermissao", DbType.String, "22FF518C-C7D3-4ff0-A0CB-96F2476068BB");
                    lAcessaDados.ExecuteNonQuery(lDbCommand);
                }

                lAcessaDados = new ConexaoDbHelper();
                lAcessaDados.ConnectionStringName = gNomeConexaoRisco;

                using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_ins_permissoes_default_cliente"))
                {
                    lAcessaDados.AddInParameter(lDbCommand, "@id_cliente", DbType.Int32, gContaPrincipal);
                    lAcessaDados.ExecuteNonQuery(lDbCommand);
                }

                trans.Commit();

                return(pCliente.IdCliente.Value);
            }
            catch (Exception ex)
            {
                trans.Rollback();
                throw ex;
            }
            finally
            {
                trans.Dispose();
                trans = null;
                if (!ConnectionState.Closed.Equals(conn.State))
                {
                    conn.Close();
                }
                conn.Dispose();
                conn = null;
            }
        }
        public static ClienteAutorizacaoInfo CriarAutorizacaoInfo(DataRow pRow)
        {
            ClienteAutorizacaoInfo lRetorno = new ClienteAutorizacaoInfo();

            lRetorno.IdAutorizacao  = pRow["id_autorizacao"].DBToInt32();
            lRetorno.NomeCliente    = pRow["ds_nome"].DBToString();
            lRetorno.IdCliente      = pRow["id_cliente"].DBToInt32();
            lRetorno.CodigoBov      = pRow["cd_codigo"].DBToString();
            lRetorno.CPF            = pRow["ds_cpfcnpj"].DBToString();
            lRetorno.Passo          = pRow["st_passo"].DBToString();
            lRetorno.DataExportacao = pRow["dt_ultimaexportacao"].DBToDateTime();
            lRetorno.StAutorizado   = pRow["st_autorizado"].DBToString();

            if (pRow["id_login_d1"] != DBNull.Value)
            {
                lRetorno.IdLogin_D1         = pRow["id_login_d1"].DBToInt32();
                lRetorno.Nome_D1            = pRow["nome_d1"].DBToString();
                lRetorno.Email_D1           = pRow["email_d1"].DBToString();
                lRetorno.DataAutorizacao_D1 = pRow["dt_autorizacao_d1"].DBToDateTime();
            }

            if (pRow["id_login_d2"] != DBNull.Value)
            {
                lRetorno.IdLogin_D2         = pRow["id_login_d2"].DBToInt32();
                lRetorno.Nome_D2            = pRow["nome_d2"].DBToString();
                lRetorno.Email_D2           = pRow["email_d2"].DBToString();
                lRetorno.DataAutorizacao_D2 = pRow["dt_autorizacao_d2"].DBToDateTime();
            }

            if (pRow["id_login_p1"] != DBNull.Value)
            {
                lRetorno.IdLogin_P1         = pRow["id_login_p1"].DBToInt32();
                lRetorno.Nome_P1            = pRow["nome_p1"].DBToString();
                lRetorno.Email_P1           = pRow["email_p1"].DBToString();
                lRetorno.DataAutorizacao_P1 = pRow["dt_autorizacao_p1"].DBToDateTime();
            }

            if (pRow["id_login_p2"] != DBNull.Value)
            {
                lRetorno.IdLogin_P2         = pRow["id_login_p2"].DBToInt32();
                lRetorno.Nome_P2            = pRow["nome_p2"].DBToString();
                lRetorno.Email_P2           = pRow["email_p2"].DBToString();
                lRetorno.DataAutorizacao_P2 = pRow["dt_autorizacao_p2"].DBToDateTime();
            }

            if (pRow["id_login_t1"] != DBNull.Value)
            {
                lRetorno.IdLogin_T1         = pRow["id_login_t1"].DBToInt32();
                lRetorno.Nome_T1            = pRow["nome_t1"].DBToString();
                lRetorno.Email_T1           = pRow["email_t1"].DBToString();
                lRetorno.DataAutorizacao_T1 = pRow["dt_autorizacao_t1"].DBToDateTime();
            }

            if (pRow["id_login_t2"] != DBNull.Value)
            {
                lRetorno.IdLogin_T2         = pRow["id_login_t2"].DBToInt32();
                lRetorno.Nome_T2            = pRow["nome_t2"].DBToString();
                lRetorno.Email_T2           = pRow["email_t2"].DBToString();
                lRetorno.DataAutorizacao_T2 = pRow["dt_autorizacao_t2"].DBToDateTime();
            }

            return(lRetorno);
        }
Beispiel #6
0
        public TransporteClienteAutorizacaoCadastral(ClienteAutorizacaoInfo pInfo, bool pPodeAutorizaComoDiretor1, bool pPodeAutorizaComoDiretor2, bool pPodeAutorizaComoProcurador1, bool pPodeAutorizaComoProcurador2, bool pPodeAutorizaComoTestemunha1, bool pPodeAutorizaComoTestemunha2)
        {
            if (pInfo.IdAutorizacao.HasValue)
            {
                this.IdAutorizacao = "";
            }

            this.IdCliente = pInfo.IdCliente.DBToString();

            this.CodigoBov = pInfo.CodigoBov;

            this.NomeCliente    = pInfo.NomeCliente;
            this.DataExportacao = pInfo.DataExportacao.ToString("dd/MM/yy HH:mm");
            this.CPF            = pInfo.CPF;
            this.Passo          = pInfo.Passo;

            if (pInfo.IdLogin_D1.HasValue)
            {
                this.IdLogin_D1         = pInfo.IdLogin_D1.Value.DBToString();
                this.DataAutorizacao_D1 = pInfo.DataAutorizacao_D1.Value.ToString("dd/MM/yy HH:mm");
                this.Nome_D1            = pInfo.Nome_D1;
                this.Email_D1           = pInfo.Email_D1;

                this.Botao_D1 = this.DataAutorizacao_D1;
            }
            else
            {
                if (pPodeAutorizaComoDiretor1)
                {
                    this.Botao_D1 = string.Format("<input id='chkAut_{0}_11' type='checkbox' onclick='return chkAut_Click(this)' /><label for='chkAut_{0}_11'>&nbsp;</label>", this.IdCliente);
                }
            }

            if (pInfo.IdLogin_D2.HasValue)
            {
                this.IdLogin_D2         = pInfo.IdLogin_D2.Value.DBToString();
                this.DataAutorizacao_D2 = pInfo.DataAutorizacao_D2.Value.ToString("dd/MM/yy HH:mm");
                this.Nome_D2            = pInfo.Nome_D2;
                this.Email_D2           = pInfo.Email_D2;

                this.Botao_D2 = this.DataAutorizacao_D2;
            }
            else
            {
                if (pPodeAutorizaComoDiretor2)
                {
                    this.Botao_D2 = string.Format("<input id='chkAut_{0}_12' type='checkbox' onclick='return chkAut_Click(this)' /><label for='chkAut_{0}_12'>&nbsp;</label>", this.IdCliente);
                }
            }

            if (pInfo.IdLogin_P1.HasValue)
            {
                this.IdLogin_P1         = pInfo.IdLogin_P1.Value.DBToString();
                this.DataAutorizacao_P1 = pInfo.DataAutorizacao_P1.Value.ToString("dd/MM/yy HH:mm");
                this.Nome_P1            = pInfo.Nome_P1;
                this.Email_P1           = pInfo.Email_P1;

                this.Botao_P1 = this.DataAutorizacao_P1;
            }
            else
            {
                if (pPodeAutorizaComoProcurador1)
                {
                    this.Botao_P1 = string.Format("<input id='chkAut_{0}_21' type='checkbox' onclick='return chkAut_Click(this)' /><label for='chkAut_{0}_21'>&nbsp;</label>", this.IdCliente);
                }
            }

            if (pInfo.IdLogin_P2.HasValue)
            {
                this.IdLogin_P2         = pInfo.IdLogin_P2.Value.DBToString();
                this.DataAutorizacao_P2 = pInfo.DataAutorizacao_P2.Value.ToString("dd/MM/yy HH:mm");
                this.Nome_P2            = pInfo.Nome_P2;
                this.Email_P2           = pInfo.Email_P2;

                this.Botao_P2 = this.DataAutorizacao_P2;
            }
            else
            {
                if (pPodeAutorizaComoProcurador2)
                {
                    this.Botao_P2 = string.Format("<input id='chkAut_{0}_22' type='checkbox' onclick='return chkAut_Click(this)' /><label for='chkAut_{0}_22'>&nbsp;</label>", this.IdCliente);
                }
            }

            if (pInfo.IdLogin_T1.HasValue)
            {
                this.IdLogin_T1         = pInfo.IdLogin_T1.Value.DBToString();
                this.DataAutorizacao_T1 = pInfo.DataAutorizacao_T1.Value.ToString("dd/MM/yy HH:mm");
                this.Nome_T1            = pInfo.Nome_T1;
                this.Email_T1           = pInfo.Email_T1;

                this.Botao_T1 = this.DataAutorizacao_T1;
            }
            else
            {
                if (pPodeAutorizaComoTestemunha1)
                {
                    this.Botao_T1 = string.Format("<input id='chkAut_{0}_31' type='checkbox' onclick='return chkAut_Click(this)' /><label for='chkAut_{0}_31'>&nbsp;</label>", this.IdCliente);
                }
            }

            if (pInfo.IdLogin_T2.HasValue)
            {
                this.IdLogin_T2         = pInfo.IdLogin_T2.Value.DBToString();
                this.DataAutorizacao_T2 = pInfo.DataAutorizacao_T2.Value.ToString("dd/MM/yy HH:mm");
                this.Nome_T2            = pInfo.Nome_T2;
                this.Email_T2           = pInfo.Email_T2;

                this.Botao_T2 = this.DataAutorizacao_T2;
            }
            else
            {
                if (pPodeAutorizaComoTestemunha2)
                {
                    this.Botao_T2 = string.Format("<input id='chkAut_{0}_32' type='checkbox' onclick='return chkAut_Click(this)' /><label for='chkAut_{0}_32'>&nbsp;</label>", this.IdCliente);
                }
            }

            this.StAutorizado = pInfo.StAutorizado;
        }