npservices/nps-soap

V1.0.6 2024-04-16 09:32 UTC

This package is auto-updated.

Last update: 2024-09-16 10:18:15 UTC


README

注意

  • 严格禁止删除 LICENSE.md 文件。
  • 未经事先同意,严禁重新发布项目。

在此包中,进行了最大程度的检查,以避免错误(检查 customerIdmakerCodes 等)。

安装包

使用 COMPOSER(发布在 Packagist 上的项目)。

composer require npservices/nps-soap

包的使用

在您希望使用此包的文件中,需要执行以下操作

use NPServices\NpsSoapPackage\NPS;

然后需要调用此包

$nps = new NPS("url_wsdl","votre_identifiant", "votre_mot_de_passe");

以下是可用的方法列表

  • getMakerCodes (获取 makerCodes 列表)
  • getAvailability (请求可用性)
  • createOrder (创建订单)

getMakerCodes

此方法不需要任何参数即可返回 makerCodes 列表

$nps->getMakerCodes();

getAvailability

此方法需要 2 个参数才能运行:(! - 需要遵守的参数顺序)

  • 请求的参考(‘exempleDispo01’)
  • 包含所有要检查元素的列表

示例

$itemsToCheck = [
	[
		'reference' => '835035',
		'makerCode' => 'VALEO',
		'positionNumber' => 1,
		'requestedQuantity' => 2,
	],
	[
		'reference' => '835035',
		'makerCode' => 'VALEO',
		'positionNumber' => 2,
		'requestedQuantity' => 3,
	],
];

! - 列表中的每个元素都必须包含:‘reference’,‘makerCode’,‘positionNumber’,‘requestedQuantity’

说明

  • ‘reference’ 是您的产品参考
  • ‘makerCode’ 是提供参考的设备供应商
  • ‘positionNumber’ 简单对应于输出列表中参考的位置
  • ‘requestedQuantity’ 是对参考的请求数量

使用

$nps->getAvailability('TEST', $itemsToCheck);

createOrder

此方法需要 10 个参数:(! - 需要遵守的参数顺序)

  • customerId → 您的客户订单号(《C01XXXXX》或《CNDXXXXX》)
  • contact → 您客户的完整姓名(《Alfred Archambault》)
  • phone → 您客户的电话号码(《06.01.02.03.04》)
  • email → 您客户的电子邮件(《example.ex@test.fr》)
  • reference → 您命令的参考(《exempleCommande01》)
  • entries → 包含所有要订购元素的列表
  • billingAddress → 包含账单地址信息的列表 (必须包含以下字段:'name1', 'street1', 'postalCode', 'city', 'countryIsoCode', 'countryName')
  • shippingAddress → 包含发货地址信息的列表 (必须包含以下字段:'name1', 'street1', 'postalCode', 'city', 'countryIsoCode', 'countryName')
  • deliveryId → 您的发货地址编号(《C00》或《LIVXX》或《L0099》)
  • express → 是否为快递订单?(true 或 false)

使用示例:我们将使用相同的地址进行账单和发货

$address = [
	'societe' => 'societe',
	'name1' => 'Alfred',
	'name2' => 'Archambault',
	'street1' => '53, rue Beauvau',
	'street2' => 'résidence B',
	'postalCode' => '57070',
	'city' => 'METZ',
	'countryIsoCode' => 'fr',
	'countryName' => 'France',
];

要订购的项目列表

$itemsToOrder = [
	[
		'reference' => '835035',
		'makerCode' => 'VALEO',
		'positionNumber' => 1,
		'requestedQuantity' => 2,
	],
	[
		'reference' => '835035',
		'makerCode' => 'VALEO',
		'positionNumber' => 2,
		'requestedQuantity' => 3,
	],
];

提交订单

$nps->createOrder(
	'CNDXXXXX', //ID Client
	'Alfred Archambault', //Contact (Nom complet)
	'01.52.42.99.41', //Numéro de Téléphone
	'example.ex@test.fr', //Email
	'exempleCommande01', //Nom pour votre commande
	$itemsToOrder, //Liste des éléments a commander
	$address, //Billing Address
	$address, //Shipping Address
	'L0099', //DeliveryId
	false //Est-ce une livraison express
);