fix: remove ignore_permissions from get_party_details signature (#55491)

(cherry picked from commit efb8336bf8)

# Conflicts:
#	erpnext/accounts/doctype/sales_invoice/sales_invoice.py
#	erpnext/accounts/party.py
This commit is contained in:
Shllokkk
2026-06-03 10:51:44 +05:30
committed by Mergify
parent afa2437910
commit 4cd39aa147
7 changed files with 39 additions and 19 deletions

View File

@@ -23,12 +23,16 @@ from erpnext.accounts.doctype.tax_withholding_category.tax_withholding_category
get_party_tax_withholding_details,
)
from erpnext.accounts.general_ledger import get_round_off_account_and_cost_center
<<<<<<< HEAD
from erpnext.accounts.party import (
CROSS_PARTY_FIELD_NO_MAP,
get_due_date,
get_party_account,
get_party_details,
)
=======
from erpnext.accounts.party import _get_party_details, get_due_date, get_party_account
>>>>>>> efb8336bf8 (fix: remove ignore_permissions from get_party_details signature (#55491))
from erpnext.accounts.utils import (
cancel_exchange_gain_loss_journal,
get_account_currency,
@@ -2737,7 +2741,7 @@ def update_taxes(
master_doctype=None,
):
# Update Party Details
party_details = get_party_details(
party_details = _get_party_details(
party=party,
party_type=party_type,
company=company,

View File

@@ -74,6 +74,7 @@ class DuplicatePartyAccountError(frappe.ValidationError):
@frappe.whitelist()
def get_party_details(
<<<<<<< HEAD
party=None,
account=None,
party_type="Customer",
@@ -90,11 +91,26 @@ def get_party_details(
shipping_address=None,
dispatch_address=None,
pos_profile=None,
=======
party: str | None = None,
account: str | None = None,
party_type: str = "Customer",
company: str | None = None,
posting_date: str | None = None,
bill_date: str | None = None,
price_list: str | None = None,
currency: str | None = None,
doctype: str | None = None,
fetch_payment_terms_template: bool = True,
party_address: str | None = None,
company_address: str | None = None,
shipping_address: str | None = None,
dispatch_address: str | None = None,
pos_profile: str | None = None,
>>>>>>> efb8336bf8 (fix: remove ignore_permissions from get_party_details signature (#55491))
):
if not party:
return frappe._dict()
if not frappe.db.exists(party_type, party):
frappe.throw(_("{0}: {1} does not exists").format(party_type, party))
return _get_party_details(
party,
account,
@@ -105,7 +121,7 @@ def get_party_details(
price_list,
currency,
doctype,
ignore_permissions,
False,
fetch_payment_terms_template,
party_address,
company_address,

View File

@@ -15,7 +15,7 @@ from frappe.utils import get_url
from frappe.utils.print_format import download_pdf
from frappe.utils.user import get_user_fullname
from erpnext.accounts.party import get_party_account_currency, get_party_details
from erpnext.accounts.party import _get_party_details, get_party_account_currency
from erpnext.buying.utils import validate_for_items
from erpnext.controllers.buying_controller import BuyingController
from erpnext.stock.doctype.material_request.material_request import set_missing_values
@@ -443,7 +443,7 @@ def make_supplier_quotation_from_rfq(source_name, target_doc=None, for_supplier=
def postprocess(source, target_doc):
if for_supplier:
target_doc.supplier = for_supplier
args = get_party_details(for_supplier, party_type="Supplier", ignore_permissions=True)
args = _get_party_details(for_supplier, party_type="Supplier", ignore_permissions=True)
target_doc.currency = args.currency or get_party_account_currency(
"Supplier", for_supplier, source.company
)

View File

@@ -125,12 +125,12 @@ class TestSupplier(FrappeTestCase):
self.assertEqual(supplier.country, "Greece")
def test_party_details_tax_category(self):
from erpnext.accounts.party import get_party_details
from erpnext.accounts.party import _get_party_details
frappe.delete_doc_if_exists("Address", "_Test Address With Tax Category-Billing")
# Tax Category without Address
details = get_party_details("_Test Supplier With Tax Category", party_type="Supplier")
details = _get_party_details("_Test Supplier With Tax Category", party_type="Supplier")
self.assertEqual(details.tax_category, "_Test Tax Category 1")
address = frappe.get_doc(
@@ -147,7 +147,7 @@ class TestSupplier(FrappeTestCase):
).insert()
# Tax Category with Address
details = get_party_details("_Test Supplier With Tax Category", party_type="Supplier")
details = _get_party_details("_Test Supplier With Tax Category", party_type="Supplier")
self.assertEqual(details.tax_category, "_Test Tax Category 2")
# Rollback

View File

@@ -11,7 +11,7 @@ from frappe.utils.data import nowtime
import erpnext
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_dimensions
from erpnext.accounts.doctype.budget.budget import validate_expense_against_budget
from erpnext.accounts.party import get_party_details
from erpnext.accounts.party import _get_party_details
from erpnext.buying.utils import update_last_purchase_rate, validate_for_items
from erpnext.controllers.accounts_controller import get_taxes_and_charges
from erpnext.controllers.sales_and_purchase_return import get_rate_for_return
@@ -165,7 +165,7 @@ class BuyingController(SubcontractingController):
# set contact and address details for supplier, if they are not mentioned
if getattr(self, "supplier", None):
self.update_if_missing(
get_party_details(
_get_party_details(
self.supplier,
party_type="Supplier",
doctype=self.doctype,

View File

@@ -67,7 +67,7 @@ class TestCustomer(FrappeTestCase):
doc.delete()
def test_party_details(self):
from erpnext.accounts.party import get_party_details
from erpnext.accounts.party import _get_party_details
to_check = {
"selling_price_list": None,
@@ -91,7 +91,7 @@ class TestCustomer(FrappeTestCase):
"Contact", "_Test Contact for _Test Customer-_Test Customer", "is_primary_contact", 1
)
details = get_party_details("_Test Customer")
details = _get_party_details("_Test Customer")
for key, value in to_check.items():
val = details.get(key)
@@ -101,13 +101,13 @@ class TestCustomer(FrappeTestCase):
self.assertEqual(value, val)
def test_party_details_tax_category(self):
from erpnext.accounts.party import get_party_details
from erpnext.accounts.party import _get_party_details
frappe.delete_doc_if_exists("Address", "_Test Address With Tax Category-Billing")
frappe.delete_doc_if_exists("Address", "_Test Address With Tax Category-Shipping")
# Tax Category without Address
details = get_party_details("_Test Customer With Tax Category")
details = _get_party_details("_Test Customer With Tax Category")
self.assertEqual(details.tax_category, "_Test Tax Category 1")
billing_address = frappe.get_doc(
@@ -141,13 +141,13 @@ class TestCustomer(FrappeTestCase):
# Tax Category from Billing Address
settings.determine_address_tax_category_from = "Billing Address"
settings.save()
details = get_party_details("_Test Customer With Tax Category")
details = _get_party_details("_Test Customer With Tax Category")
self.assertEqual(details.tax_category, "_Test Tax Category 2")
# Tax Category from Shipping Address
settings.determine_address_tax_category_from = "Shipping Address"
settings.save()
details = get_party_details("_Test Customer With Tax Category")
details = _get_party_details("_Test Customer With Tax Category")
self.assertEqual(details.tax_category, "_Test Tax Category 3")
# Rollback

View File

@@ -7,7 +7,7 @@ from frappe import _, qb
from frappe.query_builder import Criterion
from erpnext import get_default_company
from erpnext.accounts.party import get_party_details
from erpnext.accounts.party import _get_party_details
def execute(filters=None):
@@ -125,7 +125,7 @@ def get_data(filters=None):
def get_customer_details(filters):
customer_details = get_party_details(party=filters.get("customer"), party_type="Customer")
customer_details = _get_party_details(party=filters.get("customer"), party_type="Customer")
customer_details.update(
{"company": get_default_company(), "price_list": customer_details.get("selling_price_list")}
)