Skip to content

Commit

Permalink
Added missing methods to client
Browse files Browse the repository at this point in the history
  • Loading branch information
casperbakker committed Aug 2, 2017
1 parent beb3ac0 commit 7c81870
Showing 1 changed file with 152 additions and 23 deletions.
175 changes: 152 additions & 23 deletions src/Client.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class Client
protected $apiversion = 'v1';
protected $useragent = 'Picqer PHP API Client (picqer.com)';

protected $clientversion = '0.10.0';
protected $clientversion = '0.13.0';

protected $debug = false;
protected $skipverification = false;
Expand Down Expand Up @@ -203,6 +203,29 @@ public function deleteProductTag($idproduct, $idtag)
return $this->sendRequest('/products/' . $idproduct . '/tags/' . $idtag, array(), self::METHOD_DELETE);
}

/*
* Stock history
*/
public function getStockHistories($filters = array())
{
return $this->sendRequest('/stockhistory', $filters);
}

public function getStockHistory($idproduct_stock_history)
{
return $this->sendRequest('/stockhistory/' . $idproduct_stock_history);
}

public function getStockHistoryForProduct($idproduct)
{
return $this->getStockHistories(array('idproduct', $idproduct));
}

public function getStockHistoryForWarehouse($idwarehouse)
{
return $this->getStockHistories(array('idwarehouse', $idwarehouse));
}

/*
* Orders
*/
Expand Down Expand Up @@ -247,9 +270,10 @@ public function getOrderProductStatus($idorder)
return $this->sendRequest('/orders/' . $idorder . '/productstatus');
}

/** @deprecated Use `processOrder`, still here for backwards compatibility */
public function closeOrder($idorder)
{
return $this->sendRequest('/orders/' . $idorder . '/close', null, self::METHOD_POST);
return $this->processOrder($idorder);
}

public function processOrder($idorder)
Expand Down Expand Up @@ -331,6 +355,23 @@ public function pickallPicklist($idpicklist)
return $this->sendRequest('/picklists/' . $idpicklist . '/pickall', null, self::METHOD_POST);
}

public function assignPicklistToUser($idpicklist, $iduser)
{
$params = array('iduser' => $iduser);
return $this->sendRequest('/picklists/' . $idpicklist . '/assign', $params, self::METHOD_POST);
}

public function unassignPicklist($idpicklist)
{
return $this->sendRequest('/picklists/' . $idpicklist . '/unassign', null, self::METHOD_POST);
}

public function snoozePicklist($idpicklist, $snooze_until = null)
{
$params = array('snooze_until' => $snooze_until);
return $this->sendRequest('/picklists/' . $idpicklist . '/snooze', $params, self::METHOD_POST);
}

public function createShipment($idpicklist, $params)
{
return $this->sendRequest('/picklists/' . $idpicklist . '/shipments', $params, self::METHOD_POST);
Expand All @@ -341,6 +382,16 @@ public function getShipments($idpicklist)
return $this->sendRequest('/picklists/' . $idpicklist . '/shipments');
}

public function getPicklistPdf($idpicklist)
{
return $this->sendRequest('/picklists/' . $idpicklist . '/picklistpdf');
}

public function getPackinglistPdf($idpicklist)
{
return $this->sendRequest('/picklists/' . $idpicklist . '/packinglistpdf');
}

/*
* Suppliers
*/
Expand All @@ -367,9 +418,29 @@ public function getPurchaseorder($idpurchaseorder)
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder);
}

public function receivePurchaseorderProduct($idpurchaseorder, $params)
public function markPurchaseorderAsPurchased($idpurchaseorder)
{
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder . '/mark-as-purchased', null, self::METHOD_POST);
}

public function cancelPurchaseorder($idpurchaseorder)
{
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder . '/cancel', null, self::METHOD_POST);
}

public function getReceiptsFromPurchaseorder($idpurchaseorder)
{
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder . '/receipts');
}

public function getReceiptFromPurchaseorder($idpurchaseorder, $idreceipt)
{
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder . '/receive', $params, self::METHOD_POST);
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder . '/receipts/' . $idreceipt);
}

public function addReceiptToPurchaseorder($idpurchaseorder, $params)
{
return $this->sendRequest('/purchaseorders/' . $idpurchaseorder . '/receipts', $params, self::METHOD_POST);
}

/*
Expand Down Expand Up @@ -398,27 +469,9 @@ public function getVatgroup($idvatgroup)
return $this->sendRequest('/vatgroups/' . $idvatgroup);
}

/*
* Stock history
*/
public function getStockHistory()
{
return $this->sendRequest('/stockhistory');
}

public function getStockHistoryOfProduct($idproduct)
{
return $this->sendRequest('/stockhistory/' . $idproduct);
}

/*
* Hooks
*/
public function addHook($params)
{
return $this->sendRequest('/hooks', $params, self::METHOD_POST);
}

public function getHooks()
{
return $this->sendRequest('/hooks');
Expand All @@ -429,6 +482,11 @@ public function getHook($id)
return $this->sendRequest('/hooks/' . $id);
}

public function addHook($params)
{
return $this->sendRequest('/hooks', $params, self::METHOD_POST);
}

public function deleteHook($id)
{
return $this->sendRequest('/hooks/' . $id, array(), self::METHOD_DELETE);
Expand All @@ -451,6 +509,11 @@ public function processBackorders()
{
return $this->sendRequest('/backorders/process', null, self::METHOD_POST);
}

public function deleteBackorder($idbackorder)
{
return $this->sendRequest('/backorders/' . $idbackorder, null, self::METHOD_DELETE);
}

/*
* Warehouses
Expand Down Expand Up @@ -481,10 +544,76 @@ public function getPricelist($idpricelist)
/*
* Shipping providers
*/
public function getShippingProividers()
public function getShippingProviders()
{
return $this->sendRequest('/shippingproviders');
}

/*
* Product fields
*/
public function getProductFields()
{
return $this->sendRequest('/productfields');
}

public function getProductField($idproductfield)
{
return $this->sendRequest('/productfields/' . $idproductfield);
}

/*
* Order fields
*/
public function getOrderFields()
{
return $this->sendRequest('/orderfields');
}

public function getOrderField($idorderfield)
{
return $this->sendRequest('/orderfields/' . $idorderfield);
}

/*
* Customer fields
*/
public function getCustomerFields()
{
return $this->sendRequest('/customerfields');
}

public function getCustomerField($idcustomerfield)
{
return $this->sendRequest('/customerfields/' . $idcustomerfield);
}

/*
* Users
*/
public function getUsers()
{
return $this->sendRequest('/users');
}

public function getUser($iduser)
{
return $this->sendRequest('/users/' . $iduser);
}

public function getCurrentUser()
{
return $this->getUser('me');
}

/*
* Templates
*/
public function getTemplates()
{
return $this->sendRequest('/templates');
}


/*
* General
Expand Down

0 comments on commit 7c81870

Please sign in to comment.