mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-25 16:04:46 +00:00
Merge pull request #51044 from frappe/mergify/bp/version-14-hotfix/pr-51037
fix(currency exchange settings): added backward compatibility for frankfurter api (backport #51037)
This commit is contained in:
@@ -19,7 +19,7 @@ frappe.ui.form.on("Currency Exchange Settings", {
|
|||||||
to: "{to_currency}",
|
to: "{to_currency}",
|
||||||
};
|
};
|
||||||
add_param(frm, r.message, params, result);
|
add_param(frm, r.message, params, result);
|
||||||
} else if (frm.doc.service_provider == "frankfurter.dev") {
|
} else if (["frankfurter.app", "frankfurter.dev"].includes(frm.doc.service_provider)) {
|
||||||
let result = ["rates", "{to_currency}"];
|
let result = ["rates", "{to_currency}"];
|
||||||
let params = {
|
let params = {
|
||||||
base: "{from_currency}",
|
base: "{from_currency}",
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ class CurrencyExchangeSettings(Document):
|
|||||||
self.append("req_params", {"key": "date", "value": "{transaction_date}"})
|
self.append("req_params", {"key": "date", "value": "{transaction_date}"})
|
||||||
self.append("req_params", {"key": "from", "value": "{from_currency}"})
|
self.append("req_params", {"key": "from", "value": "{from_currency}"})
|
||||||
self.append("req_params", {"key": "to", "value": "{to_currency}"})
|
self.append("req_params", {"key": "to", "value": "{to_currency}"})
|
||||||
elif self.service_provider == "frankfurter.dev":
|
elif self.service_provider in ("frankfurter.dev", "frankfurter.app"):
|
||||||
self.set("result_key", [])
|
self.set("result_key", [])
|
||||||
self.set("req_params", [])
|
self.set("req_params", [])
|
||||||
|
|
||||||
@@ -80,9 +80,11 @@ class CurrencyExchangeSettings(Document):
|
|||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def get_api_endpoint(service_provider: str | None = None, use_http: bool = False):
|
def get_api_endpoint(service_provider: str | None = None, use_http: bool = False):
|
||||||
if service_provider and service_provider in ["exchangerate.host", "frankfurter.dev"]:
|
if service_provider and service_provider in ["exchangerate.host", "frankfurter.dev", "frankfurter.app"]:
|
||||||
if service_provider == "exchangerate.host":
|
if service_provider == "exchangerate.host":
|
||||||
api = "api.exchangerate.host/convert"
|
api = "api.exchangerate.host/convert"
|
||||||
|
elif service_provider == "frankfurter.app":
|
||||||
|
api = "api.frankfurter.app/{transaction_date}"
|
||||||
elif service_provider == "frankfurter.dev":
|
elif service_provider == "frankfurter.dev":
|
||||||
api = "api.frankfurter.dev/v1/{transaction_date}"
|
api = "api.frankfurter.dev/v1/{transaction_date}"
|
||||||
|
|
||||||
|
|||||||
@@ -377,4 +377,4 @@ execute:frappe.db.set_single_value("Accounts Settings", "receivable_payable_fetc
|
|||||||
erpnext.patches.v14_0.set_update_price_list_based_on
|
erpnext.patches.v14_0.set_update_price_list_based_on
|
||||||
erpnext.patches.v14_0.rename_group_by_to_categorize_by_in_custom_reports
|
erpnext.patches.v14_0.rename_group_by_to_categorize_by_in_custom_reports
|
||||||
erpnext.patches.v14_0.update_full_name_in_contract
|
erpnext.patches.v14_0.update_full_name_in_contract
|
||||||
erpnext.patches.v16_0.update_currency_exchange_settings_for_frankfurter
|
erpnext.patches.v16_0.update_currency_exchange_settings_for_frankfurter #2025-12-11
|
||||||
|
|||||||
@@ -2,8 +2,13 @@ import frappe
|
|||||||
|
|
||||||
|
|
||||||
def execute():
|
def execute():
|
||||||
|
settings_meta = frappe.get_meta("Currency Exchange Settings")
|
||||||
settings = frappe.get_doc("Currency Exchange Settings")
|
settings = frappe.get_doc("Currency Exchange Settings")
|
||||||
if settings.service_provider != "frankfurter.app":
|
|
||||||
|
if (
|
||||||
|
"frankfurter.dev" not in settings_meta.get_options("service_provider").split("\n")
|
||||||
|
or settings.service_provider != "frankfurter.app"
|
||||||
|
):
|
||||||
return
|
return
|
||||||
|
|
||||||
settings.service_provider = "frankfurter.dev"
|
settings.service_provider = "frankfurter.dev"
|
||||||
|
|||||||
Reference in New Issue
Block a user