syapi / erp
Erp
v1.0.7
2020-10-28 16:36 UTC
Requires
- php: >=7.2.0
Requires (Dev)
- phpunit/phpunit: ^8.5
This package is auto-updated.
Last update: 2024-09-29 01:43:09 UTC
README
Erp 库
安装
通过 Courier 安装,只需将其添加到您的 composer.json 文件中
{
"require": {
"sylapi/erp": "~1.0"
}
}
Erp 操作包
用于同步 ERP 系统和外部系统(如在线商店或销售系统)数据的标准方法包。
ERP 系统授权。当需要连接到测试版时,sandbox 方法是可选的。
$courier = new Erp('Nazwa Systemu ERP'); $courier->sandbox(true); $courier->setLogin('123456'); $courier->setPassword('abc12345def');
在某些系统中,授权时可能需要提供更多参数。在这种情况下,应通过单独的 auth 方法传递它们。
$courier->auth([ '_key' => '1234abcd5678', '_password' => '123asd' ]);
商品操作
- getItems()
- getItem()
- getStock()
getItems() 操作
获取包含最小数据的商品列表:id、type、warehouse、stock、avaliable、number、name、ean、sku
$items = $erp->getItems(); if ($items->isSuccess()) { $response = $items->getResponse(); } else { $items->getError(); }
getItem() 操作
获取单个商品的基本数据,返回数据:id、type、warehouse、stock、avaliable、number、name、ean、sku、status
$params = [ 'id' => 123 ]; $item = $erp->getItem($params);
getStock() 操作
获取库存和可用状态,返回数据:id、type、warehouse、stock、avaliable、number、name
$stock = $erp->getStock();
创建销售文档
- createOrder()
- createInvoice()
- createAdvance()
- createPayment()
- deleteOrder()
createOrder() 操作
创建订单和商品预订
$params = [ 'document_def' => 123, 'external_id' => 12345, 'comment' => 'Zamówienie #12345', 'currency' => 'PLN', 'buyer' => [ 'name' => 'Jan Kowalski', 'street' => 'Ulica 2A', 'city' => 'Warszawa', 'postcode' => '22-001', 'country' => 'PL', 'nip' => '', 'email' => 'jan@kowalski.pl', ], 'seller' => [ 'name' => 'Firma sp z o.o.', 'street' => 'Ulica 233', 'city' => 'Poznań', 'postcode' => '23-001', 'country' => 'PL', 'nip' => '', 'email' => 'zoo@firma.pl', ] ]; $params['items'][] = [ 'model' => 'model1', 'warehouse_id' => 1, 'name' => 'Nazwa produktu', 'tax' => 23, 'price_gross' => 233.99, 'quantity' => 2 ]; $order = $erp->createOrder($params);
createInvoice() 操作
需要准备与创建订单相同的数据。
$document = $erp->createInvoice($params);
createAdvance() 操作
创建预付款发票
$params = array( 'order_id' => '123', 'document_def' => '123456', 'type' => '', 'amount' => 100.99, 'sell_date' => '2020-01-01', 'date' => '2020-01-01', 'comment' => 'Zamówienie nr 123', 'country' => 'PL', ); $advance = $erp->createAdvance($params);
createPayment() 操作
发送在线支付信息、结算已付款订单和预订
$params = array( 'order_id' => 123, 'payment_id' => 'payu', 'transaction_id' => '123abc', 'price' => 123.0, 'date' => '2020-01-01' ); $items = $erp->createPayment($params);
deleteOrder() 操作
删除订单/商品预订
$params = [ 'order_id' => 12345, ]; $items = $erp->deleteOrder($params);
创建仓库文档
- createRw()
- createPw()
- createRwpw()
createRw() 操作
创建内部出库文档
$params = [ 'warehouse_id' => '1', 'items' => [ [ 'code' => 'MODEL1', 'quantity' => 2, ], ], 'comment' => 'Informacja dodatkowa' ]; $document = $erp->createRw($params);
createPw() 操作
创建内部入库文档,参数与创建 RW 文档相同
$document = $erp->createPw($params);
createRwpw 操作
某些 ERP 系统允许在处理商品生产的情况下同时创建 RW 和 PW 文档。
$params = [ 'warehouse_from' => 1, 'warehouse_to' => 2, 'order_id' => 12345', 'items_from' => [ [ 'code' => 'MODEL1', 'quantity' => 0.5, ], [ 'code' => 'MODEL2', 'quantity' => 0.21, ], ], 'items_to' => [ [ 'code' => 'MODEL4', 'quantity' => 1, ] ], 'comment' => 'Infomacja dodatkowa' ]; $document = $erp->createRwpw($params);