{"id":21894722,"url":"https://github.com/convenia/afd-reader","last_synced_at":"2025-04-15T15:59:40.960Z","repository":{"id":56957699,"uuid":"62637664","full_name":"convenia/afd-reader","owner":"convenia","description":"Pacote de leitura de arquivos de ponto no padrão do brasil. AFD, AFDT e ACJEF","archived":false,"fork":false,"pushed_at":"2024-09-19T19:02:58.000Z","size":528,"stargazers_count":9,"open_issues_count":0,"forks_count":6,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-15T15:59:11.166Z","etag":null,"topics":["acjef","afd","afdt","clt","fiscal","ponto"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/convenia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-07-05T13:08:02.000Z","updated_at":"2025-02-10T14:04:14.000Z","dependencies_parsed_at":"2024-11-28T16:16:35.037Z","dependency_job_id":null,"html_url":"https://github.com/convenia/afd-reader","commit_stats":{"total_commits":16,"total_committers":3,"mean_commits":5.333333333333333,"dds":0.25,"last_synced_commit":"331774f44e510be978ebbdccd47ea52e6372aaa4"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/convenia%2Fafd-reader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/convenia%2Fafd-reader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/convenia%2Fafd-reader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/convenia%2Fafd-reader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/convenia","download_url":"https://codeload.github.com/convenia/afd-reader/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249105473,"owners_count":21213534,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["acjef","afd","afdt","clt","fiscal","ponto"],"created_at":"2024-11-28T13:27:49.285Z","updated_at":"2025-04-15T15:59:40.936Z","avatar_url":"https://github.com/convenia.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"![logo](afdreader.png)\n\n---\n\nPacote para leitura de Arquivo Fonte de Dados (AFD).\nEspecificação do MTE referente a portaria [1.510/2009](http://www.trtsp.jus.br/geral/tribunal2/ORGAOS/MTE/Portaria/P1510_09.html).\n\n---\n[![Latest Stable Version](https://poser.pugx.org/convenia/afd-reader/v/stable)](https://packagist.org/packages/convenia/afd-reader)\n[![Build Status](https://travis-ci.org/convenia/afd-reader.svg?branch=master)](https://travis-ci.org/convenia/afd-reader)\n[![Total Downloads](https://poser.pugx.org/convenia/afd-reader/downloads)](https://packagist.org/packages/convenia/afd-reader)\n[![License](https://poser.pugx.org/convenia/afd-reader/license)](https://packagist.org/packages/convenia/afd-reader)\n---\n\n## Arquivos suportados\n\n- Arquivo-Fonte de Dados - AFD\n- Arquivo-Fonte de Dados Tratado - AFDT\n- Arquivo de Controle de Jornada para Efeitos Fiscais - ACJEF\n\n## Métodos\n\n- getByUser()\n- getAll()\n\n## Utilização\n\nO AfdReader pode ser instanciado informando apenas o caminho do arquivo, neste caso ele tentará descobrir o tipo:\n```php\nuse Convenia\\AfdReader\\AfdReader;\n...\n \n$afdReader = new AfdReader('afdt_test.txt');\n```\n\nInformando o tipo do arquivo:\n```php\nuse Convenia\\AfdReader\\AfdReader;\n...\n\n$afdReader = new AfdReader('afdt_test.txt', 'Afdt');\n```\n\nObter informações agrupadas por NIS/PIS:\n```php\n$afdReader-\u003egetByUser();\n```\n\n```\nArray\n(\n    [62915959739] =\u003e Array\n        (\n            [20052015] =\u003e Array\n                (\n                    [01] =\u003e Array\n                        (\n                            [0] =\u003e Array\n                                (\n                                    [sequency] =\u003e 000000002\n                                    [dateTime] =\u003e DateTime Object\n                                        (\n                                            [date] =\u003e 2015-05-20 09:00:00.000000\n                                            [timezone_type] =\u003e 3\n                                            [timezone] =\u003e America/Sao_Paulo\n                                        )\n\n                                    [reason] =\u003e \n\n                                    [direction] =\u003e Entrada\n                                    [type] =\u003e Original\n                                )\n\n                            [1] =\u003e Array\n                                (\n                                    [sequency] =\u003e 000000003\n                                    [dateTime] =\u003e DateTime Object\n                                        (\n                                            [date] =\u003e 2015-05-20 12:04:00.000000\n                                            [timezone_type] =\u003e 3\n                                            [timezone] =\u003e America/Sao_Paulo\n                                        )\n\n                                    [reason] =\u003e \n\n                                    [direction] =\u003e Saída\n                                    [type] =\u003e Original\n                                )\n\n                        )\n\n                    [02] =\u003e Array\n                        (\n                            [0] =\u003e Array\n                                (\n                                    [sequency] =\u003e 000000004\n                                    [dateTime] =\u003e DateTime Object\n                                        (\n                                            [date] =\u003e 2015-05-20 13:14:00.000000\n                                            [timezone_type] =\u003e 3\n                                            [timezone] =\u003e America/Sao_Paulo\n                                        )\n\n                                    [reason] =\u003e \n\n                                    [direction] =\u003e Entrada\n                                    [type] =\u003e Original\n                                )\n\n                            [1] =\u003e Array\n                                (\n                                    [sequency] =\u003e 000000005\n                                    [dateTime] =\u003e DateTime Object\n                                        (\n                                            [date] =\u003e 2015-05-20 18:07:00.000000\n                                            [timezone_type] =\u003e 3\n                                            [timezone] =\u003e America/Sao_Paulo\n                                        )\n\n                                    [reason] =\u003e \n\n                                    [direction] =\u003e Saída\n                                    [type] =\u003e Original\n                                )\n\n                        )\n\n                )\n\n        )\n\n)\n```\n\nObter as ocorrências de um NIS/PIS:\n```php\n$afdReader-\u003egetByUser(62915959739);\n```\n\nObter as ocorrências de um NIS/PIS no período especificado:\n```php\n$afdReader-\u003egetByUser(62915959739, ['from' =\u003e '2015-05-20', 'to' =\u003e '2015-05-20']);\n```\n\nObter as informações de todos os registros:\n```php\n$afdReader-\u003egetAll();\n```\n\n```\nArray\n(\n    [header] =\u003e Array\n        (\n            [sequency] =\u003e 000000001\n            [type] =\u003e 1\n            [entityType] =\u003e CNPJ\n            [entityNumber] =\u003e 32041763000177\n            [cei] =\u003e 000000000000\n            [name] =\u003e NOME DA EMPRESA - LTDA ME\n            [startDate] =\u003e 20052015\n            [endDate] =\u003e 20092015\n            [generationDate] =\u003e DateTime Object\n                (\n                    [date] =\u003e 2015-09-21 09:57:59.000000\n                    [timezone_type] =\u003e 3\n                    [timezone] =\u003e America/Sao_Paulo\n                )\n\n            [generationTime] =\u003e Array\n                (\n                    [hour] =\u003e 10\n                    [minute] =\u003e 43\n                )\n\n        )\n\n    [trailer] =\u003e Array\n        (\n            [sequency] =\u003e 000011305\n            [type] =\u003e 9\n        )\n\n    [detail] =\u003e Array\n        (\n            [62915959739] =\u003e Array\n                (\n                    [20052015] =\u003e Array\n                        (\n                            [01] =\u003e Array\n                                (\n                                    [0] =\u003e Array\n                                        (\n                                            [sequency] =\u003e 000000002\n                                            [dateTime] =\u003e DateTime Object\n                                                (\n                                                    [date] =\u003e 2015-05-20 09:00:00.000000\n                                                    [timezone_type] =\u003e 3\n                                                    [timezone] =\u003e America/Sao_Paulo\n                                                )\n\n                                            [reason] =\u003e \n\n                                            [direction] =\u003e Entrada\n                                            [type] =\u003e Original\n                                        )\n\n                                    [1] =\u003e Array\n                                        (\n                                            [sequency] =\u003e 000000003\n                                            [dateTime] =\u003e DateTime Object\n                                                (\n                                                    [date] =\u003e 2015-05-20 12:04:00.000000\n                                                    [timezone_type] =\u003e 3\n                                                    [timezone] =\u003e America/Sao_Paulo\n                                                )\n\n                                            [reason] =\u003e \n\n                                            [direction] =\u003e Saída\n                                            [type] =\u003e Original\n                                        )\n\n                                )\n\n                            [02] =\u003e Array\n                                (\n                                    [0] =\u003e Array\n                                        (\n                                            [sequency] =\u003e 000000004\n                                            [dateTime] =\u003e DateTime Object\n                                                (\n                                                    [date] =\u003e 2015-05-20 13:14:00.000000\n                                                    [timezone_type] =\u003e 3\n                                                    [timezone] =\u003e America/Sao_Paulo\n                                                )\n\n                                            [reason] =\u003e \n\n                                            [direction] =\u003e Entrada\n                                            [type] =\u003e Original\n                                        )\n\n                                    [1] =\u003e Array\n                                        (\n                                            [sequency] =\u003e 000000005\n                                            [dateTime] =\u003e DateTime Object\n                                                (\n                                                    [date] =\u003e 2015-05-20 18:07:00.000000\n                                                    [timezone_type] =\u003e 3\n                                                    [timezone] =\u003e America/Sao_Paulo\n                                                )\n\n                                            [reason] =\u003e \n\n                                            [direction] =\u003e Saída\n                                            [type] =\u003e Original\n                                        )\n\n                                )\n\n                        )\n                )\n\n        )\n\n)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fconvenia%2Fafd-reader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fconvenia%2Fafd-reader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fconvenia%2Fafd-reader/lists"}