Пример #1
0
        //Comandos USB
        #region USB Funcionario
        public override bool createUsbFile(int Terminal, Types.Opcao Opcao, List <AssepontoRep.Types.Funcionario> listFuncionarios)
        {
            try
            {
                List <Types.Funcionario> listTodos = (new DBApp()).getListFuncionarios(Terminal);
                prepareTerminal(Terminal);
                if (!arquivoFuncionario(listTodos))
                {
                    return(false);
                }
                bool Result = processStart("/a " + FILE_PATH, ArgsUsb());

                if (!Result)
                {
                    log.AddLog(Consts.ERRO_ENVIO_COMANDO);
                }
                else
                {
                    log.AddLog(string.Format(Consts.USB_ARQUIVO_GERADO_SUCESSO, FILE_PATH));
                }

                getLog();
                return(Result);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #2
0
        public override bool GerarArquivoEmpregador(int Terminal, Types.Opcao Opcao, out Types.Empregador EmpregadorDados)
        {
            if (!base.sendInfoEmpresa(Terminal, out EmpregadorDados))
            {
                return(false);
            }

            try
            {
                log.AddLog(Consts.USB_GERANDO_ARQUIVO);
                List <string> Novo       = new List <string>();
                int           PessoaTipo = 0;
                if (EmpregadorDados.PessoaTipo == Types.PessoaTipo.Cnpj)
                {
                    PessoaTipo = 1;
                }
                else if (EmpregadorDados.PessoaTipo == Types.PessoaTipo.Cpf)
                {
                    PessoaTipo = 2;
                }
                else
                {
                    PessoaTipo = 0;
                }

                deleteArquivo(FILE_PATH, FILE_EMPLOYER);
                Novo.Add(string.Format("{0},{1},{2},{3},{4};", EmpregadorDados.Pessoa.Replace(",", ""), EmpregadorDados.Cei.Replace(",", ""),
                                       EmpregadorDados.Nome.Replace(",", ""), EmpregadorDados.Endereco.Replace(",", ""), PessoaTipo.ToString().Replace(",", "")));

                Wr.Classes.Files.WriteFile(FILE_PATH + FILE_EMPLOYER, Novo);
                log.AddLog(Consts.USB_EMPEGADOR_SUCESSO);
                return(true);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #3
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);
            }
        }
Пример #4
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);
     }
 }
Пример #5
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));
         }
         ;
     }
 }
Пример #6
0
        //Comandos USB
        #region USB Funcionario
        public override bool createUsbFile(int Terminal, Types.Opcao Opcao, List <Types.Funcionario> listFuncionarios)
        {
            char option = Opcao == Types.Opcao.Inclusao ? 'I' : Opcao == Types.Opcao.Alteracao ? 'A' : 'E';

            try
            {
                log.AddLog(Consts.USB_GERANDO_ARQUIVO);
                deleteArquivo(FILE_PATH, FILE_STAFF);
                List <string> Novo = new List <string>();
                string        linha;
                foreach (Types.Funcionario func in listFuncionarios)
                {
                    linha = "";
                    if (!Wr.Classes.Validadores.ValidaPis(func.Pis))
                    {
                        log.AddLog(func.Nome);
                        log.AddLog("    PIS INVALIDO");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(func.Barras) && string.IsNullOrEmpty(func.Proximidade) && string.IsNullOrEmpty(func.Teclado))
                        {
                            log.AddLog(func.Nome);
                            log.AddLog("    FUNCIONÁRIO SEM CRACHÁ");
                        }
                        else
                        {
                            linha = func.Nome.Replace(",", "") + "," + func.Pis.Replace(",", "") + "," + func.Ind.ToString().Replace(",", "") + "," +
                                    //(func.Matricula == null ? "" : func.Matricula.Replace(",", "")) + "," + func.Proximidade.Replace(",", "") + ";";
                                    func.Proximidade.Replace(",", "") + "," + func.Barras + ";";
                            Novo.Add(linha);
                        }
                    }
                }

                if (Novo.Count == 0)
                {
                    log.AddLog(Consts.USB_SEM_FUNCIONARIOS);
                    return(false);
                }

                Wr.Classes.Files.WriteFile(FILE_PATH + FILE_STAFF, Novo);
                log.AddLog(string.Format(Consts.USB_ARQUIVO_GERADO_SUCESSO, FILE_PATH));
                return(true);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #7
0
        //Comandos USB
        #region USB Funcionario
        public override bool createUsbFile(int Terminal, Types.Opcao Opcao, List <Types.Funcionario> listFuncionarios)
        {
            char option = Opcao == Types.Opcao.Inclusao ? 'I' : Opcao == Types.Opcao.Alteracao ? 'A' : 'E';

            try
            {
                log.AddLog(Consts.USB_GERANDO_ARQUIVO);
                deleteArquivo(FILE_PATH, FILE_STAFF);
                List <string> Novo = new List <string>();

                foreach (Types.Funcionario func in listFuncionarios)
                {
                    if (!Wr.Classes.Validadores.ValidaPis(func.Pis))
                    {
                        log.AddLog(func.Nome);
                        log.AddLog("    PIS INVALIDO");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(func.Barras) && string.IsNullOrEmpty(func.Proximidade) && string.IsNullOrEmpty(func.Teclado))
                        {
                            log.AddLog(func.Nome);
                            log.AddLog("    FUNCIONÁRIO SEM CRACHÁ");
                        }
                        else
                        {
                            Novo.Add("1+1+" + option + string.Format("[{0}[{1}[{2}[1[{3}", func.Pis, func.Nome, func.Biometria ? 1 : 0,
                                                                     (string.IsNullOrEmpty(func.Barras) ? string.IsNullOrEmpty(func.Teclado) ? func.Proximidade : func.Teclado : func.Barras).PadLeft(20, '0')));
                        }
                    }
                }

                if (Novo.Count == 0)
                {
                    log.AddLog(Consts.USB_SEM_FUNCIONARIOS);
                    return(false);
                }

                Files.WriteFile(FILE_PATH + FILE_STAFF, Novo);
                log.AddLog(string.Format(Consts.USB_ARQUIVO_GERADO_SUCESSO, FILE_PATH));
                return(true);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #8
0
        public override bool GerarArquivoEmpregador(int Terminal, Types.Opcao opcao, out Types.Empregador EmpregadorDados)
        {
            if (!base.GerarArquivoEmpregador(Terminal, opcao, out EmpregadorDados))
            {
                return(false);
            }

            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;

            string tempPessoaTipo = (int)EmpregadorDados.PessoaTipo == 1 ? "J" : "F";
            string tempCnpj       = EmpregadorDados.Pessoa;
            string tempNome       = EmpregadorDados.Nome;
            string tempCei        = EmpregadorDados.Cei;
            string tempEndereco   = EmpregadorDados.Endereco;

            REPZPM_DLL.ID_Comando = REPZPM_DLL.DLLREP_Empregador(REPZPM_DLL.Handle, (int)opcao, tempPessoaTipo, tempCnpj, tempCei, tempNome, tempEndereco);

            REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_VerificaRetornoPenDrive(REPZPM_DLL.Handle, REPZPM_DLL.ID_Comando);

            /*Verifica se o retorno já está disponível*/
            if (REPZPM_DLL.Retorno < 0)
            {
                /*Verifica no arquivo do pendrive se houve erro na execução do comando*/
                REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_ObtemMensagemErro(REPZPM_DLL.Handle, MensagemErro, 1);

                /*Comando executado*/
                if (REPZPM_DLL.Retorno == 0)
                {
                    log.AddLog(Consts.USB_EMPEGADOR_SUCESSO);
                    return(true);
                }
                else
                {
                    /*Houve erro no retorno do comando via pendrive*/
                    REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_ObtemMensagemErro(REPZPM_DLL.Handle, MensagemErro, 1);
                    return(false);
                }
            }
            return(false);
        }
Пример #9
0
        public override bool GerarArquivoEmpregador(int Terminal, Types.Opcao Opcao, out Types.Empregador EmpregadorDados)
        {
            if (!base.sendInfoEmpresa(Terminal, out EmpregadorDados))
            {
                return(false);
            }

            try
            {
                log.AddLog(Consts.USB_GERANDO_ARQUIVO);
                List <string> Novo = new List <string>();

                deleteArquivo(FILE_PATH, FILE_EMPLOYER);
                Novo.Add("2+" + (int)EmpregadorDados.PessoaTipo + "]" + EmpregadorDados.Pessoa + "]" + EmpregadorDados.Cei + "]" +
                         EmpregadorDados.Nome + "]" + EmpregadorDados.Endereco);

                Files.WriteFile(FILE_PATH + FILE_EMPLOYER, Novo);
                log.AddLog(Consts.USB_EMPEGADOR_SUCESSO);
                return(true);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #10
0
        public override bool GerarArquivoEmpregador(int Terminal, Types.Opcao Opcao, out Types.Empregador EmpregadorDados)
        {
            if (!base.sendInfoEmpresa(Terminal, out EmpregadorDados))
            {
                return(false);
            }

            try
            {
                if (!arquivoEmpresa((int)EmpregadorDados.PessoaTipo, EmpregadorDados.Pessoa, EmpregadorDados.Cei, EmpregadorDados.Nome, EmpregadorDados.Endereco))
                {
                    return(false);
                }
                bool Result = processStart("/a " + FILE_PATH, ArgsUsb());
                if (Result)
                {
                    log.AddLog(Consts.USB_EMPEGADOR_SUCESSO);
                }
                getLog();

                return(Result);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #11
0
        public override bool GerarArquivoEmpregador(int Terminal, Types.Opcao Opcao, out Types.Empregador EmpregadorDados)
        {
            if (!base.sendInfoEmpresa(Terminal, out EmpregadorDados))
            {
                return(false);
            }

            try
            {
                log.AddLog(Consts.USB_GERANDO_ARQUIVO);
                List <string> Novo = new List <string>();
                #region Pessoa
                string Pessoa = EmpregadorDados.Pessoa.Replace(";", "");
                do
                {
                    if (Pessoa.Length < 16)
                    {
                        for (int i = Pessoa.Length; i < 16; i++)
                        {
                            Pessoa = Pessoa + " ";
                        }
                    }
                } while (Pessoa.Length < 16);
                #endregion
                #region Cei
                string Cei = EmpregadorDados.Cei.Replace(";", "");
                do
                {
                    if (Cei.Length < 12)
                    {
                        for (int i = Cei.Length; i < 12; i++)
                        {
                            Cei = Cei + " ";
                        }
                    }
                } while (Cei.Length < 12);
                #endregion
                #region Nome
                string Nome = EmpregadorDados.Nome.Replace(";", "");
                do
                {
                    if (Nome.Length < 152)
                    {
                        for (int i = Nome.Length; i < 152; i++)
                        {
                            Nome = Nome + " ";
                        }
                    }
                } while (Nome.Length < 152);
                #endregion
                #region Endereco
                string Endereco = EmpregadorDados.Endereco.Replace(";", "").Replace("- ", "").Replace(". ", "").Replace("-", "").Replace(".", "");
                do
                {
                    if (Endereco.Length < 100)
                    {
                        for (int i = Endereco.Length; i < 100; i++)
                        {
                            Endereco = Endereco + " ";
                        }
                    }
                } while (Endereco.Length < 100);
                #endregion
                #region PessoaTipo
                int PessoaTipo = 0;
                if (EmpregadorDados.PessoaTipo == Types.PessoaTipo.Cnpj)
                {
                    PessoaTipo = 1;
                }
                else if (EmpregadorDados.PessoaTipo == Types.PessoaTipo.Cpf)
                {
                    PessoaTipo = 2;
                }
                else
                {
                    PessoaTipo = 0;
                }
                #endregion

                deleteArquivo(FILE_PATH, FILE_EMPLOYER);
                Novo.Add(string.Format("{0};{1};{2};{3};{4};\r\n", Pessoa, Cei, Nome, Endereco, PessoaTipo));

                StreamWriter sw = new StreamWriter(FILE_PATH + FILE_EMPLOYER, false, Encoding.GetEncoding(1252));
                foreach (string lin in Novo)
                {
                    sw.Write(Wr.Classes.Strings.RemoveAccents(lin));
                    sw.Flush();
                }

                log.AddLog(Consts.USB_EMPEGADOR_SUCESSO);
                sw.Close();
                return(true);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #12
0
        //Comandos USB
        #region USB Funcionario
        public override bool createUsbFile(int Terminal, Types.Opcao Opcao, List <Types.Funcionario> listFuncionarios)
        {
            char option = Opcao == Types.Opcao.Inclusao ? 'I' : Opcao == Types.Opcao.Alteracao ? 'A' : 'E';

            try
            {
                log.AddLog(Consts.USB_GERANDO_ARQUIVO);
                deleteArquivo(FILE_PATH, FILE_STAFF);
                List <string> Novo = new List <string>();
                string        linha;
                foreach (Types.Funcionario func in listFuncionarios)
                {
                    linha = "";
                    if (!Wr.Classes.Validadores.ValidaPis(func.Pis))
                    {
                        log.AddLog(func.Nome);
                        log.AddLog("    PIS INVALIDO");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(func.Barras) && string.IsNullOrEmpty(func.Proximidade) && string.IsNullOrEmpty(func.Teclado))
                        {
                            log.AddLog(func.Nome);
                            log.AddLog("    FUNCIONÁRIO SEM CRACHÁ");
                        }
                        else
                        {
                            #region Nome
                            string Nome = func.Nome.Replace(";", "");
                            do
                            {
                                if (Nome.Length < 52)
                                {
                                    for (int i = Nome.Length; i < 52; i++)
                                    {
                                        Nome = Nome + " ";
                                    }
                                }
                            } while (Nome.Length < 52);
                            #endregion
                            #region Pis
                            string Pis = "0" + func.Pis.Replace(";", "");
                            do
                            {
                                if (Pis.Length < 12)
                                {
                                    for (int i = Pis.Length; i < 12; i++)
                                    {
                                        Pis = Pis + " ";
                                    }
                                }
                            } while (Pis.Length < 12);
                            #endregion
                            #region Contactless
                            string Contactless = func.Proximidade.Replace(";", "");
                            do
                            {
                                if (Contactless.Length < 16)
                                {
                                    for (int i = Contactless.Length; i < 16; i++)
                                    {
                                        Contactless = Contactless + " ";
                                    }
                                }
                            } while (Contactless.Length < 16);
                            #endregion
                            #region Matricula
                            string Matricula = (func.Matricula == null) ? "" : func.Matricula.Replace(";", "");
                            do
                            {
                                if (Matricula.Length < 16)
                                {
                                    for (int i = Matricula.Length; i < 16; i++)
                                    {
                                        Matricula = Matricula + " ";
                                    }
                                }
                            } while (Matricula.Length < 16);
                            #endregion
                            #region Teclado
                            string Teclado = func.Teclado.Replace(";", "");
                            do
                            {
                                if (Teclado.Length < 8)
                                {
                                    for (int i = Teclado.Length; i < 8; i++)
                                    {
                                        Teclado = Teclado + " ";
                                    }
                                }
                            } while (Teclado.Length < 8);
                            #endregion
                            linha = Nome + ";" + Pis + ";" + Contactless + ";" + Matricula + ";" + Teclado + ";\r\n";
                            Novo.Add(linha);
                        }
                    }
                }

                if (Novo.Count == 0)
                {
                    log.AddLog(Consts.USB_SEM_FUNCIONARIOS);
                    return(false);
                }

                string       count;
                bool         primeiro = true;
                StreamWriter sw       = new StreamWriter(FILE_PATH + FILE_STAFF, false, Encoding.GetEncoding(1252));
                foreach (string lin in Novo)
                {
                    if (primeiro)
                    {
                        count = Novo.Count.ToString();
                        if (count.Length < 5)
                        {
                            for (int i = count.Length; i < 5; i++)
                            {
                                count = "0" + count;
                            }
                            sw.Write(count + "\r\n");
                        }
                        else
                        {
                            sw.Write(count + "\r\n");
                        }

                        sw.Flush();
                        primeiro = false;
                    }
                    sw.Write(Wr.Classes.Strings.RemoveAccents(lin));
                    sw.Flush();
                }

                log.AddLog(string.Format(Consts.USB_ARQUIVO_GERADO_SUCESSO, FILE_PATH));
                sw.Close();
                return(true);
            }
            catch (Exception e) { log.AddLog(e.Message); return(false); }
        }
Пример #13
0
 public override void UsbFileFuncionario(Types.Funcionario Funcionario, Types.Opcao Opcao, ref string Line)
 {
     base.UsbFileFuncionario(Funcionario, Opcao, ref Line);
 }