ADD Retrieve discount from invoice from API
As I was unable to retrieve discount ID of created discount from invoice with API. This commit add a route to get discount from a specific invoice ID.
This commit is contained in:
parent
cd1f8dd1da
commit
b8cb080f0d
@ -981,6 +981,45 @@ class Invoices extends DolibarrApi
|
|||||||
return $this->_cleanObjectDatas($this->invoice);
|
return $this->_cleanObjectDatas($this->invoice);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get discount from invoice
|
||||||
|
*
|
||||||
|
* @param int $id Id of invoice
|
||||||
|
*
|
||||||
|
* @url GET {id}/discount
|
||||||
|
*
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function getDiscount($id)
|
||||||
|
{
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php';
|
||||||
|
|
||||||
|
if (!DolibarrApiAccess::$user->rights->facture->lire) {
|
||||||
|
throw new RestException(401);
|
||||||
|
}
|
||||||
|
|
||||||
|
$result = $this->invoice->fetch($id);
|
||||||
|
if (!$result) {
|
||||||
|
throw new RestException(404, 'Invoice not found');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DolibarrApi::_checkAccessToResource('facture', $this->invoice->id)) {
|
||||||
|
throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login);
|
||||||
|
}
|
||||||
|
|
||||||
|
$discountcheck = new DiscountAbsolute($this->db);
|
||||||
|
$result = $discountcheck->fetch(0, $this->invoice->id);
|
||||||
|
|
||||||
|
if($result == 0){
|
||||||
|
throw new RestException(404, 'Discount not found');
|
||||||
|
}
|
||||||
|
else if($result < 0){
|
||||||
|
throw new RestException(500, $discountcheck->error);
|
||||||
|
}
|
||||||
|
|
||||||
|
return parent::_cleanObjectDatas($discountcheck);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a discount (credit available) for a credit note or a deposit.
|
* Create a discount (credit available) for a credit note or a deposit.
|
||||||
*
|
*
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user