コード例 #1
0
        // --------------------------------------------------------------------------------

        //public void PontoEnviar(DateTime DTFrequencia, int IDEmpresa, int IDSetor)
        //{

        //    bool registroenviado = false;
        //    adpFrequencia.Connection.ConnectionString = pnrClient.Properties.Settings.Default.ptServer35ConnectionString;
        //    dsL = new DataSetpnrClient();

        //    //Preenchendo a tabela.
        //    adpFrequencia.FillDTFrequencia(dsL.TBFrequenciaLocal, DTFrequencia.ToShortDateString());

        //    if (dsL.TBFrequenciaLocal.Rows.Count > 0)
        //    {
        //        pontonarede.ServiceSoapClient webS = new pontonarede.ServiceSoapClient();

        //        for (int i = 0; i <= dsL.TBFrequenciaLocal.Rows.Count - 1; i++)
        //        {
        //            msg = string.Empty;

        //            try
        //            {
        //                msg = webS.BaterPonto(IDEmpresa, IDSetor, dsL.TBFrequenciaLocal[i].IDUsuarioLocal, dsL.TBFrequenciaLocal[i].DTFrequencia, "TentoWebServiceNovamente7x24dm12");
        //                registroenviado = true;
        //            }
        //            catch(Exception ex)
        //            {
        //                msg = string.Format("Usuario: {0} - Houve falha ao enviar o registro ou Registro já efetivado: {1}", dsL.TBFrequenciaLocal[i].IDUsuarioLocal,ex.Message.ToString());
        //                registroenviado = false;
        //            }

        //            if(msg.Length > 3)
        //                adpFrequencia.UpdateRegistroEnviado(registroenviado,msg, dsL.TBFrequenciaLocal[i].IDFrequenciaLocal);
        //        }
        //    }
        //    System.GC.Collect();
        //}


        public void PontoEnviarManual(DateTime DTFrequencia, int IDEmpresa, int IDSetor)
        {
            DataSetpnrClientTableAdapters.TBFrequenciaLocalManualTableAdapter adpFrequenciaManual = new DataSetpnrClientTableAdapters.TBFrequenciaLocalManualTableAdapter();
            adpFrequenciaManual.Connection.ConnectionString = pnrClient.Properties.Settings.Default.ptServer35ConnectionString;

            Cript cr = new Cript();

            dsL = new DataSetpnrClient();

            adpFrequenciaManual.FillRegistroNaoEnviado(dsL.TBFrequenciaLocalManual);

            if (dsL.TBFrequenciaLocalManual.Rows.Count > 0)
            {
                pontonarede.ServiceSoapClient webS = new pontonarede.ServiceSoapClient();

                for (int i = 0; i <= (dsL.TBFrequenciaLocalManual.Rows.Count - 1); i++)
                {
                    try
                    {
                        msg = webS.PontoEspecial(dsL.TBFrequenciaLocalManual[i].login, cr.ActionDecrypt(dsL.TBFrequenciaLocalManual[i].Senha), IDEmpresa, DTFrequencia, "TentoWebServiceNovamente7x24dm12");
                        adpFrequenciaManual.UpdateRetornoMSG(msg, dsL.TBFrequenciaLocalManual[i].IDFrequenciaManual);
                    }
                    catch (Exception ex)
                    {
                        ex.ToString();
                        adpFrequenciaManual.UpdateRetornoMSG(string.Format("Usuário: {0}. Houve falha no envio ou registro já enviado."), dsL.TBFrequenciaLocalManual[i].IDFrequenciaManual);
                    }
                }
            }
        }
コード例 #2
0
        //Registros com problemas -- Não enviados por algum motivo -- VOLTAR DAQUI.
        public void RegistroComFalha(int IDEmpresa, int IDSetor)
        {
            SQLConn = new SqlCeConnection(pnrClient.Properties.Settings.Default.ptServer35ConnectionString);
            DA      = null;
            DA      = new SqlCeDataAdapter(string.Format("Select * from tbfrequenciaLocal where RetornoMSG like {0} and RegistroEnviado = 0", "'%Falha%'"), SQLConn);
            TBFL    = null;
            TBFL    = new DataTable();
            DA.Fill(TBFL);
            if (TBFL.Rows.Count > 0)
            {
                string[] Registros = new string[TBFL.Rows.Count];
                for (int i = 0; i <= TBFL.Rows.Count - 1; i++)
                {
                    Registros[i] = string.Format("{0};{1};{2};{3};{4};{5}", TBFL.Rows[i]["IDFrequenciaLocal"].ToString(),
                                                 TBFL.Rows[i]["DTFrequencia"].ToString(), TBFL.Rows[i]["IDUsuarioLocal"].ToString(), IDEmpresa.ToString(),
                                                 IDSetor.ToString(), TBFL.Rows[i]["RetornoMSG"].ToString().Trim());
                }
                //Testando abertura da string
                //int pos = Registros[0].IndexOf(';');
                //string IDFrequencia = Registros[0].Substring(0, pos);

                //pos ++;

                //int pos2 = Registros[0].IndexOf(';', pos);

                //int posFinal = pos2 - pos;

                //string DTFreq = Registros[0].Substring(pos, posFinal);

                //pos2++;

                //pos = Registros[0].IndexOf(';', pos2);

                //posFinal = pos - pos2;

                //string IDusuario = Registros[0].Substring(pos2, posFinal);

                //string idempresa = Registros[0].Substring(pos + 1, 1);
                //string idsetor = Registros[0].Substring(pos + 3, 1);
                //string msg = Registros[0].Substring(pos + 5);


                pontonarede.ServiceSoapClient WebS = new pontonarede.ServiceSoapClient();
                WebS.Endpoint.Binding.OpenTimeout = TimeSpan.FromSeconds(2);
                WebS.Endpoint.Binding.SendTimeout = TimeSpan.FromSeconds(2);
                try
                {
                    WebS.Open();
                    WebS.RegistroFalha(Registros);
                    WebS.Close();
                }
                catch (Exception)
                {
                    WebS.Close();
                }
            }
        }
コード例 #3
0
        private void PreenchecbEmpresa()
        {
            pontonarede.ServiceSoapClient webS = new pontonarede.ServiceSoapClient("ServiceSoap", utilConexao.tcm.UrlWS);

            pontonarede.DataSetPontoFrequencia ds = new pontonarede.DataSetPontoFrequencia();

            ds = webS.RetornaEmpresas();

            cbEmpresa.ValueMember   = "IDEmpresa";
            cbEmpresa.DisplayMember = "DSEmpresa";

            cbEmpresa.DataSource = ds.TBEmpresa;
            cbEmpresa.Update();
        }
コード例 #4
0
        protected void ComparaBiometria()
        {
            bool matched = false;

            LG = new EscreverLog();
            LG.Esrevelog("Processando comparações...", lbLogComparativo);
            similares    = "Biometria compatível com: ";
            lbnomes.Text = string.Empty;
            for (int i = 0; i <= ds.TBUsuarioLocal.Rows.Count - 1; i++)
            {
                lbnomes.Text = string.Format("Comparando com: {0}", ds.TBUsuarioLocal[i].DSUsuario).Trim();
                SGFPMISOTemplateInfo sample_info = new SGFPMISOTemplateInfo();
                error = m_FPM.GetIsoTemplateInfo(ds.TBUsuarioLocal[i].Template1, sample_info);

                for (int z = 0; z <= sample_info.TotalSamples; z++)
                {
                    error = m_FPM.MatchIsoTemplate(ds.TBUsuarioLocal[i].Template1, z, m_VrfMin, 0, SecuGen.FDxSDKPro.Windows.SGFPMSecurityLevel.NORMAL, ref matched);

                    if (matched)
                    {
                        //Se deu match. Listar o nome na listbox.
                        LG.Esrevelog(string.Format("Biometria compativa com: {0}", ds.TBUsuarioLocal[i].DSUsuario), lbLogComparativo);
                        similares += ds.TBUsuarioLocal[i].DSUsuario;

                        pontonarede.ServiceSoapClient WebS = new pontonarede.ServiceSoapClient("ServiceSoap", utilConexao.tcm.UrlWS);
                        WebS.Endpoint.Binding.OpenTimeout    = TimeSpan.FromSeconds(10); //OpenTimeout p/ 3 e SendTimeout p 15
                        WebS.Endpoint.Binding.SendTimeout    = TimeSpan.FromSeconds(15);
                        WebS.Endpoint.Binding.ReceiveTimeout = TimeSpan.FromSeconds(7);

                        //msg = WebS.BaterPonto(45, 410, Convert.ToInt32(ds.TBUsuarioLocal[i].IDUsuario), DateTime.Now, "TentoWebServiceNovamente7x24dm12");
                        WebS.Close();
                    }
                }
            }
            if (matched)
            {
                MessageBox.Show("Biometria compatível com os nomes listados na caixa de texto.");
                lbnomes.Text = string.Format("Total de usuários comparados: ", ds.TBUsuarioLocal.Rows.Count);
            }
            else
            {
                MessageBox.Show("Não foram encontradas compatibilidades com o usuário selecionado.");
                lbnomes.Text = string.Format("Total de usuários comparados: {0}", ds.TBUsuarioLocal.Rows.Count);
                lbLogComparativo.Items.Clear();
            }
        }
コード例 #5
0
        private void btOk_Click(object sender, EventArgs e)
        {
            pontonarede.ServiceSoapClient WebS = new pontonarede.ServiceSoapClient("ServiceSoap", _URL);
            pontonarede.DataSetUsuario    dsU  = new pontonarede.DataSetUsuario();
            WebS.Open();
            try
            {
                if (WebS.LogarAdmin(IDEmpresa, tbUsuario.Text.Trim(), tbSenha.Text.Trim(), "TentoWebServiceNovamente7x24dm12"))
                {
                    //Se logado - Pegar o tipo de usuário
                    dsU = WebS.UsuariosPontoLogin(IDEmpresa, tbUsuario.Text.Trim(), "TentoWebServiceNovamente7x24dm12");

                    //frmPrinc.btManutencao.Enabled = true;
                    //frmPrinc.btLogar.Text = "Logout";
                    acesso = true;

                    //if (dsU.vwUsuarioWebService.Rows.Count > 0) // Verificar aqui. O tipo de usuário 1 deverá ter acesso a todas as rotinas do aplicativo.
                    //{
                    //IDTPUsuario = dsU.vwUsuarioWebService[0].IDTPUsuario;
                    CPF = tbUsuario.Text.Trim();
                    //}

                    this.Hide();
                    // frmPrinc.idsetor = Convert.ToInt32(Ac.IDSETOR)
                }
                else
                {
                    MessageBox.Show("Usuário desconhecido ou sem permissão de Administrador.", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                    tbSenha.Text = "";
                    tbSenha.Update();
                }
            }
            catch (Exception ex)
            {
                ex.ToString();
                MessageBox.Show("Houve falha na tentativo de login. Falha de comunicação com a rede.", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                acesso = AcessoOff(tbUsuario.Text.Trim(), tbSenha.Text.Trim());
                this.Hide();
            }


            //string msg = Ac.VerificaAcesso(tbUsuario.Text.Trim(), tbSenha.Text.Trim(), ds);
            WebS.Close();
        }
コード例 #6
0
        private void PreenchecbSetor(int IDEmpresa)
        {
            cbSetor.DataSource = null;
            cbSetor.Items.Clear();

            pontonarede.ServiceSoapClient webS = new pontonarede.ServiceSoapClient("ServiceSoap", utilConexao.tcm.UrlWS);

            pontonarede.DataSetPontoFrequencia ds = new pontonarede.DataSetPontoFrequencia();

            cbSetor.ValueMember   = "IDSetor";
            cbSetor.DisplayMember = "DSSetor";

            ds = webS.SetorEmpresa(IDEmpresa);

            cbSetor.DataSource = ds.TBSetor;
            cbSetor.Update();

            cbSetor.SelectedIndex = -1;
        }
コード例 #7
0
        public void EnviaInformacaohardware(int IDempresa, int IDsetor, string versao_Dispositivo, string IPLocal, string UserOS, string HashMaquina, string UrlWS)
        {
            InsereDados();
            //Variáveis.
            DA   = null;
            DA   = new SqlCeDataAdapter("Select * from CH_Hardware", SQLConn); //Instância DataAdapter com o cod a executar e a conexão
            TBCH = null;
            TBCH = new DataTable();                                            //Instância DataTable.
            DA.Fill(TBCH);                                                     //preenche tabela
            var osInfo = OSVersionInfo.GetOSVersionInfo();

            if (TBCH.Rows.Count > 0)
            {
                //Informações do hardware ---
                pontonarede.ServiceSoapClient WebS = new pontonarede.ServiceSoapClient("ServiceSoap", UrlWS);
                WebS.Endpoint.Binding.OpenTimeout = TimeSpan.FromSeconds(3);
                WebS.Endpoint.Binding.SendTimeout = TimeSpan.FromSeconds(5);
                try
                {
                    WebS.Open();
                    ChaveHardware CH =
                        new ChaveHardware(pnrClient.Properties.Settings.Default.ptServer35ConnectionString);

                    WebS.MonitoramentoClientHash(TBCH.Rows[0]["SerialHD"].ToString(), TBCH.Rows[0]["SerialProcessador"].ToString(),
                                                 TBCH.Rows[0]["EnderecoMAC"].ToString(), IPLocal, UserOS, osInfo.FullName,
                                                 DateTime.Now, IDempresa, IDsetor, versao_Dispositivo, TBCH.Rows[0]["TotalMemoria"].ToString(),
                                                 TBCH.Rows[0]["EspacoLivreHD"].ToString(), TBCH.Rows[0]["CapacidadeHD"].ToString(),
                                                 TBCH.Rows[0]["ArquiteturaMaquina"].ToString(), TBCH.Rows[0]["ModeloProcessador"].ToString(), HashMaquina);
                    WebS.Close();
                }
                catch (Exception ex)
                {
                    //MessageBox.Show("Erro na hora de enviar informação da máquina! " + ex.ToString(),
                    //"Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    ex.ToString();
                    WebS.Close();
                }
            }
        }
コード例 #8
0
        public void PontoEnviar(DateTime DTFrequencia, int IDEmpresa, int IDSetor)
        {
            DataSetpnrClient dsL             = new DataSetpnrClient();
            bool             registroenviado = false;

            adpFrequencia.Connection.ConnectionString = pnrClient.Properties.Settings.Default.ptServer35ConnectionString;

            //Preenchendo a tabela.
            adpFrequencia.FillDTFrequencia(dsL.TBFrequenciaLocal, DTFrequencia.ToShortDateString());

            if (dsL.TBFrequenciaLocal.Rows.Count > 0)
            {
                pontonarede.ServiceSoapClient webS = new pontonarede.ServiceSoapClient();

                for (int i = 0; i <= dsL.TBFrequenciaLocal.Rows.Count - 1; i++)
                {
                    msg = string.Empty;

                    try
                    {
                        msg = webS.BaterPonto(IDEmpresa, IDSetor, dsL.TBFrequenciaLocal[i].IDUsuarioLocal, dsL.TBFrequenciaLocal[i].DTFrequencia, "TentoWebServiceNovamente7x24dm12", "", "", "", "", 0,
                                              "", "", false, 1);
                        registroenviado = true;
                    }
                    catch (Exception ex)
                    {
                        msg             = string.Format("Usuario: {0} - Houve falha ao enviar o registro ou Registro já efetivado: {1}", dsL.TBFrequenciaLocal[i].IDUsuarioLocal, ex.Message.ToString());
                        registroenviado = false;
                    }

                    if (msg.Length > 3)
                    {
                        adpFrequencia.UpdateRegistroEnviado(registroenviado, msg, dsL.TBFrequenciaLocal[i].IDFrequenciaLocal);
                    }
                }
            }
            System.GC.Collect();
        }
コード例 #9
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            int retorno = 0;

            try
            {
                var webS = new pontonarede.ServiceSoapClient("ServiceSoap", _UrlWS);
                webS.Endpoint.Binding.OpenTimeout    = TimeSpan.FromSeconds(10); //OpenTimeout p/ 3 e SendTimeout p 15
                webS.Endpoint.Binding.SendTimeout    = TimeSpan.FromSeconds(15);
                webS.Endpoint.Binding.ReceiveTimeout = TimeSpan.FromSeconds(7);
                webS.Open();
                retorno = webS.PedidoJustificativaLocal(txtCPF.Text, txtMatricula.Text, txtSenha.Text, txtObs.Text, _IDEmpresa, _IDSetor, "TentoWebServiceNovamente7x24dm12");
                //StatusBar.Text = "Biometrias carregadas! WS.";
                webS.Close();

                if (retorno == 1)
                {
                    MessageBox.Show("Salvo com sucesso!");
                    this.Close();
                    this.Dispose();
                }
                else if (retorno == -1)
                {
                    MessageBox.Show("Login incorreto!");
                }
                else if (retorno == -2)
                {
                    MessageBox.Show("Senha incorreta!");
                }
                else if (retorno == -3)
                {
                    MessageBox.Show("Matrícula Incorreta!");
                }
            }
            catch { }
        }
コード例 #10
0
        //-----------------------------------------------------------------

        //Nova Rotina - Envio de registros off por meio manual, dispensando o dataset Tipado!
        public void EnviarFrequencia(DateTime DTFrequencia, int IDEmpresa, int IDSetor)
        {
            //para o dataset Tipado.
            DataSetpnrClientTableAdapters.TBUsuarioLocalTableAdapter adpLocal =
                new DataSetpnrClientTableAdapters.TBUsuarioLocalTableAdapter();
            adpLocal.Connection.ConnectionString = pnrClient.Properties.Settings.Default.ptServer35ConnectionString;
            DataSetpnrClient.TBUsuarioLocalDataTable TBUsuarioLocal;
            //Antes de executar --- Excluir os registros mais antigos que 5 dias!
            ExcluirRegistrosEnviados();

            bool registroenviado = false;

            SQLConn = new SqlCeConnection(pnrClient.Properties.Settings.Default.ptServer35ConnectionString);

            DA = null;
            DA = new SqlCeDataAdapter("SELECT * FROM TBFrequenciaLocal WHERE DTFrequencia <= @DTFREQUENCIA AND (RegistroEnviado = 0 OR RegistroEnviado IS NULL) ORDER BY DTFrequencia", SQLConn);

            DA.SelectCommand.Parameters.Add("DTFREQUENCIA", DTFrequencia);

            TBFL = null;
            TBFL = new DataTable();
            DA.Fill(TBFL);

            if (TBFL.Rows.Count > 0)
            {
                pontonarede.ServiceSoapClient webS = new pontonarede.ServiceSoapClient();
                webS.Endpoint.Binding.OpenTimeout = TimeSpan.FromSeconds(3);
                webS.Endpoint.Binding.SendTimeout = TimeSpan.FromSeconds(2);
                webS.Open();
                for (int i = 0; i <= TBFL.Rows.Count - 1; i++)
                {
                    msg = string.Empty;

                    //Acha o usuario
                    TBUsuarioLocal = new DataSetpnrClient.TBUsuarioLocalDataTable();
                    adpLocal.FillIDVinculoUsuario(TBUsuarioLocal, Convert.ToInt32(TBFL.Rows[i]["IDVinculoUsuario"]));

                    try
                    {
                        int teste = Convert.ToInt32(TBFL.Rows[i]["IDUsuarioLocal"]);
                        msg = webS.BaterPonto(IDEmpresa, IDSetor, Convert.ToInt32(TBFL.Rows[i]["IDUsuarioLocal"]), Convert.ToDateTime(TBFL.Rows[i]["DTFrequencia"]), "TentoWebServiceNovamente7x24dm12", TBUsuarioLocal[0].HoraEntradaManha,
                                              TBUsuarioLocal[0].HoraSaidaManha, TBUsuarioLocal[0].HoraEntradaTarde, TBUsuarioLocal[0].HoraSaidaTarde, TBUsuarioLocal[0].TotalHoraDia, TBUsuarioLocal[0].DSUsuario, TBUsuarioLocal[0].PrimeiroNome, TBUsuarioLocal[0].RegimePlantonista, TBUsuarioLocal[0].IDVinculoUsuario);
                        registroenviado = true;
                    }
                    catch (Exception ex)
                    {
                        msg = string.Format("Usuario: {0} - Falha: {1}", Convert.ToInt32(TBFL.Rows[i]["IDUsuarioLocal"]), ex.Message.ToString());
                        if (msg.Length > 100)
                        {
                            msg = msg.Substring(1, 100);
                        }
                        registroenviado = false;
                    }

                    if (msg.Length > 10)
                    {
                        RegistroEnviado(Convert.ToInt32(TBFL.Rows[i]["IDFrequenciaLocal"]), msg, registroenviado);
                    }
                }

                webS.Close();
                GC.Collect();
            }
        }