Changing cqm/amc reporting to a pure OO design.
[openemr.git] / library / classes / ClinicalTypes / PhysicalExam.php
blobcaf84d4fe78dbd585a2cc1689ecc741c8b4b93de
1 <?php
2 require_once( 'ClinicalType.php' );
4 class PhysicalExam extends ClinicalType
5 {
6 const NOT_DONE_PATIENT = 'phys_exm_not_done_patient';
7 const NOT_DONE_MEDICAL = 'phys_exm_not_done_medical';
8 const NOT_DONE_SYSTEM = 'phys_exm_not_done_system';
9 const FINDING_BMI_PERC = 'phys_exm_finding_bmi_perc';
11 public function getListId() {
12 return 'Clinical_Rules_Phys_Exm_Type';
15 public function getListType() {
16 return "medical_problem"; // TODO this may not be the correct type for BMI icd9 codes
19 public function doPatientCheck( RsPatient $patient, $beginDate = null, $endDate = null, $options = null )
21 $data = Codes::lookup( $this->getOptionId() );
22 $type = $this->getListType();
23 foreach( $data as $codeType => $codes ) {
24 foreach ( $codes as $code ) {
25 if ( exist_lists_item( $patient->id, $type, $codeType.'::'.$code, $endDate ) ) {
26 return true;
30 return false;