dolibarr  20.0.0-beta
Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
SupplierOrders Class Reference
Inheritance diagram for SupplierOrders:
Inheritance graph
[legend]
Collaboration diagram for SupplierOrders:
Collaboration graph
[legend]

Public Member Functions

 __construct ()
 Constructor.
 
 get ($id)
 Get properties of a supplier order object. More...
 
 index ($sortfield="t.rowid", $sortorder='ASC', $limit=100, $page=0, $thirdparty_ids='', $product_ids='', $status='', $sqlfilters='', $sqlfilterlines='', $properties='')
 List orders. More...
 
 post ($request_data=null)
 Create supplier order object. More...
 
 put ($id, $request_data=null)
 Update supplier order. More...
 
 getContacts ($id, $source, $type='')
 Get contacts of given supplier order. More...
 
 postContact ($id, $contactid, $type, $source)
 Add a contact type of given supplier order. More...
 
 deleteContact ($id, $contactid, $type, $source)
 Unlink a contact type of given supplier order. More...
 
 delete ($id)
 Delete supplier order. More...
 
 validate ($id, $idwarehouse=0, $notrigger=0)
 Validate an order. More...
 
 approve ($id, $idwarehouse=0, $secondlevel=0)
 Approve an order. More...
 
 makeOrder ($id, $date, $method, $comment='')
 Sends an order to the vendor. More...
 
 receiveOrder ($id, $closeopenorder, $comment, $lines)
 Receives the order, dispatches products. More...
 
- Public Member Functions inherited from DolibarrApi
 __construct ($db, $cachedir='', $refreshCache=false)
 Constructor. More...
 

Protected Member Functions

 _cleanObjectDatas ($object)
 Clean sensible object datas. More...
 
- Protected Member Functions inherited from DolibarrApi
 _checkValForAPI ($field, $value, $object)
 Check and convert a string depending on its type/name. More...
 
 _filterObjectProperties ($object, $properties)
 Filter properties that will be returned on object. More...
 
 _checkFilters ($sqlfilters, &$error='')
 Return if a $sqlfilters parameter is valid Function no more used. More...
 

Private Member Functions

 _validate ($data)
 Validate fields before create or update object. More...
 

Additional Inherited Members

- Static Protected Member Functions inherited from DolibarrApi
static _checkAccessToResource ($resource, $resource_id=0, $dbtablename='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid')
 Check access by user to a given resource. More...
 
static _forge_criteria_callback ($matches)
 Function to forge a SQL criteria from a Generic filter string. More...
 

Detailed Description

Definition at line 29 of file api_supplier_orders.class.php.

Member Function Documentation

◆ _cleanObjectDatas()

SupplierOrders::_cleanObjectDatas (   $object)
protected

Clean sensible object datas.

Parameters
Object$objectObject to clean
Returns
Object Object with cleaned properties

Reimplemented from DolibarrApi.

Definition at line 726 of file api_supplier_orders.class.php.

References $object.

◆ _validate()

SupplierOrders::_validate (   $data)
private

Validate fields before create or update object.

Parameters
array$dataDatas to validate
Returns
array
Exceptions
RestException

Definition at line 748 of file api_supplier_orders.class.php.

◆ approve()

SupplierOrders::approve (   $id,
  $idwarehouse = 0,
  $secondlevel = 0 
)

Approve an order.

Parameters
int$idOrder ID
int$idwarehouseWarehouse ID
int$secondlevel1=Does not execute triggers, 0= execute triggers

@url POST {id}/approve

Returns
array FIXME An error 403 is returned if the request has an empty body. Error message: "Forbidden: Content type `text/plain` is not supported." Workaround: send this in the body { "idwarehouse": 0, "secondlevel": 0 }

Definition at line 552 of file api_supplier_orders.class.php.

◆ delete()

SupplierOrders::delete (   $id)

Delete supplier order.

Parameters
int$idSupplier order ID
Returns
array Array of result

Definition at line 459 of file api_supplier_orders.class.php.

◆ deleteContact()

SupplierOrders::deleteContact (   $id,
  $contactid,
  $type,
  $source 
)

Unlink a contact type of given supplier order.

Parameters
int$idId of supplier order to update
int$contactidId of contact/user to add
string$typeType of the contact (BILLING, SHIPPING, CUSTOMER, SALESREPFOLL, ...).
string$sourceSource of the contact (internal, external).

@url DELETE {id}/contact/{contactid}/{type}/{source}

Returns
array
Exceptions
RestException401
RestException404
RestException500 System error

Definition at line 410 of file api_supplier_orders.class.php.

◆ get()

SupplierOrders::get (   $id)

Get properties of a supplier order object.

Return an array with supplier order information

Parameters
int$idID of supplier order
Returns
array|mixed data without useless information
Exceptions
RestException

Definition at line 64 of file api_supplier_orders.class.php.

◆ getContacts()

SupplierOrders::getContacts (   $id,
  $source,
  $type = '' 
)

Get contacts of given supplier order.

Return an array with contact information

Parameters
int$idID of supplier order
string$sourceSource of the contact (internal, external, all).
string$typeType of the contact (BILLING, SHIPPING, CUSTOMER, SALESREPFOLL, ...)
Returns
Object Object with cleaned properties

@url GET {id}/contacts

Exceptions
RestException

Definition at line 318 of file api_supplier_orders.class.php.

◆ index()

SupplierOrders::index (   $sortfield = "t.rowid",
  $sortorder = 'ASC',
  $limit = 100,
  $page = 0,
  $thirdparty_ids = '',
  $product_ids = '',
  $status = '',
  $sqlfilters = '',
  $sqlfilterlines = '',
  $properties = '' 
)

List orders.

Get a list of supplier orders

Parameters
string$sortfieldSort field
string$sortorderSort order
int$limitLimit for list
int$pagePage number
string$thirdparty_idsThirdparty ids to filter orders of (example '1' or '1,2,3') {@pattern /^[0-9,]*$/i}
string$product_idsProduct ids to filter orders of (example '1' or '1,2,3') {@pattern /^[0-9,]*$/i}
string$statusFilter by order status : draft | validated | approved | running | received_start | received_end | cancelled | refused
string$sqlfiltersOther criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.datec:<:'20160101')"
string$sqlfilterlinesOther criteria to filter answers separated by a comma. Syntax example "(tl.fk_product:=:'17') and (tl.price:<:'250')"
string$propertiesRestrict the data returned to these properties. Ignored if empty. Comma separated list of properties names
Returns
array Array of order objects
Exceptions
RestException

Definition at line 102 of file api_supplier_orders.class.php.

◆ makeOrder()

SupplierOrders::makeOrder (   $id,
  $date,
  $method,
  $comment = '' 
)

Sends an order to the vendor.

Parameters
int$idOrder ID
integer$dateDate (unix timestamp in sec)
int$methodMethod
string$commentComment

@url POST {id}/makeorder

Returns
array FIXME An error 403 is returned if the request has an empty body. Error message: "Forbidden: Content type `text/plain` is not supported." Workaround: send this in the body { "date": 0, "method": 0, "comment": "" }

Definition at line 603 of file api_supplier_orders.class.php.

◆ post()

SupplierOrders::post (   $request_data = null)

Create supplier order object.

Example: {"ref": "auto", "ref_supplier": "1234", "socid": "1", "multicurrency_code": "SEK", "multicurrency_tx": 1, "tva_tx": 25, "note": "Imported via the REST API"}

Parameters
array$request_dataRequest datas
Returns
int ID of supplier order

Definition at line 222 of file api_supplier_orders.class.php.

◆ postContact()

SupplierOrders::postContact (   $id,
  $contactid,
  $type,
  $source 
)

Add a contact type of given supplier order.

Parameters
int$idId of supplier order to update
int$contactidId of contact/user to add
string$typeType of the contact (BILLING, SHIPPING, CUSTOMER, SALESREPFOLL, ...)
string$sourceSource of the contact (external, internal)
Returns
array

@url POST {id}/contact/{contactid}/{type}/{source}

Exceptions
RestException401
RestException404

Definition at line 361 of file api_supplier_orders.class.php.

◆ put()

SupplierOrders::put (   $id,
  $request_data = null 
)

Update supplier order.

Parameters
int$idId of supplier order to update
array$request_dataDatas
Returns
Object|false Updated object

Definition at line 264 of file api_supplier_orders.class.php.

◆ receiveOrder()

SupplierOrders::receiveOrder (   $id,
  $closeopenorder,
  $comment,
  $lines 
)

Receives the order, dispatches products.

Example: { "closeopenorder": 1, "comment": "", "lines": [{ "id": 14, "fk_product": 112, "qty": 18, "warehouse": 1, "price": 114, "comment": "", "eatby": 0, "sellby": 0, "batch": 0, "notrigger": 0 }] }

Parameters
int$idOrder ID
integer$closeopenorderClose order if everything is received {@required false}
string$commentComment {@required false}
array$linesArray of product dispatches

@url POST {id}/receive

Returns
array FIXME An error 403 is returned if the request has an empty body. Error message: "Forbidden: Content type `text/plain` is not supported."

Definition at line 666 of file api_supplier_orders.class.php.

◆ validate()

SupplierOrders::validate (   $id,
  $idwarehouse = 0,
  $notrigger = 0 
)

Validate an order.

Parameters
int$idOrder ID
int$idwarehouseWarehouse ID
int$notrigger1=Does not execute triggers, 0= execute triggers

@url POST {id}/validate

Returns
array FIXME An error 403 is returned if the request has an empty body. Error message: "Forbidden: Content type `text/plain` is not supported." Workaround: send this in the body { "idwarehouse": 0, "notrigger": 0 }

Definition at line 504 of file api_supplier_orders.class.php.


The documentation for this class was generated from the following file: