wisder/php-sigep

与邮政Web服务集成。生成标签、查询价格和期限、打印标签和PLP等。

维护者

详细信息

github.com/wisder/php-sigep

源代码

v1.0.1 2021-08-24 03:25 UTC

This package is auto-updated.

Last update: 2024-08-24 10:35:57 UTC


README

帮助项目成长。提交您的代码源或项目文档的pull request。

PHP SIGEP - 邮政

实施邮政SIGEP Web服务。

查看我们的页面上的在线演示、示例和文档.

与邮政Web服务集成。查询价格和期限、打印标签和PLP等。此API可以

  • 计算订单的价格和交货期限。
  • 获取订单的跟踪数据。
  • 检查两个地址之间是否允许某种服务类型(Sedex、PAC等)。
  • 为邮政生成并发送预清单(PLP)的XML。
  • 生成新的邮戳标签号码。
  • 创建和/或验证标签校验位的有效性(通过Web服务或非Web服务)。
  • 以PDF格式生成PLP报告。
  • 以PDF格式生成邮戳标签。
  • 为每种服务类型生成PDF格式的印章(每种服务的标志)。
  • 获取投递后的PLP数据。
  • [新功能] 暂停邮件投递(也称为交互式投递)
  • [新功能] 代理列表(用于Clique e Retire)
  • [新功能] 为Clique e Retire生成PDF格式的邮戳标签。

要求

  • PHP >= 5.4.0
  • 如果您需要打印标签和报告,请下载FPDF 1.7 www.fpdf.org
    不要忘记在尝试打印报告之前配置FPDF以自动加载。

通过Composer安装(推荐)

  • 我们不通过标签控制版本,但是,只有当代码稳定时,master分支才会更新。因此,最新稳定版本总是master分支。

将以下行添加到您的composer.json文件中:"stavarengo/php-sigep": "dev-master"
"stavarengo/php-sigep-fpdf": "dev-master"

然后通过命令行执行composer update

手动安装

  • 我们不通过标签控制版本,但是,只有当代码稳定时,master分支才会更新。因此,最新稳定版本总是master分支。

  • 下载最新版本。

  • 要使用php-sigep类,您只需加载"php-sigep/src/PhpSigep/Bootstrap.php"文件。这将注册加载器。

常见问题

系统访问授权拒绝

在将此项目用于生产之前,您需要向邮政商业代表申请Web服务的授权和密码。

我在使用测试环境时遇到问题

如果您在尝试使用测试环境时收到以下消息,这意味着邮政Web服务暂时不可用。创建issue是没有用的,最好的做法是等待或尝试联系邮政技术支持。

错误消息:解析WSDL:无法从 'https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl' 加载外部实体 "https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsd"

PHP 5.3相关的问题

此问题已在以下位置报告: stavarengo#35 一些用户在生产和环境中由于PHP版本问题遇到与Correios WebService的连接和认证问题。为了解决这个问题,您可以使用更新的PHP版本(>=5.4)或下载Correios的WSDL并在您的服务器上使用它进行连接。如果您选择下载WSDL,请按照以下步骤操作:

  1. 将此文件保存在您的本地环境中 https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl
  2. 更改您生产环境中的配置以使用您下载的文件。以下是一个示例。
$config = new \PhpSigep\Config();
$config->setEnv(\PhpSigep\Config::ENV_PRODUCTION);
$config->setWsdlAtendeCliente('CAMINHO-DO-SEU-ARQUIVO-LOCAL');
\PhpSigep\Bootstrap::start($config);

注意:此方法在Wamp、Xammp等本地服务器上无法工作。

功能

缓存

PhpSigep的缓存组件受到Zend Framework缓存组件的启发。

默认情况下,PhpSigep的缓存是禁用的。
此缓存存储了一些可重复使用的Correios WebService响应。除了提高请求响应速度外,还可以防止用户在Correios服务器不稳定时受阻(相信我:它经常不稳定)。

要启用缓存,在创建PhpSigep配置时使用“cacheOptions”键。例如:php new \PhpSigep\Config( array( 'cacheOptions' => array( 'storageOptions' => array( 'enabled' => true, 'ttl' => 60*60*24*7,// 一周 ), ), ... ), );storageOptions数组中,您可以使用PhpSigep\Cache\Storage\Adapter\AdapterOptions类中任何属性的名称。

贡献

要运行测试套件,请在命令行中执行./vendor/bin/phpunit

  1. 进行分叉
  2. 为功能创建分支(git checkout -b nova-funcionalidade
  3. 提交您的修改(git commit -am '添加新功能'
  4. 将分支推送到远程(git push origin nova-funcionalidade
  5. 创建新的Pull Request