Healthcare Invoice - Practitioner Specific Service Item
diff --git a/erpnext/healthcare/utils.py b/erpnext/healthcare/utils.py
index b966721..3580003 100644
--- a/erpnext/healthcare/utils.py
+++ b/erpnext/healthcare/utils.py
@@ -152,9 +152,13 @@
def service_item_and_practitioner_charge(doc):
is_ip = doc_is_ip(doc)
if is_ip:
- service_item = get_healthcare_service_item("inpatient_visit_charge_item")
+ service_item = get_practitioner_service_item(doc.practitioner, "inpatient_visit_charge_item")
+ if not service_item:
+ service_item = get_healthcare_service_item("inpatient_visit_charge_item")
else:
- service_item = get_healthcare_service_item("op_consulting_charge_item")
+ service_item = get_practitioner_service_item(doc.practitioner, "op_consulting_charge_item")
+ if not service_item:
+ service_item = get_healthcare_service_item("op_consulting_charge_item")
if not service_item:
throw_config_service_item(is_ip)
@@ -182,6 +186,9 @@
+ """ <b><a href="#Form/Healthcare Practitioner/{0}">{0}</a></b>""".format(practitioner))
frappe.throw(msg)
+def get_practitioner_service_item(practitioner, service_item_field):
+ return frappe.db.get_value("Healthcare Practitioner", practitioner, service_item_field)
+
def get_healthcare_service_item(service_item_field):
return frappe.db.get_value("Healthcare Settings", None, service_item_field)