def test_invalid_healthcare_service_unit_validation(self): from erpnext.healthcare.doctype.inpatient_record.inpatient_record import admit_patient, discharge_patient, schedule_discharge from erpnext.healthcare.doctype.inpatient_record.test_inpatient_record import \ create_inpatient, get_healthcare_service_unit, mark_invoiced_inpatient_occupancy frappe.db.sql("""delete from `tabInpatient Record`""") patient, medical_department, practitioner = create_healthcare_docs() patient = create_patient() # Schedule Admission ip_record = create_inpatient(patient) ip_record.expected_length_of_stay = 0 ip_record.save(ignore_permissions=True) # Admit service_unit = get_healthcare_service_unit( 'Test Service Unit Ip Occupancy') admit_patient(ip_record, service_unit, now_datetime()) appointment_service_unit = get_healthcare_service_unit( 'Test Service Unit Ip Occupancy for Appointment') appointment = create_appointment(patient, practitioner, nowdate(), service_unit=appointment_service_unit, save=0) self.assertRaises(frappe.exceptions.ValidationError, appointment.save) # Discharge schedule_discharge(frappe.as_json({'patient': patient})) ip_record1 = frappe.get_doc("Inpatient Record", ip_record.name) mark_invoiced_inpatient_occupancy(ip_record1) discharge_patient(ip_record1)
def setUp(self): frappe.db.sql("""delete from `tabInpatient Record`""") self.patient = create_patient() # Admit ip_record = create_inpatient(self.patient) ip_record.expected_length_of_stay = 0 ip_record.save() ip_record.reload() service_unit = get_healthcare_service_unit() admit_patient(ip_record, service_unit, now_datetime()) self.ip_record = ip_record
def create_records(patient): frappe.db.sql("""delete from `tabInpatient Record`""") # Admit ip_record = create_inpatient(patient) ip_record.expected_length_of_stay = 0 ip_record.save() ip_record.reload() service_unit = get_healthcare_service_unit() admit_patient(ip_record, service_unit, now_datetime()) ipmo = create_ipmo(patient) ipmo.submit() return ip_record
def test_appointment_booking_for_admission_service_unit(self): from erpnext.healthcare.doctype.inpatient_record.inpatient_record import ( admit_patient, discharge_patient, schedule_discharge, ) from erpnext.healthcare.doctype.inpatient_record.test_inpatient_record import ( create_inpatient, get_healthcare_service_unit, mark_invoiced_inpatient_occupancy, ) frappe.db.sql("""delete from `tabInpatient Record`""") patient, practitioner = create_healthcare_docs() patient = create_patient() # Schedule Admission ip_record = create_inpatient(patient) ip_record.expected_length_of_stay = 0 ip_record.save(ignore_permissions=True) # Admit service_unit = get_healthcare_service_unit( "_Test Service Unit Ip Occupancy") admit_patient(ip_record, service_unit, now_datetime()) appointment = create_appointment(patient, practitioner, nowdate(), service_unit=service_unit) self.assertEqual(appointment.service_unit, service_unit) # Discharge schedule_discharge( frappe.as_json({ "patient": patient, "discharge_ordered_datetime": now_datetime() })) ip_record1 = frappe.get_doc("Inpatient Record", ip_record.name) mark_invoiced_inpatient_occupancy(ip_record1) discharge_patient(ip_record1, now_datetime())