forked from Wavyzz/dolibarr
NEW add multicurrency rate at currency list API
This commit is contained in:
@@ -448,6 +448,7 @@ class Setup extends DolibarrApi
|
|||||||
/**
|
/**
|
||||||
* Get the list of currencies.
|
* Get the list of currencies.
|
||||||
*
|
*
|
||||||
|
* @param int $multicurrency Multicurrency rates (0: no multicurrency, 1: last rate) {@min 0} {@max 1}
|
||||||
* @param string $sortfield Sort field
|
* @param string $sortfield Sort field
|
||||||
* @param string $sortorder Sort order
|
* @param string $sortorder Sort order
|
||||||
* @param int $limit Number of items per page
|
* @param int $limit Number of items per page
|
||||||
@@ -460,13 +461,22 @@ class Setup extends DolibarrApi
|
|||||||
*
|
*
|
||||||
* @throws RestException
|
* @throws RestException
|
||||||
*/
|
*/
|
||||||
public function getListOfCurrencies($sortfield = "code_iso", $sortorder = 'ASC', $limit = 100, $page = 0, $active = 1, $sqlfilters = '')
|
public function getListOfCurrencies($multicurrency = 0, $sortfield = "code_iso", $sortorder = 'ASC', $limit = 100, $page = 0, $active = 1, $sqlfilters = '')
|
||||||
{
|
{
|
||||||
$list = array();
|
$list = array();
|
||||||
//TODO link with multicurrency module
|
|
||||||
$sql = "SELECT t.code_iso, t.label, t.unicode";
|
$sql = "SELECT t.code_iso, t.label, t.unicode";
|
||||||
|
if (!empty($multicurrency)) $sql.= " , cr.date_sync, cr.rate ";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."c_currencies as t";
|
$sql.= " FROM ".MAIN_DB_PREFIX."c_currencies as t";
|
||||||
|
if (!empty($multicurrency)) {
|
||||||
|
$sql.= " JOIN ".MAIN_DB_PREFIX."multicurrency as m ON m.code=t.code_iso";
|
||||||
|
$sql.= " JOIN ".MAIN_DB_PREFIX."multicurrency_rate as cr ON (m.rowid = cr.fk_multicurrency)";
|
||||||
|
}
|
||||||
$sql.= " WHERE t.active = ".$active;
|
$sql.= " WHERE t.active = ".$active;
|
||||||
|
if (!empty($multicurrency)) {
|
||||||
|
$sql.= " AND m.entity IN (".getEntity('multicurrency').")";
|
||||||
|
$sql.= " AND cr.date_sync = (SELECT MAX(cr2.date_sync) FROM ".MAIN_DB_PREFIX."multicurrency_rate AS cr2 WHERE cr2.fk_multicurrency = m.rowid)";
|
||||||
|
}
|
||||||
|
|
||||||
// Add sql filters
|
// Add sql filters
|
||||||
if ($sqlfilters)
|
if ($sqlfilters)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user