diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
index b2044ab0934..216d3e603a1 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
@@ -1034,7 +1034,7 @@ var get_drugs_to_invoice = function(frm) {
description:'Quantity will be calculated only for items which has "Nos" as UoM. You may change as required for each invoice item.',
get_query: function(doc) {
return {
- filters: { patient :dialog.get_value("patient") }
+ filters: { patient: dialog.get_value("patient"), docstatus: 1 }
};
}
},
diff --git a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js
index 7f866e19964..fa9188449e3 100644
--- a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js
+++ b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js
@@ -48,6 +48,13 @@ frappe.ui.form.on('Clinical Procedure', {
}
};
});
+ frm.set_query("practitioner", function() {
+ return {
+ filters: {
+ 'department': frm.doc.medical_department
+ }
+ };
+ });
if(frm.doc.consume_stock){
frm.set_indicator_formatter('item_code',
function(doc) { return (doc.qty<=doc.actual_qty) ? "green" : "orange" ; });
@@ -217,6 +224,20 @@ frappe.ui.form.on('Clinical Procedure', {
}
});
}
+ },
+ practitioner: function(frm) {
+ if(frm.doc.practitioner){
+ frappe.call({
+ "method": "frappe.client.get",
+ args: {
+ doctype: "Healthcare Practitioner",
+ name: frm.doc.practitioner
+ },
+ callback: function (data) {
+ frappe.model.set_value(frm.doctype,frm.docname, "medical_department",data.message.department);
+ }
+ });
+ }
}
});
diff --git a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.json b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.json
index c755b7fe790..3097ba3b9ad 100644
--- a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.json
+++ b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.json
@@ -212,39 +212,6 @@
"translatable": 0,
"unique": 0
},
- {
- "allow_bulk_edit": 0,
- "allow_in_quick_entry": 0,
- "allow_on_submit": 0,
- "bold": 0,
- "collapsible": 0,
- "columns": 0,
- "fieldname": "procedure_template",
- "fieldtype": "Link",
- "hidden": 0,
- "ignore_user_permissions": 0,
- "ignore_xss_filter": 0,
- "in_filter": 0,
- "in_global_search": 0,
- "in_list_view": 1,
- "in_standard_filter": 0,
- "label": "Procedure Template",
- "length": 0,
- "no_copy": 0,
- "options": "Clinical Procedure Template",
- "permlevel": 0,
- "precision": "",
- "print_hide": 0,
- "print_hide_if_no_value": 0,
- "read_only": 0,
- "remember_last_selected_value": 0,
- "report_hide": 0,
- "reqd": 1,
- "search_index": 0,
- "set_only_once": 1,
- "translatable": 0,
- "unique": 0
- },
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
@@ -311,6 +278,39 @@
"translatable": 0,
"unique": 0
},
+ {
+ "allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
+ "allow_on_submit": 0,
+ "bold": 0,
+ "collapsible": 0,
+ "columns": 0,
+ "fieldname": "practitioner",
+ "fieldtype": "Link",
+ "hidden": 0,
+ "ignore_user_permissions": 0,
+ "ignore_xss_filter": 0,
+ "in_filter": 0,
+ "in_global_search": 0,
+ "in_list_view": 0,
+ "in_standard_filter": 0,
+ "label": "Healthcare Practitioner",
+ "length": 0,
+ "no_copy": 0,
+ "options": "Healthcare Practitioner",
+ "permlevel": 0,
+ "precision": "",
+ "print_hide": 0,
+ "print_hide_if_no_value": 0,
+ "read_only": 0,
+ "remember_last_selected_value": 0,
+ "report_hide": 0,
+ "reqd": 0,
+ "search_index": 0,
+ "set_only_once": 1,
+ "translatable": 0,
+ "unique": 0
+ },
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
@@ -342,6 +342,39 @@
"translatable": 0,
"unique": 0
},
+ {
+ "allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
+ "allow_on_submit": 0,
+ "bold": 0,
+ "collapsible": 0,
+ "columns": 0,
+ "fieldname": "procedure_template",
+ "fieldtype": "Link",
+ "hidden": 0,
+ "ignore_user_permissions": 0,
+ "ignore_xss_filter": 0,
+ "in_filter": 0,
+ "in_global_search": 0,
+ "in_list_view": 1,
+ "in_standard_filter": 0,
+ "label": "Procedure Template",
+ "length": 0,
+ "no_copy": 0,
+ "options": "Clinical Procedure Template",
+ "permlevel": 0,
+ "precision": "",
+ "print_hide": 0,
+ "print_hide_if_no_value": 0,
+ "read_only": 0,
+ "remember_last_selected_value": 0,
+ "report_hide": 0,
+ "reqd": 1,
+ "search_index": 0,
+ "set_only_once": 1,
+ "translatable": 0,
+ "unique": 0
+ },
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
diff --git a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py
index 6d00c25117d..a21f5acb7e2 100644
--- a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py
+++ b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py
@@ -6,7 +6,7 @@ from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.model.document import Document
-from frappe.utils import cint, flt, nowdate, nowtime
+from frappe.utils import cint, flt, nowdate, nowtime, cstr
from erpnext.healthcare.doctype.healthcare_settings.healthcare_settings import get_account
from erpnext.healthcare.doctype.lab_test.lab_test import create_sample_doc
from erpnext.stock.stock_ledger import get_previous_sle
@@ -81,9 +81,9 @@ class ClinicalProcedure(Document):
allow_start = self.set_actual_qty()
if allow_start:
self.status = 'In Progress'
+ insert_clinical_procedure_to_medical_record(self)
else:
self.status = 'Draft'
-
self.save()
def set_actual_qty(self):
@@ -201,3 +201,18 @@ def create_procedure(appointment):
if warehouse:
procedure.warehouse = warehouse
return procedure.as_dict()
+
+def insert_clinical_procedure_to_medical_record(doc):
+ subject = cstr(doc.procedure_template) +" "+ doc.practitioner
+ if subject and doc.notes:
+ subject += " "+doc.notes
+
+ medical_record = frappe.new_doc("Patient Medical Record")
+ medical_record.patient = doc.patient
+ medical_record.subject = subject
+ medical_record.status = "Open"
+ medical_record.communication_date = doc.start_date
+ medical_record.reference_doctype = "Clinical Procedure"
+ medical_record.reference_name = doc.name
+ medical_record.reference_owner = doc.owner
+ medical_record.save(ignore_permissions=True)
diff --git a/erpnext/healthcare/doctype/healthcare_settings/healthcare_settings.json b/erpnext/healthcare/doctype/healthcare_settings/healthcare_settings.json
index 24c3cd90334..c3c14274b5e 100644
--- a/erpnext/healthcare/doctype/healthcare_settings/healthcare_settings.json
+++ b/erpnext/healthcare/doctype/healthcare_settings/healthcare_settings.json
@@ -1226,7 +1226,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "default": "Hello {{doc.patient}}, Your {{doc.test_name}} result is ready with {{doc.company }}. \nThank You, Good day!",
+ "default": "Hello {{doc.patient}}, Your {{doc.lab_test_name}} result is ready with {{doc.company }}. \nThank You, Good day!",
"fieldname": "sms_printed",
"fieldtype": "Small Text",
"hidden": 0,
@@ -1290,7 +1290,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "default": "Hello {{doc.patient}}, Your {{doc.test_name}} result has been emailed to {{doc.email}}. \n{{doc.company }}. \nThank You, Good day!",
+ "default": "Hello {{doc.patient}}, Your {{doc.lab_test_name}} result has been emailed to {{doc.email}}. \n{{doc.company }}. \nThank You, Good day!",
"fieldname": "sms_emailed",
"fieldtype": "Small Text",
"hidden": 0,
@@ -1327,7 +1327,7 @@
"issingle": 1,
"istable": 0,
"max_attachments": 0,
- "modified": "2018-08-03 15:18:36.631441",
+ "modified": "2018-09-03 11:46:25.317482",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Healthcare Settings",
diff --git a/erpnext/healthcare/doctype/lab_prescription/lab_prescription.json b/erpnext/healthcare/doctype/lab_prescription/lab_prescription.json
index ce6b20618bb..d6691d4295d 100644
--- a/erpnext/healthcare/doctype/lab_prescription/lab_prescription.json
+++ b/erpnext/healthcare/doctype/lab_prescription/lab_prescription.json
@@ -18,7 +18,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_code",
+ "fieldname": "lab_test_code",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
@@ -51,8 +51,8 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fetch_from": "test_code.test_name",
- "fieldname": "test_name",
+ "fetch_from": "lab_test_code.lab_test_name",
+ "fieldname": "lab_test_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -150,7 +150,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_comment",
+ "fieldname": "lab_test_comment",
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -182,7 +182,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_created",
+ "fieldname": "lab_test_created",
"fieldtype": "Check",
"hidden": 1,
"ignore_user_permissions": 0,
@@ -218,7 +218,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
- "modified": "2018-08-06 16:53:02.033406",
+ "modified": "2018-09-04 09:02:18.592637",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Lab Prescription",
diff --git a/erpnext/healthcare/doctype/lab_test/lab_test.js b/erpnext/healthcare/doctype/lab_test/lab_test.js
index 06637bcdcce..b60e70fd766 100644
--- a/erpnext/healthcare/doctype/lab_test/lab_test.js
+++ b/erpnext/healthcare/doctype/lab_test/lab_test.js
@@ -10,14 +10,14 @@ cur_frm.cscript.custom_refresh = function(doc) {
frappe.ui.form.on('Lab Test', {
setup: function(frm) {
frm.get_field('normal_test_items').grid.editable_fields = [
- {fieldname: 'test_name', columns: 3},
- {fieldname: 'test_event', columns: 2},
+ {fieldname: 'lab_test_name', columns: 3},
+ {fieldname: 'lab_test_event', columns: 2},
{fieldname: 'result_value', columns: 2},
- {fieldname: 'test_uom', columns: 1},
+ {fieldname: 'lab_test_uom', columns: 1},
{fieldname: 'normal_range', columns: 2}
];
frm.get_field('special_test_items').grid.editable_fields = [
- {fieldname: 'test_particulars', columns: 3},
+ {fieldname: 'lab_test_particulars', columns: 3},
{fieldname: 'result_value', columns: 7}
];
},
diff --git a/erpnext/healthcare/doctype/lab_test/lab_test.json b/erpnext/healthcare/doctype/lab_test/lab_test.json
index 9db3ae50e22..00e613a179f 100644
--- a/erpnext/healthcare/doctype/lab_test/lab_test.json
+++ b/erpnext/healthcare/doctype/lab_test/lab_test.json
@@ -54,7 +54,6 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "default": "",
"fieldname": "naming_series",
"fieldtype": "Select",
"hidden": 0,
@@ -67,7 +66,7 @@
"label": "Series",
"length": 0,
"no_copy": 0,
- "options": "HLC-LT-.YYYY.-",
+ "options": "LP-",
"permlevel": 0,
"precision": "",
"print_hide": 1,
@@ -810,7 +809,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_name",
+ "fieldname": "lab_test_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -906,7 +905,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_group",
+ "fieldname": "lab_test_group",
"fieldtype": "Link",
"hidden": 1,
"ignore_user_permissions": 0,
@@ -1159,7 +1158,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_comment",
+ "fieldname": "lab_test_comment",
"fieldtype": "Text",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -1518,7 +1517,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
- "modified": "2018-08-21 14:44:21.605374",
+ "modified": "2018-09-04 10:19:33.422304",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Lab Test",
@@ -1587,7 +1586,7 @@
"read_only": 0,
"read_only_onload": 0,
"restrict_to_domain": "Healthcare",
- "search_fields": "patient,practitioner,test_name,sample",
+ "search_fields": "patient,practitioner,lab_test_name,sample",
"show_name_in_global_search": 1,
"sort_field": "modified",
"sort_order": "DESC",
@@ -1595,4 +1594,4 @@
"track_changes": 1,
"track_seen": 1,
"track_views": 0
-}
+}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/lab_test/lab_test.py b/erpnext/healthcare/doctype/lab_test/lab_test.py
index 98ab696e900..b0bd4c6a680 100644
--- a/erpnext/healthcare/doctype/lab_test/lab_test.py
+++ b/erpnext/healthcare/doctype/lab_test/lab_test.py
@@ -28,10 +28,10 @@ class LabTest(Document):
def after_insert(self):
if(self.prescription):
- frappe.db.set_value("Lab Prescription", self.prescription, "test_created", 1)
+ frappe.db.set_value("Lab Prescription", self.prescription, "lab_test_created", 1)
if frappe.db.get_value("Lab Prescription", self.prescription, 'invoiced') == 1:
self.invoiced = True
- if not self.test_name and self.template:
+ if not self.lab_test_name and self.template:
self.load_test_from_template()
self.reload()
@@ -44,10 +44,10 @@ def create_test_from_template(lab_test):
template = frappe.get_doc("Lab Test Template", lab_test.template)
patient = frappe.get_doc("Patient", lab_test.patient)
- lab_test.test_name = template.test_name
+ lab_test.lab_test_name = template.lab_test_name
lab_test.result_date = getdate()
lab_test.department = template.department
- lab_test.test_group = template.test_group
+ lab_test.lab_test_group = template.lab_test_group
lab_test = create_sample_collection(lab_test, template, patient, None)
lab_test = load_result_format(lab_test, template, None, None)
@@ -77,10 +77,10 @@ def create_lab_test_from_encounter(encounter_id):
lab_test_created = False
encounter = frappe.get_doc("Patient Encounter", encounter_id)
- lab_test_ids = frappe.db.sql("""select lp.name, lp.test_code, lp.invoiced
+ lab_test_ids = frappe.db.sql("""select lp.name, lp.lab_test_code, lp.invoiced
from `tabPatient Encounter` et, `tabLab Prescription` lp
where et.patient=%s and lp.parent=%s and
- lp.parent=et.name and lp.test_created=0 and et.docstatus=1""", (encounter.patient, encounter_id))
+ lp.parent=et.name and lp.lab_test_created=0 and et.docstatus=1""", (encounter.patient, encounter_id))
if lab_test_ids:
patient = frappe.get_doc("Patient", encounter.patient)
@@ -89,7 +89,7 @@ def create_lab_test_from_encounter(encounter_id):
if template:
lab_test = create_lab_test_doc(lab_test_id[2], encounter.practitioner, patient, template)
lab_test.save(ignore_permissions = True)
- frappe.db.set_value("Lab Prescription", lab_test_id[0], "test_created", 1)
+ frappe.db.set_value("Lab Prescription", lab_test_id[0], "lab_test_created", 1)
if not lab_test_created:
lab_test_created = lab_test.name
else:
@@ -98,17 +98,17 @@ def create_lab_test_from_encounter(encounter_id):
def create_lab_test_from_invoice(invoice_name):
- lab_test_created = False
+ lab_tests_created = False
invoice = frappe.get_doc("Sales Invoice", invoice_name)
if invoice.patient:
patient = frappe.get_doc("Patient", invoice.patient)
for item in invoice.items:
- test_created = 0
+ lab_test_created = 0
if item.reference_dt == "Lab Prescription":
- test_created = frappe.db.get_value("Lab Prescription", item.reference_dn, "test_created")
+ lab_test_created = frappe.db.get_value("Lab Prescription", item.reference_dn, "lab_test_created")
elif item.reference_dt == "Lab Test":
- test_created = 1
- if test_created != 1:
+ lab_test_created = 1
+ if lab_test_created != 1:
template = get_lab_test_template(item.item_code)
if template:
lab_test = create_lab_test_doc(True, invoice.ref_practitioner, patient, template)
@@ -118,11 +118,11 @@ def create_lab_test_from_invoice(invoice_name):
if item.reference_dt != "Lab Prescription":
frappe.db.set_value("Sales Invoice Item", item.name, "reference_dt", "Lab Test")
frappe.db.set_value("Sales Invoice Item", item.name, "reference_dn", lab_test.name)
- if not lab_test_created:
- lab_test_created = lab_test.name
+ if not lab_tests_created:
+ lab_tests_created = lab_test.name
else:
- lab_test_created += ", "+lab_test.name
- return lab_test_created
+ lab_tests_created += ", "+lab_test.name
+ return lab_tests_created
def get_lab_test_template(item):
template_id = check_template_exists(item)
@@ -152,7 +152,7 @@ def create_lab_test_doc(invoiced, practitioner, patient, template):
lab_test.mobile = patient.mobile
lab_test.department = template.department
lab_test.template = template.name
- lab_test.test_group = template.test_group
+ lab_test.lab_test_group = template.lab_test_group
lab_test.result_date = getdate()
lab_test.report_preference = patient.report_preference
return lab_test
@@ -160,9 +160,9 @@ def create_lab_test_doc(invoiced, practitioner, patient, template):
def create_normals(template, lab_test):
lab_test.normal_toggle = "1"
normal = lab_test.append("normal_test_items")
- normal.test_name = template.test_name
- normal.test_uom = template.test_uom
- normal.normal_range = template.test_normal_range
+ normal.lab_test_name = template.lab_test_name
+ normal.lab_test_uom = template.lab_test_uom
+ normal.normal_range = template.lab_test_normal_range
normal.require_result_value = 1
normal.template = template.name
@@ -171,11 +171,11 @@ def create_compounds(template, lab_test, is_group):
for normal_test_template in template.normal_test_templates:
normal = lab_test.append("normal_test_items")
if is_group:
- normal.test_event = normal_test_template.test_event
+ normal.lab_test_event = normal_test_template.lab_test_event
else:
- normal.test_name = normal_test_template.test_event
+ normal.lab_test_name = normal_test_template.lab_test_event
- normal.test_uom = normal_test_template.test_uom
+ normal.lab_test_uom = normal_test_template.lab_test_uom
normal.normal_range = normal_test_template.normal_range
normal.require_result_value = 1
normal.template = template.name
@@ -186,7 +186,7 @@ def create_specials(template, lab_test):
lab_test.sensitivity_toggle = "1"
for special_test_template in template.special_test_template:
special = lab_test.append("special_test_items")
- special.test_particulars = special_test_template.particulars
+ special.lab_test_particulars = special_test_template.particulars
special.require_result_value = 1
special.template = template.name
@@ -202,7 +202,7 @@ def create_sample_doc(template, patient, invoice):
sample_collection = frappe.get_doc("Sample Collection",sample_exist[0][0])
quantity = int(sample_collection.sample_quantity)+int(template.sample_quantity)
if(template.sample_collection_details):
- sample_collection_details = sample_collection.sample_collection_details+"\n==============\n"+"Test :"+template.test_name+"\n"+"Collection Detials:\n\t"+template.sample_collection_details
+ sample_collection_details = sample_collection.sample_collection_details+"\n==============\n"+"Test :"+template.lab_test_name+"\n"+"Collection Detials:\n\t"+template.sample_collection_details
frappe.db.set_value("Sample Collection", sample_collection.name, "sample_collection_details",sample_collection_details)
frappe.db.set_value("Sample Collection", sample_collection.name, "sample_quantity",quantity)
@@ -218,7 +218,7 @@ def create_sample_doc(template, patient, invoice):
sample_collection.sample_uom = template.sample_uom
sample_collection.sample_quantity = template.sample_quantity
if(template.sample_collection_details):
- sample_collection.sample_collection_details = "Test :"+template.test_name+"\n"+"Collection Detials:\n\t"+template.sample_collection_details
+ sample_collection.sample_collection_details = "Test :"+template.lab_test_name+"\n"+"Collection Detials:\n\t"+template.sample_collection_details
sample_collection.save(ignore_permissions=True)
return sample_collection
@@ -231,42 +231,42 @@ def create_sample_collection(lab_test, template, patient, invoice):
return lab_test
def load_result_format(lab_test, template, prescription, invoice):
- if(template.test_template_type == 'Single'):
+ if(template.lab_test_template_type == 'Single'):
create_normals(template, lab_test)
- elif(template.test_template_type == 'Compound'):
+ elif(template.lab_test_template_type == 'Compound'):
create_compounds(template, lab_test, False)
- elif(template.test_template_type == 'Descriptive'):
+ elif(template.lab_test_template_type == 'Descriptive'):
create_specials(template, lab_test)
- elif(template.test_template_type == 'Grouped'):
+ elif(template.lab_test_template_type == 'Grouped'):
#iterate for each template in the group and create one result for all.
- for test_group in template.test_groups:
+ for lab_test_group in template.lab_test_groups:
#template_in_group = None
- if(test_group.test_template):
+ if(lab_test_group.lab_test_template):
template_in_group = frappe.get_doc("Lab Test Template",
- test_group.test_template)
+ lab_test_group.lab_test_template)
if(template_in_group):
- if(template_in_group.test_template_type == 'Single'):
+ if(template_in_group.lab_test_template_type == 'Single'):
create_normals(template_in_group, lab_test)
- elif(template_in_group.test_template_type == 'Compound'):
+ elif(template_in_group.lab_test_template_type == 'Compound'):
normal_heading = lab_test.append("normal_test_items")
- normal_heading.test_name = template_in_group.test_name
+ normal_heading.lab_test_name = template_in_group.lab_test_name
normal_heading.require_result_value = 0
normal_heading.template = template_in_group.name
create_compounds(template_in_group, lab_test, True)
- elif(template_in_group.test_template_type == 'Descriptive'):
+ elif(template_in_group.lab_test_template_type == 'Descriptive'):
special_heading = lab_test.append("special_test_items")
- special_heading.test_name = template_in_group.test_name
+ special_heading.lab_test_name = template_in_group.lab_test_name
special_heading.require_result_value = 0
special_heading.template = template_in_group.name
create_specials(template_in_group, lab_test)
else:
normal = lab_test.append("normal_test_items")
- normal.test_name = test_group.group_event
- normal.test_uom = test_group.group_test_uom
- normal.normal_range = test_group.group_test_normal_range
+ normal.lab_test_name = lab_test_group.group_event
+ normal.lab_test_uom = lab_test_group.group_test_uom
+ normal.normal_range = lab_test_group.group_test_normal_range
normal.require_result_value = 1
normal.template = template.name
- if(template.test_template_type != 'No Result'):
+ if(template.lab_test_template_type != 'No Result'):
if(prescription):
lab_test.prescription = prescription
if(invoice):
@@ -281,9 +281,35 @@ def get_employee_by_user_id(user_id):
return employee
def insert_lab_test_to_medical_record(doc):
- subject = cstr(doc.test_name)
- if(doc.test_comment):
- subject += ", \n"+ cstr(doc.test_comment)
+ table_row = False
+ subject = cstr(doc.lab_test_name)
+ if doc.practitioner:
+ subject += " "+ doc.practitioner
+ if doc.normal_test_items:
+ item = doc.normal_test_items[0]
+ comment = ""
+ if item.lab_test_comment:
+ comment = str(item.lab_test_comment)
+ event = ""
+ if item.lab_test_event:
+ event = item.lab_test_event
+ table_row = item.lab_test_name +" "+ event +" "+ item.result_value
+ if item.normal_range:
+ table_row += " normal_range("+item.normal_range+")"
+ table_row += " "+comment
+
+ elif doc.special_test_items:
+ item = doc.special_test_items[0]
+ table_row = item.lab_test_particulars +" "+ item.result_value
+
+ elif doc.sensitivity_test_items:
+ item = doc.sensitivity_test_items[0]
+ table_row = item.antibiotic +" "+ item.antibiotic_sensitivity
+
+ if table_row:
+ subject += " "+table_row
+ if doc.lab_test_comment:
+ subject += " "+ cstr(doc.lab_test_comment)
medical_record = frappe.new_doc("Patient Medical Record")
medical_record.patient = doc.patient
@@ -303,5 +329,5 @@ def delete_lab_test_from_medical_record(self):
@frappe.whitelist()
def get_lab_test_prescribed(patient):
- return frappe.db.sql("""select cp.name, cp.test_code, cp.parent, cp.invoiced, ct.practitioner, ct.encounter_date from `tabPatient Encounter` ct,
- `tabLab Prescription` cp where ct.patient=%s and cp.parent=ct.name and cp.test_created=0""", (patient))
+ return frappe.db.sql("""select cp.name, cp.lab_test_code, cp.parent, cp.invoiced, ct.practitioner, ct.encounter_date from `tabPatient Encounter` ct,
+ `tabLab Prescription` cp where ct.patient=%s and cp.parent=ct.name and cp.lab_test_created=0""", (patient))
diff --git a/erpnext/healthcare/doctype/lab_test_groups/lab_test_groups.json b/erpnext/healthcare/doctype/lab_test_groups/lab_test_groups.json
index 82d88eeda08..e51d8b75575 100644
--- a/erpnext/healthcare/doctype/lab_test_groups/lab_test_groups.json
+++ b/erpnext/healthcare/doctype/lab_test_groups/lab_test_groups.json
@@ -13,6 +13,7 @@
"fields": [
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -42,17 +43,18 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval:doc.template_or_new_line == 'Add Test'",
- "fieldname": "test_template",
+ "fieldname": "lab_test_template",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
@@ -75,17 +77,18 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fetch_from": "test_template.test_rate",
- "fieldname": "test_rate",
+ "fetch_from": "lab_test_template.lab_test_rate",
+ "fieldname": "lab_test_rate",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -108,17 +111,18 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fetch_from": "test_template.test_description",
- "fieldname": "test_description",
+ "fetch_from": "lab_test_template.lab_test_description",
+ "fieldname": "lab_test_description",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -141,11 +145,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -173,11 +178,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -206,11 +212,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -238,11 +245,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -268,7 +276,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
- "translatable": 0,
+ "translatable": 0,
"unique": 0
}
],
@@ -282,7 +290,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
- "modified": "2018-05-25 22:43:38.667043",
+ "modified": "2018-09-04 09:49:24.817787",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Lab Test Groups",
@@ -297,5 +305,6 @@
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 0,
- "track_seen": 0
+ "track_seen": 0,
+ "track_views": 0
}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/lab_test_template/lab_test_template.js b/erpnext/healthcare/doctype/lab_test_template/lab_test_template.js
index a8202982d95..3eb4f6abbbd 100644
--- a/erpnext/healthcare/doctype/lab_test_template/lab_test_template.js
+++ b/erpnext/healthcare/doctype/lab_test_template/lab_test_template.js
@@ -2,18 +2,18 @@
// License: ESS license.txt
frappe.ui.form.on("Lab Test Template",{
- test_name: function(frm) {
- if(!frm.doc.test_code)
- frm.set_value("test_code", frm.doc.test_name);
- if(!frm.doc.test_description)
- frm.set_value("test_description", frm.doc.test_name);
+ lab_test_name: function(frm) {
+ if(!frm.doc.lab_test_code)
+ frm.set_value("lab_test_code", frm.doc.lab_test_name);
+ if(!frm.doc.lab_test_description)
+ frm.set_value("lab_test_description", frm.doc.lab_test_name);
},
refresh : function(frm){
// Restrict Special, Grouped type templates in Child TestGroups
- frm.set_query("test_template", "test_groups", function() {
+ frm.set_query("lab_test_template", "lab_test_groups", function() {
return {
filters: {
- test_template_type:['in',['Single','Compound']]
+ lab_test_template_type:['in',['Single','Compound']]
}
};
});
@@ -21,7 +21,7 @@ frappe.ui.form.on("Lab Test Template",{
});
cur_frm.cscript.custom_refresh = function(doc) {
- cur_frm.set_df_property("test_code", "read_only", doc.__islocal ? 0 : 1);
+ cur_frm.set_df_property("lab_test_code", "read_only", doc.__islocal ? 0 : 1);
if(!doc.__islocal) {
cur_frm.add_custom_button(__('Change Template Code'), function() {
@@ -88,13 +88,13 @@ var change_template_code = function(frm,doc){
});
d.show();
d.set_values({
- 'Test Code': doc.test_code
+ 'Test Code': doc.lab_test_code
});
- var change_test_code_from_template = function(test_code,doc){
+ var change_test_code_from_template = function(lab_test_code,doc){
frappe.call({
"method": "erpnext.healthcare.doctype.lab_test_template.lab_test_template.change_test_code_from_template",
- "args": {test_code: test_code, doc: doc},
+ "args": {lab_test_code: lab_test_code, doc: doc},
callback: function (data) {
frappe.set_route("Form", "Lab Test Template", data.message);
}
@@ -102,22 +102,22 @@ var change_template_code = function(frm,doc){
};
};
-frappe.ui.form.on("Lab Test Template", "test_name", function(frm){
+frappe.ui.form.on("Lab Test Template", "lab_test_name", function(frm){
frm.doc.change_in_item = 1;
});
-frappe.ui.form.on("Lab Test Template", "test_rate", function(frm){
+frappe.ui.form.on("Lab Test Template", "lab_test_rate", function(frm){
frm.doc.change_in_item = 1;
});
-frappe.ui.form.on("Lab Test Template", "test_group", function(frm){
+frappe.ui.form.on("Lab Test Template", "lab_test_group", function(frm){
frm.doc.change_in_item = 1;
});
-frappe.ui.form.on("Lab Test Template", "test_description", function(frm){
+frappe.ui.form.on("Lab Test Template", "lab_test_description", function(frm){
frm.doc.change_in_item = 1;
@@ -126,7 +126,7 @@ frappe.ui.form.on("Lab Test Template", "test_description", function(frm){
frappe.ui.form.on("Lab Test Groups", "template_or_new_line", function (frm, cdt, cdn) {
var child = locals[cdt][cdn];
if(child.template_or_new_line =="Add new line"){
- frappe.model.set_value(cdt, cdn, 'test_template', "");
- frappe.model.set_value(cdt, cdn, 'test_description', "");
+ frappe.model.set_value(cdt, cdn, 'lab_test_template', "");
+ frappe.model.set_value(cdt, cdn, 'lab_test_description', "");
}
});
diff --git a/erpnext/healthcare/doctype/lab_test_template/lab_test_template.json b/erpnext/healthcare/doctype/lab_test_template/lab_test_template.json
index 35620e9ad43..a707560f650 100644
--- a/erpnext/healthcare/doctype/lab_test_template/lab_test_template.json
+++ b/erpnext/healthcare/doctype/lab_test_template/lab_test_template.json
@@ -3,7 +3,7 @@
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 1,
- "autoname": "field:test_code",
+ "autoname": "field:lab_test_code",
"beta": 1,
"creation": "2016-03-29 17:35:36.761223",
"custom": 0,
@@ -19,7 +19,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_name",
+ "fieldname": "lab_test_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -84,7 +84,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_code",
+ "fieldname": "lab_test_code",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -104,10 +104,10 @@
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
- "search_index": 1,
+ "search_index": 0,
"set_only_once": 0,
"translatable": 0,
- "unique": 0
+ "unique": 1
},
{
"allow_bulk_edit": 0,
@@ -117,7 +117,7 @@
"collapsible": 0,
"columns": 0,
"description": "",
- "fieldname": "test_group",
+ "fieldname": "lab_test_group",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
@@ -216,7 +216,7 @@
"columns": 0,
"default": "",
"description": "Single for results which require only a single input, result UOM and normal value \n \nCompound for results which require multiple input fields with corresponding event names, result UOMs and normal values\n \nDescriptive for tests which have multiple result components and corresponding result entry fields. \n \nGrouped for test templates which are a group of other test templates.\n \nNo Result for tests with no results. Also, no Lab Test is created. e.g.. Sub Tests for Grouped results.",
- "fieldname": "test_template_type",
+ "fieldname": "lab_test_template_type",
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -250,7 +250,7 @@
"collapsible": 0,
"columns": 0,
"default": "1",
- "depends_on": "eval:doc.test_template_type != 'Grouped'",
+ "depends_on": "eval:doc.lab_test_template_type != 'Grouped'",
"description": "If unchecked, the item wont be appear in Sales Invoice, but can be used in group test creation. ",
"fieldname": "is_billable",
"fieldtype": "Check",
@@ -286,7 +286,7 @@
"columns": 0,
"depends_on": "eval:doc.is_billable == 1",
"description": "This value is updated in the Default Sales Price List.",
- "fieldname": "test_rate",
+ "fieldname": "lab_test_rate",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -319,7 +319,7 @@
"collapsible": 0,
"collapsible_depends_on": "",
"columns": 0,
- "depends_on": "eval:doc.test_template_type == 'Single'",
+ "depends_on": "eval:doc.lab_test_template_type == 'Single'",
"fieldname": "section_break_normal",
"fieldtype": "Section Break",
"hidden": 0,
@@ -352,7 +352,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_uom",
+ "fieldname": "lab_test_uom",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
@@ -385,7 +385,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_normal_range",
+ "fieldname": "lab_test_normal_range",
"fieldtype": "Long Text",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -449,7 +449,7 @@
"collapsible": 0,
"collapsible_depends_on": "",
"columns": 0,
- "depends_on": "eval:doc.test_template_type == 'Compound'",
+ "depends_on": "eval:doc.lab_test_template_type == 'Compound'",
"fieldname": "section_break_compound",
"fieldtype": "Section Break",
"hidden": 0,
@@ -514,7 +514,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "depends_on": "eval:doc.test_template_type == 'Descriptive'",
+ "depends_on": "eval:doc.lab_test_template_type == 'Descriptive'",
"fieldname": "section_break_special",
"fieldtype": "Section Break",
"hidden": 0,
@@ -612,7 +612,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "depends_on": "eval:doc.test_template_type == 'Grouped'",
+ "depends_on": "eval:doc.lab_test_template_type == 'Grouped'",
"fieldname": "section_break_group",
"fieldtype": "Section Break",
"hidden": 0,
@@ -645,7 +645,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_groups",
+ "fieldname": "lab_test_groups",
"fieldtype": "Table",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -709,7 +709,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_description",
+ "fieldname": "lab_test_description",
"fieldtype": "Text",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -975,7 +975,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
- "modified": "2018-07-02 11:58:00.266070",
+ "modified": "2018-09-04 11:16:02.349707",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Lab Test Template",
@@ -1025,11 +1025,12 @@
"read_only": 0,
"read_only_onload": 0,
"restrict_to_domain": "Healthcare",
- "search_fields": "test_code,test_name,test_template_type",
+ "search_fields": "lab_test_code,lab_test_name,lab_test_template_type",
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
- "title_field": "test_name",
+ "title_field": "lab_test_name",
"track_changes": 1,
- "track_seen": 0
+ "track_seen": 0,
+ "track_views": 0
}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/lab_test_template/lab_test_template.py b/erpnext/healthcare/doctype/lab_test_template/lab_test_template.py
index 62a3b306c80..101e143c123 100644
--- a/erpnext/healthcare/doctype/lab_test_template/lab_test_template.py
+++ b/erpnext/healthcare/doctype/lab_test_template/lab_test_template.py
@@ -14,14 +14,14 @@ class LabTestTemplate(Document):
updating_item(self)
item_price = item_price_exist(self)
if not item_price:
- if(self.test_rate != 0.0):
+ if(self.lab_test_rate != 0.0):
price_list_name = frappe.db.get_value("Price List", {"selling": 1})
- if(self.test_rate):
- make_item_price(self.test_code, price_list_name, self.test_rate)
+ if(self.lab_test_rate):
+ make_item_price(self.lab_test_code, price_list_name, self.lab_test_rate)
else:
- make_item_price(self.test_code, price_list_name, 0.0)
+ make_item_price(self.lab_test_code, price_list_name, 0.0)
else:
- frappe.db.set_value("Item Price", item_price, "price_list_rate", self.test_rate)
+ frappe.db.set_value("Item Price", item_price, "price_list_rate", self.lab_test_rate)
frappe.db.set_value(self.doctype,self.name,"change_in_item",0)
elif(self.is_billable == 0 and self.item):
@@ -44,7 +44,7 @@ class LabTestTemplate(Document):
def item_price_exist(doc):
item_price = frappe.db.exists({
"doctype": "Item Price",
- "item_code": doc.test_code})
+ "item_code": doc.lab_test_code})
if(item_price):
return item_price[0][0]
else:
@@ -53,7 +53,7 @@ def item_price_exist(doc):
def updating_item(self):
frappe.db.sql("""update `tabItem` set item_name=%s, item_group=%s, disabled=0, standard_rate=%s,
description=%s, modified=NOW() where item_code=%s""",
- (self.test_name, self.test_group , self.test_rate, self.test_description, self.item))
+ (self.lab_test_name, self.lab_test_group , self.lab_test_rate, self.lab_test_description, self.item))
def create_item_from_template(doc):
if(doc.is_billable == 1):
@@ -63,10 +63,10 @@ def create_item_from_template(doc):
#insert item
item = frappe.get_doc({
"doctype": "Item",
- "item_code": doc.test_code,
- "item_name":doc.test_name,
- "item_group": doc.test_group,
- "description":doc.test_description,
+ "item_code": doc.lab_test_code,
+ "item_name":doc.lab_test_name,
+ "item_group": doc.lab_test_group,
+ "description":doc.lab_test_description,
"is_sales_item": 1,
"is_service_item": 1,
"is_purchase_item": 0,
@@ -79,11 +79,11 @@ def create_item_from_template(doc):
#insert item price
#get item price list to insert item price
- if(doc.test_rate != 0.0):
+ if(doc.lab_test_rate != 0.0):
price_list_name = frappe.db.get_value("Price List", {"selling": 1})
- if(doc.test_rate):
- make_item_price(item.name, price_list_name, doc.test_rate)
- item.standard_rate = doc.test_rate
+ if(doc.lab_test_rate):
+ make_item_price(item.name, price_list_name, doc.lab_test_rate)
+ item.standard_rate = doc.lab_test_rate
else:
make_item_price(item.name, price_list_name, 0.0)
item.standard_rate = 0.0
@@ -102,20 +102,20 @@ def make_item_price(item, price_list_name, item_price):
}).insert(ignore_permissions=True)
@frappe.whitelist()
-def change_test_code_from_template(test_code, doc):
+def change_test_code_from_template(lab_test_code, doc):
args = json.loads(doc)
doc = frappe._dict(args)
item_exist = frappe.db.exists({
"doctype": "Item",
- "item_code": test_code})
+ "item_code": lab_test_code})
if(item_exist):
- frappe.throw(_("Code {0} already exist").format(test_code))
+ frappe.throw(_("Code {0} already exist").format(lab_test_code))
else:
- frappe.rename_doc("Item", doc.name, test_code, ignore_permissions = True)
- frappe.db.set_value("Lab Test Template",doc.name,"test_code",test_code)
- frappe.rename_doc("Lab Test Template", doc.name, test_code, ignore_permissions = True)
- return test_code
+ frappe.rename_doc("Item", doc.name, lab_test_code, ignore_permissions = True)
+ frappe.db.set_value("Lab Test Template",doc.name,"lab_test_code",lab_test_code)
+ frappe.rename_doc("Lab Test Template", doc.name, lab_test_code, ignore_permissions = True)
+ return lab_test_code
@frappe.whitelist()
def disable_enable_test_template(status, name, is_billable):
diff --git a/erpnext/healthcare/doctype/lab_test_template/lab_test_template_list.js b/erpnext/healthcare/doctype/lab_test_template/lab_test_template_list.js
index 26f55c33b8a..a16a72f55b2 100644
--- a/erpnext/healthcare/doctype/lab_test_template/lab_test_template_list.js
+++ b/erpnext/healthcare/doctype/lab_test_template/lab_test_template_list.js
@@ -2,7 +2,7 @@
(c) ESS 2015-16
*/
frappe.listview_settings['Lab Test Template'] = {
- add_fields: ["test_name", "test_code", "test_rate"],
+ add_fields: ["lab_test_name", "lab_test_code", "lab_test_rate"],
filters:[["disabled","=",0]],
/* get_indicator: function(doc) {
if(doc.disabled==1){
diff --git a/erpnext/healthcare/doctype/lab_test_uom/lab_test_uom.json b/erpnext/healthcare/doctype/lab_test_uom/lab_test_uom.json
index fab88e2268d..a6d52249875 100644
--- a/erpnext/healthcare/doctype/lab_test_uom/lab_test_uom.json
+++ b/erpnext/healthcare/doctype/lab_test_uom/lab_test_uom.json
@@ -3,7 +3,7 @@
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 1,
- "autoname": "field:test_uom",
+ "autoname": "field:lab_test_uom",
"beta": 1,
"creation": "2016-03-29 17:28:08.630148",
"custom": 0,
@@ -14,11 +14,12 @@
"fields": [
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_uom",
+ "fieldname": "lab_test_uom",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -27,7 +28,7 @@
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
- "label": "Test UOM",
+ "label": "Lab Test UOM",
"length": 0,
"no_copy": 0,
"permlevel": 0,
@@ -40,10 +41,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
- "unique": 0
+ "translatable": 0,
+ "unique": 1
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -70,6 +73,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
}
],
@@ -83,7 +87,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
- "modified": "2017-10-05 11:24:15.687464",
+ "modified": "2018-09-04 11:02:53.202718",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Lab Test UOM",
@@ -92,7 +96,6 @@
"permissions": [
{
"amend": 0,
- "apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
@@ -112,7 +115,6 @@
},
{
"amend": 0,
- "apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -135,11 +137,12 @@
"read_only": 0,
"read_only_onload": 0,
"restrict_to_domain": "Healthcare",
- "search_fields": "test_uom",
+ "search_fields": "lab_test_uom",
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
- "title_field": "test_uom",
+ "title_field": "lab_test_uom",
"track_changes": 1,
- "track_seen": 0
+ "track_seen": 0,
+ "track_views": 0
}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/normal_test_items/normal_test_items.json b/erpnext/healthcare/doctype/normal_test_items/normal_test_items.json
index f53f001569f..a7a952b8cd9 100644
--- a/erpnext/healthcare/doctype/normal_test_items/normal_test_items.json
+++ b/erpnext/healthcare/doctype/normal_test_items/normal_test_items.json
@@ -13,11 +13,12 @@
"fields": [
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_name",
+ "fieldname": "lab_test_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -39,15 +40,17 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_event",
+ "fieldname": "lab_test_event",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -69,10 +72,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -100,15 +105,17 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_uom",
+ "fieldname": "lab_test_uom",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -130,10 +137,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -160,15 +169,17 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_comment",
+ "fieldname": "lab_test_comment",
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
@@ -190,10 +201,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -221,10 +234,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -252,6 +267,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
}
],
@@ -265,7 +281,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
- "modified": "2017-10-04 17:13:06.376928",
+ "modified": "2018-09-04 11:42:43.095726",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Normal Test Items",
@@ -280,5 +296,6 @@
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 0,
- "track_seen": 0
+ "track_seen": 0,
+ "track_views": 0
}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/normal_test_template/normal_test_template.json b/erpnext/healthcare/doctype/normal_test_template/normal_test_template.json
index 265c1163b75..a36c28d070b 100644
--- a/erpnext/healthcare/doctype/normal_test_template/normal_test_template.json
+++ b/erpnext/healthcare/doctype/normal_test_template/normal_test_template.json
@@ -13,6 +13,7 @@
"fields": [
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -39,15 +40,17 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_event",
+ "fieldname": "lab_test_event",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -69,15 +72,17 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_uom",
+ "fieldname": "lab_test_uom",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
@@ -100,10 +105,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -130,10 +137,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -159,6 +168,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
}
],
@@ -172,7 +182,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
- "modified": "2017-10-04 16:58:43.990804",
+ "modified": "2018-09-04 11:42:30.766950",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Normal Test Template",
@@ -187,5 +197,6 @@
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 0,
- "track_seen": 0
+ "track_seen": 0,
+ "track_views": 0
}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/patient_appointment/patient_appointment.py b/erpnext/healthcare/doctype/patient_appointment/patient_appointment.py
index 3e6706f170a..7d948b8187b 100755
--- a/erpnext/healthcare/doctype/patient_appointment/patient_appointment.py
+++ b/erpnext/healthcare/doctype/patient_appointment/patient_appointment.py
@@ -337,7 +337,7 @@ def get_events(start, end, filters=None):
from frappe.desk.calendar import get_event_conditions
conditions = get_event_conditions("Patient Appointment", filters)
- data = frappe.db.sql("""select name, patient, physician, status,
+ data = frappe.db.sql("""select name, patient, practitioner, status,
duration, timestamp(appointment_date, appointment_time) as
'appointment_date' from `tabPatient Appointment` where
(appointment_date between %(start)s and %(end)s)
diff --git a/erpnext/healthcare/doctype/patient_encounter/patient_encounter.js b/erpnext/healthcare/doctype/patient_encounter/patient_encounter.js
index 2dd3512bc09..c7df5b7cd94 100644
--- a/erpnext/healthcare/doctype/patient_encounter/patient_encounter.js
+++ b/erpnext/healthcare/doctype/patient_encounter/patient_encounter.js
@@ -9,16 +9,16 @@ frappe.ui.form.on('Patient Encounter', {
{fieldname: 'dosage', columns: 2},
{fieldname: 'period', columns: 2}
];
- frm.get_field('test_prescription').grid.editable_fields = [
- {fieldname: 'test_code', columns: 2},
- {fieldname: 'test_name', columns: 4},
- {fieldname: 'test_comment', columns: 4}
+ frm.get_field('lab_test_prescription').grid.editable_fields = [
+ {fieldname: 'lab_test_code', columns: 2},
+ {fieldname: 'lab_test_name', columns: 4},
+ {fieldname: 'lab_test_comment', columns: 4}
];
},
refresh: function(frm) {
refresh_field('drug_prescription');
- refresh_field('test_prescription');
+ refresh_field('lab_test_prescription');
if (!frm.doc.__islocal){
frappe.call({
method: 'frappe.client.get_value',
@@ -72,7 +72,7 @@ frappe.ui.form.on('Patient Encounter', {
}
};
});
- frm.set_query("test_code", "test_prescription", function() {
+ frm.set_query("lab_test_code", "lab_test_prescription", function() {
return {
filters: {
is_billable:'1'
diff --git a/erpnext/healthcare/doctype/patient_encounter/patient_encounter.json b/erpnext/healthcare/doctype/patient_encounter/patient_encounter.json
index 6f00e5b465b..91c9d7bcf2c 100644
--- a/erpnext/healthcare/doctype/patient_encounter/patient_encounter.json
+++ b/erpnext/healthcare/doctype/patient_encounter/patient_encounter.json
@@ -975,7 +975,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_prescription",
+ "fieldname": "lab_test_prescription",
"fieldtype": "Table",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -1141,7 +1141,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
- "modified": "2018-08-21 14:44:40.378365",
+ "modified": "2018-09-04 11:50:52.217175",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Patient Encounter",
@@ -1180,4 +1180,4 @@
"track_changes": 1,
"track_seen": 1,
"track_views": 0
-}
+}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/patient_encounter/patient_encounter.py b/erpnext/healthcare/doctype/patient_encounter/patient_encounter.py
index 4c62e57537e..fe7ac8eb33e 100644
--- a/erpnext/healthcare/doctype/patient_encounter/patient_encounter.py
+++ b/erpnext/healthcare/doctype/patient_encounter/patient_encounter.py
@@ -45,12 +45,18 @@ def delete_medical_record(encounter):
frappe.db.sql("""delete from `tabPatient Medical Record` where reference_name = %s""", (encounter.name))
def set_subject_field(encounter):
- subject = "No Diagnosis "
+ subject = encounter.practitioner+" "
+ if(encounter.symptoms):
+ subject += "Symptoms: "+ cstr(encounter.symptoms)+". "
+ else:
+ subject += "No Symptoms "
if(encounter.diagnosis):
- subject = "Diagnosis: \n"+ cstr(encounter.diagnosis)+". "
+ subject += "Diagnosis: "+ cstr(encounter.diagnosis)+". "
+ else:
+ subject += "No Diagnosis "
if(encounter.drug_prescription):
subject +="\nDrug(s) Prescribed. "
- if(encounter.test_prescription):
+ if(encounter.lab_test_prescription):
subject += "\nTest(s) Prescribed."
if(encounter.procedure_prescription):
subject += "\nProcedure(s) Prescribed."
diff --git a/erpnext/healthcare/doctype/special_test_items/special_test_items.json b/erpnext/healthcare/doctype/special_test_items/special_test_items.json
index 4c97e41138c..a15806e8a52 100644
--- a/erpnext/healthcare/doctype/special_test_items/special_test_items.json
+++ b/erpnext/healthcare/doctype/special_test_items/special_test_items.json
@@ -14,11 +14,12 @@
"fields": [
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
- "fieldname": "test_particulars",
+ "fieldname": "lab_test_particulars",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -40,10 +41,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -72,11 +75,13 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0,
"width": ""
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -103,10 +108,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
+ "allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -134,6 +141,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
+ "translatable": 0,
"unique": 0
}
],
@@ -147,7 +155,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
- "modified": "2017-10-04 16:15:12.642699",
+ "modified": "2018-09-04 12:01:18.801216",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Special Test Items",
@@ -162,5 +170,6 @@
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 0,
- "track_seen": 0
+ "track_seen": 0,
+ "track_views": 0
}
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/vital_signs/vital_signs.json b/erpnext/healthcare/doctype/vital_signs/vital_signs.json
index 83548595524..234871c75bd 100644
--- a/erpnext/healthcare/doctype/vital_signs/vital_signs.json
+++ b/erpnext/healthcare/doctype/vital_signs/vital_signs.json
@@ -244,37 +244,6 @@
"translatable": 0,
"unique": 0
},
- {
- "allow_bulk_edit": 0,
- "allow_in_quick_entry": 0,
- "allow_on_submit": 0,
- "bold": 0,
- "collapsible": 0,
- "columns": 0,
- "fieldname": "column_break_4",
- "fieldtype": "Column Break",
- "hidden": 0,
- "ignore_user_permissions": 0,
- "ignore_xss_filter": 0,
- "in_filter": 0,
- "in_global_search": 0,
- "in_list_view": 0,
- "in_standard_filter": 0,
- "length": 0,
- "no_copy": 0,
- "permlevel": 0,
- "precision": "",
- "print_hide": 0,
- "print_hide_if_no_value": 0,
- "read_only": 0,
- "remember_last_selected_value": 0,
- "report_hide": 0,
- "reqd": 0,
- "search_index": 0,
- "set_only_once": 0,
- "translatable": 0,
- "unique": 0
- },
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
@@ -967,7 +936,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
- "modified": "2018-07-17 14:04:09.604470",
+ "modified": "2018-08-26 10:26:20.896305",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Vital Signs",
@@ -1023,5 +992,6 @@
"sort_order": "DESC",
"title_field": "patient",
"track_changes": 1,
- "track_seen": 1
-}
+ "track_seen": 1,
+ "track_views": 0
+}
\ No newline at end of file
diff --git a/erpnext/healthcare/print_format/encounter_print/encounter_print.json b/erpnext/healthcare/print_format/encounter_print/encounter_print.json
index b33c777939d..20e44b79049 100644
--- a/erpnext/healthcare/print_format/encounter_print/encounter_print.json
+++ b/erpnext/healthcare/print_format/encounter_print/encounter_print.json
@@ -7,10 +7,10 @@
"docstatus": 0,
"doctype": "Print Format",
"font": "Default",
- "html": "
\n {% if letter_head and not no_letterhead -%}\n
{{ letter_head }}
\n
\n {% else %}\n
\n
{{doc.name}} \n \n {%- endif %}\n
\n
\n {% if doc.appointment %}\n\t
\n\t\t\t
\n\t\t\tAppointment \n\t\t\t
\n\t\t\t
\n\t\t\t: {{doc.appointment}}\n\t\t\t
\n\t\t
\n\t\t{%- endif -%}\n\n
\n\t\t
\n\t\t\t Patient \n\t\t
\n {% if doc.patient %}\n\t\t
\n\t\t\t : {{doc.patient}}\n\t\t
\n {% else %}\n
\n\t\t\t : Patient Name \n\t\t
\n {%- endif -%}\n\t\t
\n\t
\n\t\t\t
\n\t\t\t\tAge \n\t\t\t
\n\t\t\t
\n\t\t\t : {{doc.patient_age}}\n\t\t\t
\n\t\t
\n\n
\n
\n\t\t\t\tGender \n\t\t\t
\n\t\t\t
\n\t\t\t : {{doc.patient_sex}}\n\t\t\t
\n
\n\n
\n
\n\n
\n\t
\n\t\t Healthcare Practitioner \n\t
\n {% if doc.practitioner %}\n\t
\n\t\t\t: {{doc.practitioner}}\n\t
\n {%- endif -%}\n\t
\n\n {% if doc.encounter_date %}\n\t
\n\t\t
\n\t\tDate \n\t\t
\n\t\t
\n\t\t: {{doc.encounter_date}}\n\t\t
\n
\n\t {%- endif -%}\n {% if doc.encounter_time %}\n\t
\n\t\t
\n\t\tTime \n\t\t
\n\t\t
\n\t\t: {{doc.encounter_time}}\n\t\t
\n
\n\t {%- endif -%}\n {% if doc.visit_department %}\n\t
\n\t\t
\n\t\tDepartment \n\t\t
\n\t\t
\n\t\t: {{doc.visit_department}}\n\t\t
\n
\n {%- endif -%}\n
\n\n
\n\n
\n\n
\n {% if doc.symptoms_in_print%}\n {% if doc.symptoms %}\n Complaints:\n {{doc.symptoms}} \n \t \n {%- endif -%}\n {%- endif -%}\n\n {% if doc.diagnosis_in_print%}\n {% if doc.diagnosis %}\n \t Diagnosis:\n {{doc.diagnosis}} \n \n {%- endif -%}\n {%- endif -%}\n\n\n\n\n {% if doc.drug_prescription %}\n
\n Rx,\n
\n \n \n\n {%- for row in doc.drug_prescription -%}\n \n \n {%- if row.drug_name -%}{{ row.drug_name }} {%- endif -%}\n \n \t\n {%- if row.dosage -%}{{ row.dosage }}{%- endif -%}\n \n \t\n {%- if row.period -%}{{ row.period }}{%- endif -%}\n\t\t \n \n\t\t\t \n {%- if row.comment -%}{{ row.comment }}{%- endif -%}\n
\n\t\t \n \n\t {%- endfor -%}\n \n
\n\n\n {%- endif -%}\n
\n\n\n\n {% if doc.test_prescription %}\n Investigations,\n
\n \n \n\n {%- for row in doc.test_prescription -%}\n \n \n {%- if row.test_name -%}{{ row.test_name }} {%- endif -%}\n \n \n\t\t\t \n {%- if row.test_comment -%}{{ row.test_comment }}{%- endif -%}\n
\n\t\t \n \n\n\t {%- endfor -%}\n \n
\n\n\n {%- endif -%}\n
\n\n {% if doc.encounter_comment %}\n \n {{doc.encounter_comment}}\n {%- endif -%}\n
\n",
+ "html": "\n {% if letter_head and not no_letterhead -%}\n
{{ letter_head }}
\n
\n {% else %}\n
\n
{{doc.name}} \n \n {%- endif %}\n
\n
\n {% if doc.appointment %}\n\t
\n\t\t\t
\n\t\t\tAppointment \n\t\t\t
\n\t\t\t
\n\t\t\t: {{doc.appointment}}\n\t\t\t
\n\t\t
\n\t\t{%- endif -%}\n\n
\n\t\t
\n\t\t\t Patient \n\t\t
\n {% if doc.patient %}\n\t\t
\n\t\t\t : {{doc.patient}}\n\t\t
\n {% else %}\n
\n\t\t\t : Patient Name \n\t\t
\n {%- endif -%}\n\t\t
\n\t
\n\t\t\t
\n\t\t\t\tAge \n\t\t\t
\n\t\t\t
\n\t\t\t : {{doc.patient_age}}\n\t\t\t
\n\t\t
\n\n
\n
\n\t\t\t\tGender \n\t\t\t
\n\t\t\t
\n\t\t\t : {{doc.patient_sex}}\n\t\t\t
\n
\n\n
\n
\n\n
\n\t
\n\t\t Healthcare Practitioner \n\t
\n {% if doc.practitioner %}\n\t
\n\t\t\t: {{doc.practitioner}}\n\t
\n {%- endif -%}\n\t
\n\n {% if doc.encounter_date %}\n\t
\n\t\t
\n\t\tDate \n\t\t
\n\t\t
\n\t\t: {{doc.encounter_date}}\n\t\t
\n
\n\t {%- endif -%}\n {% if doc.encounter_time %}\n\t
\n\t\t
\n\t\tTime \n\t\t
\n\t\t
\n\t\t: {{doc.encounter_time}}\n\t\t
\n
\n\t {%- endif -%}\n {% if doc.visit_department %}\n\t
\n\t\t
\n\t\tDepartment \n\t\t
\n\t\t
\n\t\t: {{doc.visit_department}}\n\t\t
\n
\n {%- endif -%}\n
\n\n
\n\n
\n\n
\n {% if doc.symptoms_in_print%}\n {% if doc.symptoms %}\n Complaints:\n {{doc.symptoms}} \n \t \n {%- endif -%}\n {%- endif -%}\n\n {% if doc.diagnosis_in_print%}\n {% if doc.diagnosis %}\n \t Diagnosis:\n {{doc.diagnosis}} \n \n {%- endif -%}\n {%- endif -%}\n\n\n\n\n {% if doc.drug_prescription %}\n
\n Rx,\n
\n \n \n\n {%- for row in doc.drug_prescription -%}\n \n \n {%- if row.drug_name -%}{{ row.drug_name }} {%- endif -%}\n \n \t\n {%- if row.dosage -%}{{ row.dosage }}{%- endif -%}\n \n \t\n {%- if row.period -%}{{ row.period }}{%- endif -%}\n\t\t \n \n\t\t\t \n {%- if row.comment -%}{{ row.comment }}{%- endif -%}\n
\n\t\t \n \n\t {%- endfor -%}\n \n
\n\n\n {%- endif -%}\n
\n\n\n\n {% if doc.lab_test_prescription %}\n Investigations,\n
\n \n \n\n {%- for row in doc.lab_test_prescription -%}\n \n \n {%- if row.lab_test_name -%}{{ row.lab_test_name }} {%- endif -%}\n \n \n\t\t\t \n {%- if row.lab_test_comment -%}{{ row.lab_test_comment }}{%- endif -%}\n
\n\t\t \n \n\n\t {%- endfor -%}\n \n
\n\n\n {%- endif -%}\n
\n\n {% if doc.encounter_comment %}\n \n {{doc.encounter_comment}}\n {%- endif -%}\n
\n",
"idx": 0,
"line_breaks": 0,
- "modified": "2018-07-10 18:52:10.970448",
+ "modified": "2018-09-04 11:52:54.473702",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Encounter Print",
diff --git a/erpnext/healthcare/print_format/lab_test_print/lab_test_print.json b/erpnext/healthcare/print_format/lab_test_print/lab_test_print.json
index d3ad4409dbd..6badc6f82dc 100644
--- a/erpnext/healthcare/print_format/lab_test_print/lab_test_print.json
+++ b/erpnext/healthcare/print_format/lab_test_print/lab_test_print.json
@@ -7,10 +7,10 @@
"docstatus": 0,
"doctype": "Print Format",
"font": "Default",
- "html": "\n {% if letter_head and not no_letterhead -%}\n
{{ letter_head }}
\n
\n {%- endif %}\n\n {% if (doc.docstatus != 1) %}\n
Lab Tests have to be Submitted for Print .. ! \n {% elif (frappe.db.get_value(\"Healthcare Settings\", \"None\", \"require_test_result_approval\") == '1' and doc.approval_status != \"Approved\") %}\n
Lab Tests have to be Approved for Print .. ! \n {%- else -%}\n
\n
\n\n
\n
\n Patient \n
\n {% if doc.patient %}\n
\n : {{doc.patient}}\n
\n {% else %}\n
\n : Patient Name \n
\n {%- endif -%}\n
\n\n
\n
\n Age \n
\n
\n : {{doc.patient_age}}\n
\n
\n\n
\n
\n Gender \n
\n
\n : {{doc.patient_sex}}\n
\n
\n\n
\n\n
\n\n
\n
\n Practitioner \n
\n {% if doc.practitioner %}\n
\n : {{doc.practitioner}}\n
\n {%- endif -%}\n
\n\n {% if doc.sample_date %}\n
\n
\n Sample Date \n
\n
\n : {{doc.sample_date}}\n
\n
\n {%- endif -%}\n\n {% if doc.result_date %}\n
\n
\n Result Date \n
\n
\n : {{doc.result_date}}\n
\n
\n {%- endif -%}\n\n
\n\n
\n\n
\n
Department of {{doc.department}} \n \n\n
\n \n {%- if doc.normal_test_items -%}\n \n Name of Test \n Result \n Normal Range \n \n\n {%- if doc.normal_test_items|length > 1 %}\n {{ doc.test_name }} \n {%- endif -%}\n\n {%- for row in doc.normal_test_items -%}\n \n \n {%- if doc.normal_test_items|length > 1 %} {%- endif -%}\n {%- if row.test_name -%}{{ row.test_name }} \n {%- else -%} {%- endif -%}\n {%- if row.test_event -%} {{ row.test_event }}{%- endif -%}\n \n\n \n {%- if row.result_value -%}{{ row.result_value }}{%- endif -%} \n {%- if row.test_uom -%}{{ row.test_uom }}{%- endif -%}\n \n\n \n \n {%- if row.normal_range -%}{{ row.normal_range }}{%- endif -%}\n
\n \n \n\n {%- endfor -%}\n {%- endif -%}\n \n
\n\n
\n \n {%- if doc.special_test_items -%}\n \n Name of Test \n Result \n \n {{ doc.test_name }} \n {%- for row in doc.special_test_items -%}\n \n {{ row.test_particulars }} \n \n {%- if row.result_value -%}{{ row.result_value }}{%- endif -%}\n \n \n\n {%- endfor -%}\n {%- endif -%}\n\n {%- if doc.sensitivity_test_items -%}\n \n Antibiotic \n Sensitivity \n \n {%- for row in doc.sensitivity_test_items -%}\n \n {{ row.antibiotic }} \n {{ row.antibiotic_sensitivity }} \n \n\n {%- endfor -%}\n {%- endif -%}\n\n \n
\n {%- endif -%}\n\n
\n {%- if (frappe.db.get_value(\"Healthcare Settings\", \"None\", \"employee_name_and_designation_in_print\") == '1') -%}\n
{{doc.employee_name}} \n {{doc.employee_designation}} \n {%- else -%}\n {{frappe.db.get_value(\"Healthcare Settings\", \"None\", \"custom_signature_in_print\") }} \n {%- endif -%}\n \n
\n",
+ "html": "\n {% if letter_head and not no_letterhead -%}\n
{{ letter_head }}
\n
\n {%- endif %}\n\n {% if (doc.docstatus != 1) %}\n
Lab Tests have to be Submitted for Print .. ! \n {% elif (frappe.db.get_value(\"Healthcare Settings\", \"None\", \"require_test_result_approval\") == '1' and doc.approval_status != \"Approved\") %}\n
Lab Tests have to be Approved for Print .. ! \n {%- else -%}\n
\n
\n\n
\n
\n Patient \n
\n {% if doc.patient %}\n
\n : {{doc.patient}}\n
\n {% else %}\n
\n : Patient Name \n
\n {%- endif -%}\n
\n\n
\n
\n Age \n
\n
\n : {{doc.patient_age}}\n
\n
\n\n
\n
\n Gender \n
\n
\n : {{doc.patient_sex}}\n
\n
\n\n
\n\n
\n\n
\n
\n Practitioner \n
\n {% if doc.practitioner %}\n
\n : {{doc.practitioner}}\n
\n {%- endif -%}\n
\n\n {% if doc.sample_date %}\n
\n
\n Sample Date \n
\n
\n : {{doc.sample_date}}\n
\n
\n {%- endif -%}\n\n {% if doc.result_date %}\n
\n
\n Result Date \n
\n
\n : {{doc.result_date}}\n
\n
\n {%- endif -%}\n\n
\n\n
\n\n
\n
Department of {{doc.department}} \n \n\n
\n \n {%- if doc.normal_test_items -%}\n \n Name of Test \n Result \n Normal Range \n \n\n {%- if doc.normal_test_items|length > 1 %}\n {{ doc.lab_test_name }} \n {%- endif -%}\n\n {%- for row in doc.normal_test_items -%}\n \n \n {%- if doc.normal_test_items|length > 1 %} {%- endif -%}\n {%- if row.lab_test_name -%}{{ row.lab_test_name }} \n {%- else -%} {%- endif -%}\n {%- if row.lab_test_event -%} {{ row.lab_test_event }}{%- endif -%}\n \n\n \n {%- if row.result_value -%}{{ row.result_value }}{%- endif -%} \n {%- if row.lab_test_uom -%}{{ row.lab_test_uom }}{%- endif -%}\n \n\n \n \n {%- if row.normal_range -%}{{ row.normal_range }}{%- endif -%}\n
\n \n \n\n {%- endfor -%}\n {%- endif -%}\n \n
\n\n
\n \n {%- if doc.special_test_items -%}\n \n Name of Test \n Result \n \n {{ doc.lab_test_name }} \n {%- for row in doc.special_test_items -%}\n \n {{ row.lab_test_particulars }} \n \n {%- if row.result_value -%}{{ row.result_value }}{%- endif -%}\n \n \n\n {%- endfor -%}\n {%- endif -%}\n\n {%- if doc.sensitivity_test_items -%}\n \n Antibiotic \n Sensitivity \n \n {%- for row in doc.sensitivity_test_items -%}\n \n {{ row.antibiotic }} \n {{ row.antibiotic_sensitivity }} \n \n\n {%- endfor -%}\n {%- endif -%}\n\n \n
\n {%- endif -%}\n\n
\n {%- if (frappe.db.get_value(\"Healthcare Settings\", \"None\", \"employee_name_and_designation_in_print\") == '1') -%}\n
{{doc.employee_name}} \n {{doc.employee_designation}} \n {%- else -%}\n {{frappe.db.get_value(\"Healthcare Settings\", \"None\", \"custom_signature_in_print\") }} \n {%- endif -%}\n \n
\n",
"idx": 0,
"line_breaks": 0,
- "modified": "2018-07-13 12:51:25.750441",
+ "modified": "2018-09-04 12:03:47.066918",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "Lab Test Print",
@@ -19,4 +19,4 @@
"print_format_type": "Server",
"show_section_headings": 0,
"standard": "Yes"
-}
+}
\ No newline at end of file
diff --git a/erpnext/healthcare/report/lab_test_report/lab_test_report.py b/erpnext/healthcare/report/lab_test_report/lab_test_report.py
index b9a26dfcada..17f25fa7a75 100644
--- a/erpnext/healthcare/report/lab_test_report/lab_test_report.py
+++ b/erpnext/healthcare/report/lab_test_report/lab_test_report.py
@@ -17,7 +17,7 @@ def execute(filters=None):
data = []
for lab_test in lab_test_list:
- row = [ lab_test.test_name, lab_test.patient, lab_test.practitioner, lab_test.invoiced, lab_test.status, lab_test.result_date, lab_test.department]
+ row = [ lab_test.lab_test_name, lab_test.patient, lab_test.practitioner, lab_test.invoiced, lab_test.status, lab_test.result_date, lab_test.department]
data.append(row)
return columns, data
@@ -52,7 +52,7 @@ def get_conditions(filters):
def get_lab_test(filters):
conditions = get_conditions(filters)
- return frappe.db.sql("""select name, patient, test_name, patient_name, status, result_date, practitioner, invoiced, department
+ return frappe.db.sql("""select name, patient, lab_test_name, patient_name, status, result_date, practitioner, invoiced, department
from `tabLab Test`
where docstatus<2 %s order by submitted_date desc, name desc""" %
conditions, filters, as_dict=1)
diff --git a/erpnext/healthcare/setup.py b/erpnext/healthcare/setup.py
index c00b6371625..2087f49f32f 100644
--- a/erpnext/healthcare/setup.py
+++ b/erpnext/healthcare/setup.py
@@ -10,7 +10,7 @@ def setup_healthcare():
return
create_medical_departments()
create_antibiotics()
- create_test_uom()
+ create_lab_test_uom()
create_duration()
create_dosage()
create_healthcare_item_groups()
@@ -73,30 +73,30 @@ def create_antibiotics():
except frappe.DuplicateEntryError:
pass
-def create_test_uom():
+def create_lab_test_uom():
records = [
- {"doctype": "Lab Test UOM", "name": "umol/L", "test_uom": "umol/L", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "mg/L", "test_uom": "mg/L", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "mg / dl", "test_uom": "mg / dl", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "pg / ml", "test_uom": "pg / ml", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "U/ml", "test_uom": "U/ml", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "/HPF", "test_uom": "/HPF", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "Million Cells / cumm", "test_uom": "Million Cells / cumm", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "Lakhs Cells / cumm", "test_uom": "Lakhs Cells / cumm", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "U / L", "test_uom": "U / L", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "g / L", "test_uom": "g / L", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "IU / ml", "test_uom": "IU / ml", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "gm %", "test_uom": "gm %", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "Microgram", "test_uom": "Microgram", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "Micron", "test_uom": "Micron", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "Cells / cumm", "test_uom": "Cells / cumm", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "%", "test_uom": "%", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "mm / dl", "test_uom": "mm / dl", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "mm / hr", "test_uom": "mm / hr", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "ulU / ml", "test_uom": "ulU / ml", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "ng / ml", "test_uom": "ng / ml", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "ng / dl", "test_uom": "ng / dl", "uom_description": None },
- {"doctype": "Lab Test UOM", "name": "ug / dl", "test_uom": "ug / dl", "uom_description": None }
+ {"doctype": "Lab Test UOM", "name": "umol/L", "lab_test_uom": "umol/L", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "mg/L", "lab_test_uom": "mg/L", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "mg / dl", "lab_test_uom": "mg / dl", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "pg / ml", "lab_test_uom": "pg / ml", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "U/ml", "lab_test_uom": "U/ml", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "/HPF", "lab_test_uom": "/HPF", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "Million Cells / cumm", "lab_test_uom": "Million Cells / cumm", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "Lakhs Cells / cumm", "lab_test_uom": "Lakhs Cells / cumm", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "U / L", "lab_test_uom": "U / L", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "g / L", "lab_test_uom": "g / L", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "IU / ml", "lab_test_uom": "IU / ml", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "gm %", "lab_test_uom": "gm %", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "Microgram", "lab_test_uom": "Microgram", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "Micron", "lab_test_uom": "Micron", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "Cells / cumm", "lab_test_uom": "Cells / cumm", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "%", "lab_test_uom": "%", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "mm / dl", "lab_test_uom": "mm / dl", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "mm / hr", "lab_test_uom": "mm / hr", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "ulU / ml", "lab_test_uom": "ulU / ml", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "ng / ml", "lab_test_uom": "ng / ml", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "ng / dl", "lab_test_uom": "ng / dl", "uom_description": None },
+ {"doctype": "Lab Test UOM", "name": "ug / dl", "lab_test_uom": "ug / dl", "uom_description": None }
]
insert_record(records)
diff --git a/erpnext/healthcare/utils.py b/erpnext/healthcare/utils.py
index 8031f631a63..58c38b184e5 100644
--- a/erpnext/healthcare/utils.py
+++ b/erpnext/healthcare/utils.py
@@ -91,13 +91,13 @@ def get_healthcare_services_to_invoice(patient):
'service': frappe.db.get_value("Lab Test Template", lab_test_obj.template, "item")})
lab_rxs = frappe.db.sql("""select lp.name from `tabPatient Encounter` et, `tabLab Prescription` lp
- where et.patient=%s and lp.parent=et.name and lp.test_created=0 and lp.invoiced=0""", (patient.name))
+ where et.patient=%s and lp.parent=et.name and lp.lab_test_created=0 and lp.invoiced=0""", (patient.name))
if lab_rxs:
for lab_rx in lab_rxs:
rx_obj = frappe.get_doc("Lab Prescription", lab_rx[0])
- if rx_obj.test_code and (frappe.db.get_value("Lab Test Template", rx_obj.test_code, "is_billable") == 1):
+ if rx_obj.lab_test_code and (frappe.db.get_value("Lab Test Template", rx_obj.lab_test_code, "is_billable") == 1):
item_to_invoice.append({'reference_type': 'Lab Prescription', 'reference_name': rx_obj.name,
- 'service': frappe.db.get_value("Lab Test Template", rx_obj.test_code, "item")})
+ 'service': frappe.db.get_value("Lab Test Template", rx_obj.lab_test_code, "item")})
procedures = frappe.get_list("Clinical Procedure", {'patient': patient.name, 'invoiced': False})
if procedures:
@@ -250,7 +250,7 @@ def set_invoiced(item, method, ref_invoice=None):
manage_doc_for_appoitnment(dt_from_appointment, item.reference_dn, invoiced)
elif item.reference_dt == 'Lab Prescription':
- manage_prescriptions(invoiced, item.reference_dt, item.reference_dn, "Lab Test", "test_created")
+ manage_prescriptions(invoiced, item.reference_dt, item.reference_dn, "Lab Test", "lab_test_created")
elif item.reference_dt == 'Procedure Prescription':
manage_prescriptions(invoiced, item.reference_dt, item.reference_dn, "Clinical Procedure", "procedure_created")
@@ -369,8 +369,15 @@ def get_drugs_to_invoice(encounter):
qty = 1
if frappe.db.get_value("Item", drug_line.drug_code, "stock_uom") == "Nos":
qty = drug_line.get_quantity()
+ description = False
+ if drug_line.dosage:
+ description = drug_line.dosage
+ if description and drug_line.period:
+ description += " for "+drug_line.period
+ if not description:
+ description = ""
item_to_invoice.append({'drug_code': drug_line.drug_code, 'quantity': qty,
- 'description': drug_line.dosage+" for "+drug_line.period})
+ 'description': description})
return item_to_invoice
@frappe.whitelist()
diff --git a/erpnext/healthcare/web_form/lab_test/lab_test.json b/erpnext/healthcare/web_form/lab_test/lab_test.json
index f6f51b2fad8..88a9756e12e 100644
--- a/erpnext/healthcare/web_form/lab_test/lab_test.json
+++ b/erpnext/healthcare/web_form/lab_test/lab_test.json
@@ -18,7 +18,7 @@
"is_standard": 1,
"login_required": 1,
"max_attachment_size": 0,
- "modified": "2018-07-17 13:10:47.940128",
+ "modified": "2018-09-04 08:50:41.314546",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "lab-test",
@@ -27,6 +27,7 @@
"print_format": "Lab Test Print",
"published": 1,
"route": "lab-test",
+ "show_in_grid": 0,
"show_sidebar": 1,
"sidebar_items": [],
"success_url": "/lab-test",
@@ -41,7 +42,8 @@
"max_value": 0,
"options": "LP-",
"read_only": 0,
- "reqd": 1
+ "reqd": 1,
+ "show_in_filter": 0
},
{
"default": "0",
@@ -53,7 +55,8 @@
"max_value": 0,
"options": "",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "patient",
@@ -64,7 +67,8 @@
"max_value": 0,
"options": "Patient",
"read_only": 0,
- "reqd": 1
+ "reqd": 1,
+ "show_in_filter": 0
},
{
"fieldname": "patient_name",
@@ -75,7 +79,8 @@
"max_value": 0,
"options": "patient.patient_name",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "practitioner",
@@ -86,7 +91,8 @@
"max_value": 0,
"options": "Healthcare Practitioner",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "status",
@@ -97,7 +103,8 @@
"max_value": 0,
"options": "Draft\nCompleted\nApproved\nRejected\nCancelled",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "department",
@@ -108,7 +115,8 @@
"max_value": 0,
"options": "Medical Department",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "sample",
@@ -119,7 +127,8 @@
"max_value": 0,
"options": "Sample Collection",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"default": "",
@@ -130,7 +139,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "report_preference",
@@ -140,17 +150,19 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
- "fieldname": "test_name",
+ "fieldname": "lab_test_name",
"fieldtype": "Data",
"hidden": 0,
"label": "Test Name",
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "normal_test_items",
@@ -160,7 +172,8 @@
"max_value": 0,
"options": "Normal Test Items",
"read_only": 1,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "special_test_items",
@@ -170,7 +183,8 @@
"max_value": 0,
"options": "Special Test Items",
"read_only": 1,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "sensitivity_test_items",
@@ -180,17 +194,19 @@
"max_value": 0,
"options": "Sensitivity Test Items",
"read_only": 1,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
- "fieldname": "test_comment",
+ "fieldname": "lab_test_comment",
"fieldtype": "Text",
"hidden": 0,
"label": "Comments",
"max_length": 0,
"max_value": 0,
"read_only": 1,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "custom_result",
@@ -200,7 +216,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 1,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"default": "0",
@@ -210,7 +227,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"default": "0",
@@ -220,7 +238,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"default": "0",
@@ -230,7 +249,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
}
]
-}
+}
\ No newline at end of file
diff --git a/erpnext/healthcare/web_form/prescription/prescription.json b/erpnext/healthcare/web_form/prescription/prescription.json
index a2aabd154bd..8e19e325edd 100644
--- a/erpnext/healthcare/web_form/prescription/prescription.json
+++ b/erpnext/healthcare/web_form/prescription/prescription.json
@@ -18,7 +18,7 @@
"is_standard": 1,
"login_required": 1,
"max_attachment_size": 0,
- "modified": "2018-07-16 13:11:28.057697",
+ "modified": "2018-09-04 11:53:40.954517",
"modified_by": "Administrator",
"module": "Healthcare",
"name": "prescription",
@@ -27,6 +27,7 @@
"print_format": "Encounter Print",
"published": 1,
"route": "prescription",
+ "show_in_grid": 0,
"show_sidebar": 1,
"sidebar_items": [],
"success_url": "/prescription",
@@ -41,7 +42,8 @@
"max_value": 0,
"options": "Healthcare Practitioner",
"read_only": 0,
- "reqd": 1
+ "reqd": 1,
+ "show_in_filter": 0
},
{
"fieldname": "visit_department",
@@ -52,7 +54,8 @@
"max_value": 0,
"options": "Medical Department",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"default": "Today",
@@ -63,7 +66,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 1
+ "reqd": 1,
+ "show_in_filter": 0
},
{
"default": "",
@@ -74,7 +78,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 1
+ "reqd": 1,
+ "show_in_filter": 0
},
{
"fieldname": "drug_prescription",
@@ -85,10 +90,11 @@
"max_value": 0,
"options": "Drug Prescription",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
- "fieldname": "test_prescription",
+ "fieldname": "lab_test_prescription",
"fieldtype": "Table",
"hidden": 0,
"label": "Investigations",
@@ -96,7 +102,8 @@
"max_value": 0,
"options": "Lab Prescription",
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
},
{
"fieldname": "encounter_comment",
@@ -106,7 +113,8 @@
"max_length": 0,
"max_value": 0,
"read_only": 0,
- "reqd": 0
+ "reqd": 0,
+ "show_in_filter": 0
}
]
}
\ No newline at end of file
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index b3f8f102b18..10dd2618440 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -564,3 +564,4 @@ erpnext.patches.v10_0.recalculate_gross_margin_for_project
erpnext.patches.v11_0.make_job_card
erpnext.patches.v11_0.redesign_healthcare_billing_work_flow
erpnext.patches.v10_0.delete_hub_documents # 12-08-2018
+erpnext.patches.v11_0.rename_healthcare_fields
diff --git a/erpnext/patches/v11_0/rename_healthcare_fields.py b/erpnext/patches/v11_0/rename_healthcare_fields.py
new file mode 100644
index 00000000000..d47a3c38fde
--- /dev/null
+++ b/erpnext/patches/v11_0/rename_healthcare_fields.py
@@ -0,0 +1,52 @@
+import frappe
+from frappe.model.utils.rename_field import rename_field
+from frappe.modules import scrub, get_doctype_module
+
+lab_test_name = ["test_name", "lab_test_name"]
+lab_test_code = ["test_code", "lab_test_code"]
+lab_test_comment = ["test_comment", "lab_test_comment"]
+lab_test_created = ["test_created", "lab_test_created"]
+lab_test_template = ["test_template", "lab_test_template"]
+lab_test_rate = ["test_rate", "lab_test_rate"]
+lab_test_description = ["test_description", "lab_test_description"]
+lab_test_group = ["test_group", "lab_test_group"]
+lab_test_template_type = ["test_template_type", "lab_test_template_type"]
+lab_test_uom = ["test_uom", "lab_test_uom"]
+lab_test_normal_range = ["test_normal_range", "lab_test_normal_range"]
+lab_test_event = ["test_event", "lab_test_event"]
+lab_test_particulars = ["test_particulars", "lab_test_particulars"]
+
+field_rename_map = {
+ "Lab Test Template": [lab_test_name, lab_test_code, lab_test_rate, lab_test_description,
+ lab_test_group, lab_test_template_type, lab_test_uom, lab_test_normal_range],
+ "Normal Test Items": [lab_test_name, lab_test_comment, lab_test_uom, lab_test_event],
+ "Lab Test": [lab_test_name, lab_test_comment, lab_test_group],
+ "Lab Prescription": [lab_test_name, lab_test_code, lab_test_comment, lab_test_created],
+ "Lab Test Groups": [lab_test_template, lab_test_rate, lab_test_description],
+ "Lab Test UOM": [lab_test_uom],
+ "Normal Test Template": [lab_test_uom, lab_test_event],
+ "Special Test Items": [lab_test_particulars]
+}
+
+
+def execute():
+ for dt, field_list in field_rename_map.items():
+ if frappe.db.exists('DocType', dt):
+ frappe.reload_doc(get_doctype_module(dt), "doctype", scrub(dt))
+ for field in field_list:
+ if frappe.db.has_column(dt, field[0]):
+ rename_field(dt, field[0], field[1])
+
+ if frappe.db.exists('DocType', 'Lab Prescription'):
+ if frappe.db.has_column('Lab Prescription', 'parentfield'):
+ frappe.db.sql("""
+ update `tabLab Prescription` set parentfield = 'lab_test_prescription'
+ where parentfield = 'test_prescription'
+ """)
+
+ if frappe.db.exists('DocType', 'Lab Test Groups'):
+ if frappe.db.has_column('Lab Test Groups', 'parentfield'):
+ frappe.db.sql("""
+ update `tabLab Test Groups` set parentfield = 'lab_test_groups'
+ where parentfield = 'test_groups'
+ """)