Пример #1
0
 private string getFormatoArquivoFuncionario(Types.Funcionario Funcionario)
 {
     return((string.IsNullOrEmpty(Funcionario.Teclado) ? string.IsNullOrEmpty(Funcionario.Barras) ? Funcionario.Proximidade : Funcionario.Barras : Funcionario.Teclado).PadLeft(16, '0') + ";" +
            Funcionario.Pis.PadLeft(12, '0') + ";" +
            Funcionario.Nome.PadRight(52, ' ') + ";" +
            (Funcionario.Biometria ? "SIM" : "NAO"));  //Exige biometria
 }
Пример #2
0
        public override bool sendFuncionario(Types.Funcionario Funcionario)
        {
            base.sendFuncionario(Funcionario);

            RepProtocol.Empregado empregado = new RepProtocol.Empregado();
            empregado.CNTLS = String.IsNullOrEmpty(Funcionario.Proximidade) ? "0" : Convert.ToInt64(Funcionario.Proximidade).ToString("X");
            empregado.ID    = Funcionario.Crachas[0].ToString();
            empregado.KBD   = Funcionario.Crachas[0].ToString();
            empregado.Nome  = Funcionario.Nome;
            empregado.PIS   = Funcionario.Pis;

            AssepontoRep.DBApp bd = new DBApp();

            string msg = "";

            if (bd.FuncionarioEstaNoTerminal(TerminalDados.Indice, Funcionario.Ind))
            {
                repProtocol.EditEmployee(empregado, out msg);
            }
            else
            {
                repProtocol.SetEmployee(empregado, out msg);
            }

            LogMensagem(msg);

            return(msg == MSGOK);
        }
Пример #3
0
        public override bool sendFuncionario(Types.Funcionario Funcionario)
        {
            bool Result = true;

            base.sendFuncionario(Funcionario);

            int    resultado = -1;
            string Biometria = "0";
            byte   grupo     = 0;

            foreach (long Cracha in Funcionario.Crachas)
            {
                dllREP.REP_GravaCadastroFuncionario(
                    TerminalDados.IP,
                    '0',
                    Funcionario.Nome + '\0',
                    Funcionario.Pis + '\0',
                    Cracha.ToString() + '\0',
                    Cracha.ToString() + '\0',
                    "" + '\0',
                    Biometria + '\0',
                    grupo,
                    ref resultado);
                LogMensagem(resultado);

                if (resultado == -1)
                {
                    Result = false;
                }
            }

            return(Result);
        }
Пример #4
0
 public override bool deleteFuncionario(Types.Funcionario Funcionario)
 {
     base.deleteFuncionario(Funcionario);
     bioRep.EnableDevice(numeroRep, false);
     if (bioRep.SSR_DeleteEnrollDataExt_BZ900(numeroRep, Funcionario.Ind.ToString(), 12))
     {
         bioRep.RefreshData(numeroRep);
         log.AddLog(String.Format(Consts.FUNCIONARIO_EXCLUIDO, Funcionario.Nome));
         bioRep.EnableDevice(numeroRep, true);
         return(true);
     }
     else
     {
         int idwErrorCode = 0;
         bioRep.GetLastError(ref idwErrorCode);
         if (idwErrorCode == 0)
         {
             log.AddLog(String.Format(Consts.FUNCIONARIO_EXCLUIDO, Funcionario.Nome));
             bioRep.EnableDevice(numeroRep, true);
             return(true);
         }
         else
         {
             log.AddLog(string.Format(Consts.ERRO_ENVIO_COMANDO_CODIGO, idwErrorCode.ToString()));
             bioRep.EnableDevice(numeroRep, true);
             return(false);
         }
     }
 }
Пример #5
0
        public override bool sendFuncionario(Types.Funcionario Funcionario)
        {
            base.sendFuncionario(Funcionario);
            bioRep.EnableDevice(numeroRep, false);
            string cpf = (new DBApp().getFieldValueString(string.Format(@"select isnull(replace(replace(b.REG_CPF_NUMERO, '.', ''), '-', ''), '') as CPF 
                                                                            from Funcionarios a 
                                                                            inner join Registro b on a.FUNC_IND = b.REG_FUNC 
                                                                            where a.FUNC_IND = {0} ", Funcionario.Ind)));
            int    privilege = 0;

            if (!string.IsNullOrEmpty(cpf) && (Funcionario.Permissao != null && Funcionario.Permissao.Value == 1))
            {
                privilege = Funcionario.Permissao.Value;
            }
            if (bioRep.SSR_SetUserInfoEx_BZ900(numeroRep, Funcionario.Ind.ToString(), Funcionario.Nome, Funcionario.Teclado, privilege, "0" + Funcionario.Pis, cpf, Funcionario.Barras))
            {
                log.AddLog(String.Format(Consts.FUNCIONARIO_ENVIADO_COM_SUCESSO, Funcionario.Nome));
                bioRep.EnableDevice(numeroRep, true);
                return(true);
            }
            else
            {
                int idwErrorCode = 0;
                bioRep.GetLastError(ref idwErrorCode);
                log.AddLog(string.Format(Consts.ERRO_ENVIO_COMANDO_CODIGO, idwErrorCode.ToString()));
                bioRep.EnableDevice(numeroRep, true);
                return(false);
            }
        }
Пример #6
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            Disconnect(TerminalDados.Indice);
            Connect(TerminalDados.Indice);

            string strPIS = Funcionario.Pis;

            try
            {
                System.Threading.Thread.Sleep(300);
                this._objController.DeleteUser(strPIS);
                log.AddLog("AGUARDE...");
                int seg = 0;
                System.Threading.Thread.Sleep(1000);
                while (this._objController.GetConnectionState() == EConnectionState.SendingData)
                {
                    //System.Threading.Thread.Sleep(1000);
                    seg++;
                }
                log.AddLog(String.Format(Consts.FUNCIONARIO_EXCLUIDO, Funcionario.Nome));
                Disconnect(TerminalDados.Indice);
                return(true);
            }
            catch (Exception exError)
            {
                log.AddLog(Consts.ERRO_ENVIO_COMANDO);
                log.AddLog("Descrição ", true);
                log.AddLog(exError.Message);
                Disconnect(TerminalDados.Indice);
                return(false);
            }
        }
Пример #7
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            bool Result = false;

            try
            {
                PrintPointIII_Conectar();
                _watchComm.AddEmployee(Funcionario.Pis);
                this._watchComm.ExcludeEmployeesList();
                log.AddLog(String.Format(AssepontoRep.Consts.FUNCIONARIO_EXCLUIDO, Funcionario.Nome));
                Result = true;
            }
            catch (Exception ex)
            {
                log.AddLog(ex.Message);
            }
            finally
            {
                PrintPointIII_Desconectar();
            }

            return(Result);
        }
Пример #8
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            string  msg = Funcionario.Pis.PadRight(12, '0') + "1";
            Comando cmd = new Comando(Protocolo.CMD_EXCLUSAO, Protocolo.SET, msg);

            return(EnviaComandoTCP(cmd));
        }
Пример #9
0
        private bool findFucionario(List <Types.Funcionario> lista, Types.Funcionario funcionario)
        {
            foreach (Types.Funcionario func in lista)
            {
                return(func.Nome.Equals(funcionario.Nome));
            }

            return(false);
        }
Пример #10
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            int resultado = -1;

            dllREP.REP_ExcluiCadastroFuncionario(TerminalDados.IP, Funcionario.Pis, ref resultado);
            LogMensagem(resultado);
            return(resultado == 0);
        }
Пример #11
0
        public override void UsbFileFuncionario(Types.Funcionario Funcionario, Types.Opcao Opcao, ref string Line)
        {
            REPZPM_DLL.Handle  = REPZPM_DLL.DLLREP_IniciaDriver(TerminalDados.Serial); //verifica o numero de fabricação
            REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_DefineModoArquivo(REPZPM_DLL.Handle, AssepontoRep.Folders.folderArquivoUsb());
            REPZPM_DLL.Modo    = 1;

            bool   Teclado           = false;
            string Habilitar_Teclado = Teclado ? "S" : "N";
            string CodigoMifare      = "";
            string CodigoTag         = "";


            if (Funcionario.Crachas.Count > 0)
            {
                foreach (long Cracha in Funcionario.Crachas)
                {
                    REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_Funcionario_Prepara(REPZPM_DLL.Handle, opInclusao, Funcionario.Pis, Convert.ToString(Cracha), Funcionario.Nome, "", Habilitar_Teclado, Convert.ToString(Cracha), Convert.ToString(Cracha), CodigoMifare, CodigoTag);
                }
            }
            else
            {
                REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_Funcionario_Prepara(REPZPM_DLL.Handle, opInclusao, Funcionario.Pis, "", Funcionario.Nome, "", Habilitar_Teclado, "", "", CodigoMifare, CodigoTag);
            }


            /*Comando executado*/
            if (REPZPM_DLL.Retorno == 1)
            {
                REPZPM_DLL.ID_Comando = REPZPM_DLL.DLLREP_Funcionario_Envia(REPZPM_DLL.Handle);

                /*Comando de cadastro de funcionário foi enviado com sucesso se for maior que 0*/
                if (REPZPM_DLL.ID_Comando > 0)
                {
                    if (REPZPM_DLL.Modo == 1)
                    {
                        /*Obtém o código de erro*/
                        REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_VerificaRetornoPenDrive(REPZPM_DLL.Handle, REPZPM_DLL.ID_Comando);
                    }
                    else
                    {
                        /*Erro na execução do comando de envio de funcionário pela DLL*/
                        REPZPM_DLL.Retorno = Convert.ToInt32(REPZPM_DLL.Trata_Retorno_DLL(REPZPM_DLL.ID_Comando));
                        return;
                    }
                }
                else
                {
                    log.AddLog(Consts.ERRO_ENVIO_COMANDO);
                }
            }
            else
            {
                log.AddLog(Consts.ERRO_ENVIO_COMANDO);
            }
        }
Пример #12
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            Connect(TerminalDados.Indice);
            string msg = repProtocol.RemoveEmployee(Funcionario.Pis);

            LogMensagem(msg);

            return(msg == MSGOK);
        }
Пример #13
0
 public override bool sendFuncionario(Types.Funcionario Funcionario)
 {
     base.sendFuncionario(Funcionario);
     if (bioRep.SSR_SetUserInfoEx(numeroRep, Funcionario.Ind.ToString(), (string)Funcionario.Nome, (string)Funcionario.Teclado, 0, true, "0" + (string)Funcionario.Pis, ""))
     {
         log.AddLog(String.Format(Consts.FUNCIONARIO_ENVIADO_COM_SUCESSO, Funcionario.Nome));
         return(true);
     }
     else
     {
         return(false);
     }
 }
Пример #14
0
 public override void UsbFileFuncionario(Types.Funcionario Funcionario, Types.Opcao Opcao, ref string Line)
 {
     try
     {
         if (!repUsb.AdicionarUsuario(Convert.ToInt64(Funcionario.Pis), Funcionario.Nome, Convert.ToUInt32(metodTeclado(Funcionario.Teclado)), "",
                                      Funcionario.Barras + '\0', Convert.ToUInt32(metodProximidade(Funcionario.Proximidade)), 0))
         {
             log.AddLog("Erro em adicionar " + Funcionario.Nome + " :" + repUsb.GetLastError());
         }
     }
     catch (Exception ex)
     {
         log.AddLog(ex.Message);
     }
 }
Пример #15
0
 public override void UsbFileFuncionario(Types.Funcionario Funcionario, Types.Opcao Opcao, List <string> Line)
 {
     if (Funcionario.Proximidade != String.Empty)
     {
         Line.Add(String.Format("{0},{1},{2},{3},{4};", Funcionario.Nome, Funcionario.Pis, Funcionario.Crachas[0], Funcionario.Crachas[0], Convert.ToInt64(Funcionario.Proximidade).ToString("X")));
     }
     else
     {
         foreach (long cracha in Funcionario.Crachas)
         {
             Line.Add(String.Format("{0},{1},{2},{3},{4};", Funcionario.Nome, Funcionario.Pis, cracha, cracha, String.Empty));
         }
         ;
     }
 }
Пример #16
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            int resultado = -1;

            if (Connect(TerminalDados.Indice))
            {
                dllREP.REP_ExcluiCadastroFuncionario(TerminalDados.IP, Funcionario.Pis, ref resultado);
                LogMensagem(resultado);
            }

            //Gertec_Desconectar();
            return(resultado == 0);
        }
Пример #17
0
        public override bool sendFuncionario(Types.Funcionario Funcionario)
        {
            Disconnect(TerminalDados.Indice);
            Connect(TerminalDados.Indice);

            string strPIS         = Funcionario.Pis;
            string strUserName    = Funcionario.Nome;
            uint   uiKeyCode      = Convert.ToUInt32(Funcionario.Crachas[0]);
            string strBarCode     = Funcionario.Barras;
            byte   byFacilityCode = (byte)Funcionario.Ind;
            ushort usProxCode     = 0;
            byte   byUserType     = 2;
            string strPassword    = Funcionario.Crachas[0].ToString();

            System.IO.MemoryStream msPhoto = null;
            ushort usSizeSample            = 0;
            byte   byQuantitySamples       = 0;

            byte[] rgbyBiometrics = new byte[1];

            try
            {
                System.Threading.Thread.Sleep(1000);
                this._objController.AddUser(strPIS, strUserName, uiKeyCode, strBarCode, byFacilityCode, usProxCode, byUserType, strPassword, msPhoto, usSizeSample, byQuantitySamples, rgbyBiometrics);
                log.AddLog("AGUARDE...");
                int seg = 0;
                System.Threading.Thread.Sleep(1000);
                while (this._objController.GetConnectionState() == EConnectionState.SendingData)
                {
                    //System.Threading.Thread.Sleep(1000);
                    seg++;
                }
                log.AddLog(String.Format(Consts.FUNCIONARIO_ENVIADO_COM_SUCESSO, Funcionario.Nome));
                Disconnect(TerminalDados.Indice);
                return(true);
            }
            catch (Exception exError)
            {
                log.AddLog(Consts.ERRO_ENVIO_COMANDO);
                log.AddLog("Descrição ", true);
                log.AddLog(exError.Message);
                Disconnect(TerminalDados.Indice);
                return(false);
            }
        }
Пример #18
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);

            bool   Result = true;
            string Answer = "";

            foreach (int Cracha in Funcionario.Crachas)
            {
                Send(String.Format("01+EU+00+1+E[{0}[{1}[{2}[{3}[{4}", Funcionario.Pis, Funcionario.Nome, 1, 1, Cracha), out Answer);
            }

            if (!ProcessAnswer(Answer))
            {
                Result = false;
            }

            return(Result);
        }
Пример #19
0
 public override bool sendFuncionario(Types.Funcionario Funcionario)
 {
     base.sendFuncionario(Funcionario);
     bioRep.EnableDevice(TerminalDados.Indice, false);
     if (bioRep.SSR_SetUserInfoEx_BZ900(TerminalDados.Indice, Funcionario.Ind.ToString(), Funcionario.Nome, Funcionario.Teclado, 0, "0" + Funcionario.Pis, "", Funcionario.Barras))
     {
         log.AddLog(String.Format(Consts.FUNCIONARIO_ENVIADO_COM_SUCESSO, Funcionario.Nome));
         bioRep.EnableDevice(TerminalDados.Indice, true);
         return(true);
     }
     else
     {
         int idwErrorCode = 0;
         bioRep.GetLastError(ref idwErrorCode);
         log.AddLog(string.Format(Consts.ERRO_ENVIO_COMANDO_CODIGO, idwErrorCode.ToString()));
         bioRep.EnableDevice(TerminalDados.Indice, true);
         return(false);
     }
 }
Пример #20
0
        public override bool deleteFuncionario(Types.Funcionario Funcionario)
        {
            base.deleteFuncionario(Funcionario);
            bool Result = false;

            try
            {
                if (Connect(0))
                {
                    innerRep.InicializarListaEmpregados();
                    int resposta = innerRep.IncluirPisEmpregadoListaExclusao(Funcionario.Pis);
                    resposta = innerRep.EnviarListaExclusaoEmpregados();
                    resposta = innerRep.LerResultado(0);

                    if (resposta == 0)
                    {
                        Result = MensagemComandoFuncionario(Funcionario.Nome);
                        log.AddLineBreak();
                        if (Result)
                        {
                            log.AddLog(string.Format(Consts.FUNCIONARIO_EXCLUIDO, Funcionario.Nome));
                        }
                    }
                    else
                    {
                        MensagemResultadoComunicacao(resposta);
                    }
                }

                return(Result);
            }
            catch (Exception ex)
            {
                log.AddLog(ex.Message.ToString());
            }

            return(Result);
        }
Пример #21
0
        public override bool sendFuncionario(Types.Funcionario Funcionario)
        {
            bool Result = base.sendFuncionario(Funcionario);

            int    resultado = -1;
            string Biometria = "0";
            byte   grupo     = 0;

            if (Connect(TerminalDados.Indice))
            {
                dllREP.REP_GravaCadastroFuncionario(
                    TerminalDados.IP,
                    '0',
                    Funcionario.Nome + '\0',
                    Funcionario.Pis + '\0',
                    Funcionario.Proximidade + '\0',
                    Funcionario.Barras + '\0',
                    Funcionario.Teclado + '\0',
                    Biometria + '\0',
                    grupo,
                    ref resultado);

                if (resultado == 0)
                {
                    Result = true;
                    log.AddLog("OK");
                }
                else
                {
                    LogMensagem(resultado);
                }
            }

            //Disconnect(TerminalDados.Indice);

            return(Result);
        }
Пример #22
0
        public override bool sendFuncionario(Types.Funcionario Funcionario)
        {
            TControle controle = new TControle(); 
 TControle controle2 = new TControle(); 
 string ip = TerminalDados.IP; 
 string backup = "N"; 
 ASCIIEncoding enc = new ASCIIEncoding(); 
 controle.endereco = new byte[ip.Length + 1]; 
 controle.backup = new byte[backup.Length + 1];

            controle.endereco = enc.GetBytes(ip);
            controle.backup   = enc.GetBytes(backup);
            controle.porta    = Convert.ToInt16(TerminalDados.Porta);
            controle.s_tipo   = s_tipo;
            controle.modelo   = (byte)modelo;
            controle.baudrate = 9600;
            controle.erro     = 0;
            controle.atual    = 0;
            controle.total    = 2;
            controle.start    = 1; 
 controle2 = controle;

            TDados dados = new TDados();

            string adcOUSubst = "A"; 
 string pin = Funcionario.Crachas[0].ToString(); 
 string pis = Funcionario.Pis; 
 string nome = Funcionario.Nome.Substring(0, (Funcionario.Nome.Length >= 52 ? 52 : Funcionario.Nome.Length));
            string id_bio = "0"; 
 string numCartao = string.IsNullOrEmpty(Funcionario.Proximidade) ? string.IsNullOrEmpty(Funcionario.Barras) ? "0" : Funcionario.Barras : Funcionario.Proximidade; 
 string senha = Funcionario.Crachas[0].ToString(); 
 string mestre = "0";

            dados.tipoId         = new byte[1];
            dados.identificador  = new byte[1];
            dados.cei            = new byte[1];
            dados.razaoSocial    = new byte[1];
            dados.localPrestServ = new byte[1];
            dados.adcOUSubst     = new byte[adcOUSubst.Length + 1]; 
 dados.pin = new byte[pin.Length + 1]; 
 dados.pis = new byte[pis.Length + 1]; 
 dados.nome = new byte[nome.Length + 1]; 
 dados.id_bio = new byte[id_bio.Length + 1]; 
 dados.numCartao = new byte[numCartao.Length + 1]; 
 dados.senha = new byte[senha.Length + 1]; 
 dados.mestre = new byte[mestre.Length + 1]; 
 dados.verifica = new byte[1];

            dados.tipoId         = enc.GetBytes("");
            dados.identificador  = enc.GetBytes("");
            dados.cei            = enc.GetBytes("");
            dados.razaoSocial    = enc.GetBytes("");
            dados.localPrestServ = enc.GetBytes("");
            dados.adcOUSubst     = enc.GetBytes(adcOUSubst); 
 dados.pin = enc.GetBytes(pin); 
 dados.pis = enc.GetBytes(pis); 
 dados.nome = enc.GetBytes(nome); 
 dados.id_bio = enc.GetBytes(id_bio); 
 dados.numCartao = enc.GetBytes(numCartao); 
 dados.senha = enc.GetBytes(senha); 
 dados.mestre = enc.GetBytes(mestre); 
 dados.verifica = enc.GetBytes("");

            if (Authotelcom.enviaEmpregadorTCP(dados, controle))
            {
                controle.start = 0;
                Authotelcom.enviaEmpregadorTCP(ref dados, ref controle);

                if (controle.erro == 0)
                {
                    Authotelcom.fecharComunicacao();

                    TDados novo = new TDados();
                    novo.pis = dados.pis;
                    if (Authotelcom.leTrabalhadorTCP(novo, out controle2))
                    {
                        if (controle2.erro == 0 && controle2.total == 0 && controle2.atual == 0)
                        {
                            log.AddLog("NÃO EXISTE FUNCIONARIOS NO REP");
                        }
                        else
                        {
                            controle.start = 0;
                            Authotelcom.leTrabalhadorTCP(out dados, controle);
                        }
                    }

                    log.AddLog("FUNCIONARIO ENVIADO COM SUCESSO...");
                    Authotelcom.fecharComunicacao();
                    return(true);
                }
                else
                {
                    log.AddLog("Erro: " + controle.erro.ToString());
                    Authotelcom.fecharComunicacao();
                    return(false);
                }
            }
            else
            {
                log.AddLog("Erro no envio do comando.");
                return(false);
            }
        }
Пример #23
0
 public override void UsbFileFuncionario(Types.Funcionario Funcionario, Types.Opcao Opcao, ref string Line)
 {
     base.UsbFileFuncionario(Funcionario, Opcao, ref Line);
 }