ESH/excel_header_medical_examination.php
2024-10-23 18:28:06 +05:30

170 lines
9.6 KiB
PHP

<? //include('pdf_header.php');
include('includes/config/config.php');
include_once('includes/functions.php');
?>
<?php
$checkup_type_id = $_POST['checkupId'];
error_log("checkup_type_id -> " . $checkup_type_id);
$sql210 = "select * from checkup_type where checkup_type_id='" . $checkup_type_id . "'";
error_log("sql210" . $sql210);
$result210 = @mysqli_query($conn, $sql210);
while ($row210 = mysqli_fetch_array($result210)) {
$checkup = $row210['checkup_form_section_ids'];
}
$sql = 'select distinct section_id,section_name,count(*) as count from (select* from checkup_form_section where Status="Active"and section_id in (' . $checkup . ') ) as c left JOIN checkup_parameter on checkup_parameter.checkup_form_section_id=c.section_id and enabled="Y" group by section_id ';
error_log("sql 1st" . $sql);
$result = mysqli_query($conn, $sql);
$sql1 = 'select parameter_value,input_type,section_id,column_order,checkup_parameter_id,parameter_name,column_name from (select checkup_form_section_id,column_order,checkup_parameter_id ,parameter_name,input_type,column_name,parameter_value from checkup_parameter WHERE enabled="Y" and checkup_form_section_id in (' . $checkup . ')) as c inner JOIN checkup_form_section on checkup_form_section.section_id=c.checkup_form_section_id and Status="Active" order by checkup_form_section_id,column_order';
$result1 = mysqli_query($conn, $sql1);
$dbColumnNameList = array("examination_date", "emp_code", "patient_name", "father_name", "dob", "doj", "age", "gender", "blood_group", "designation_id", "dept_id", "patient_cat_id", "employer_contractor_id", "bu_id", "aadhar_no", "primary_phone");
$ExcelColumnNameList = array("Examination Date", "Employee Code", "Patient Name", "Father Name", "DOB", "DOJ", "Age", "Gender", "Blood Group", "Designation", "Department", "Patient Category", "Employer Contractor", "Division", "Aadhar Number", "Phone");
while ($row = mysqli_fetch_array($result1)) {
$db_name = $row['column_name'];
array_push($dbColumnNameList, $db_name);
}
//ROWS TO DISPLAY ON UI
mysqli_free_result($result1);
$result1 = mysqli_query($conn, $sql1);
while ($row2 = mysqli_fetch_array($result1)) {
$excel_name = $row2['parameter_name'];
array_push($ExcelColumnNameList, $excel_name);
}
// SELECT DATA FROM TEMP TABLE
$final_res = array();
$get_checkup_form = "SELECT * FROM `checkup_form_temp` WHERE `checkup_type_id` = '$checkup_type_id';";
error_log("CHECKUP FORM QUERY-> " . $get_checkup_form);
$checkup_form_res = mysqli_query($conn, $get_checkup_form);
if ($checkup_form_res->num_rows > 0) {
while ($checkup_form_row = mysqli_fetch_array($checkup_form_res)) { //EACH ROW IN CHECKUP FORM
$patient_id = $checkup_form_row['emp_id'];
$checkup_form_id = $checkup_form_row['checkup_id'];
$ticket_no = $checkup_form_row['ticket_no'];
$key_id_string = $patient_id . "," . $checkup_form_id;
//GET PATIENT DATA
$getpatient_table = "SELECT * FROM `patient_master_temp` WHERE `id` = '$patient_id'; ";
$getpatient_row = mysqli_query($conn, $getpatient_table);
$getpatient_res = $getpatient_row->fetch_assoc();
$temp_array = array();
for ($m = 0; $m < count($dbColumnNameList); $m++) {
if ($m == 0) {
if ($dbColumnNameList[$m] == 'examination_date') {
$medical_date_new = getFieldFromTable('checkup_date', 'checkup_form_temp', 'checkup_id', $checkup_form_id);
error_log("MEDICAL DATE " . $medical_date_new);
array_push($temp_array, $medical_date_new);
} else {
array_push($temp_array, " ");
}
} else if ($m > 0 && $m < 16) { //All patient Data
$actual_value = "";
// CONDITIONS TO CLASSIFY THE DATA
if ($dbColumnNameList[$m] == 'designation_id') {
$actual_value = getFieldFromTable('designation_name', 'designation', 'designation_id', $getpatient_res[$dbColumnNameList[$m]]);
array_push($temp_array, $actual_value);
} else if ($dbColumnNameList[$m] == 'dept_id') {
$actual_value = getFieldFromTable('dept_name', 'department', 'dept_id', $getpatient_res[$dbColumnNameList[$m]]);
array_push($temp_array, $actual_value);
} else if ($dbColumnNameList[$m] == 'patient_cat_id') {
$actual_value = getFieldFromTable('patient_cat_name', 'patient_category', 'patient_cat_id', $getpatient_res[$dbColumnNameList[$m]]);
array_push($temp_array, $actual_value);
} else if ($dbColumnNameList[$m] == 'employer_contractor_id') {
$actual_value = getFieldFromTable('employer_contractor_name', 'employer_contractor', 'id', $getpatient_res[$dbColumnNameList[$m]]);
array_push($temp_array, $actual_value);
} else if ($dbColumnNameList[$m] == 'bu_id') {
$actual_value = getFieldFromTable('bu_name', 'bussiness_unit', 'bu_id', $getpatient_res[$dbColumnNameList[$m]]);
array_push($temp_array, $actual_value);
} else if ($dbColumnNameList[$m] == 'age') {
// error_log("GET AGE VALUE " . $colVal1);
// if (!empty($colVal1)) {
// $actual_value = $colVal1;
// }else{
$db_dob = getFieldFromTable('dob', 'patient_master_temp', 'id', $patient_id);
$age = date_diff(date_create($db_dob), date_create('today'))->y;
$actual_value = $age;
// }
array_push($temp_array, $actual_value);
} else {
$actual_value = $getpatient_res[$dbColumnNameList[$m]];
if (empty($actual_value)) {
error_log("EMPTY " . $dbColumnNameList[$m]);
}
array_push($temp_array, $actual_value);
error_log("Entry For Column:- " . $m);
}
//END CONDITIONS TO CLASSIFY THE DATA
error_log("VALUE FOR " . $m . " -> " . $actual_value);
} else {
error_log("INTO THE ELSE at " . $m);
$search_col_key = trim($dbColumnNameList[$m]);
$key_val_query = "SELECT `checkup_form_value` FROM `checkup_form_key_value_temp` WHERE `checkup_form_key` = '$search_col_key' AND `checkup_form_id` = '$checkup_form_id';";
error_log("KEY QUERY-> " . $key_val_query);
$test_key_row = mysqli_query($conn, $key_val_query);
if ($test_key_row->num_rows > 0) {
$test_key_res = $test_key_row->fetch_assoc();
// BASED ON INPUT TYPE FETCH VALUE
$get_input_type = "SELECT `input_type`,`parameter_name` FROM `checkup_parameter` WHERE `column_name`='$search_col_key';";
error_log("QUERY FOR INPUT YPE AND COL CHECK-> " . $get_input_type);
$input_type_row = mysqli_query($conn, $get_input_type);
$input_type_res = $input_type_row->fetch_assoc();
if ($input_type_row->num_rows > 0) { //COLUMN EXISTS IN CHECKUP PARAMETER
error_log("FOUND COLUMN AND INPUT TYPE FOR-> " . $m);
if ($input_type_res['input_type'] == 'select') {
error_log("TYPE FOR " . $search_col_key . "IS SELECT");
$actual_value = getFieldFromTable('parameter_value_name', 'checkup_parameter_value', 'parameter_value_id', $test_key_res['checkup_form_value']);
array_push($temp_array, $actual_value);
} else if ($input_type_res['input_type'] == 'multiselect') {
error_log("TYPE FOR " . $search_col_key . "IS MULTISELECT VALUES " . $test_key_res['checkup_form_value']);
$actual_value = getCommaSeperatedValuesForInClause('select parameter_value_name from checkup_parameter_value', 'parameter_value_id', $test_key_res['checkup_form_value']);
array_push($temp_array, $actual_value);
} else if ($input_type_res['input_type'] == 'number') {
error_log("TYPE FOR " . $search_col_key . "IS NUMBER");
$actual_value = $test_key_res['checkup_form_value'];
array_push($temp_array, $actual_value);
} else {
$actual_value = $test_key_res['checkup_form_value'];
array_push($temp_array, $actual_value);
}
} else {
// error_log("NOT FOUND COLUMN AND INPUT TYPE FOR-> " . $search_col_key);
array_push($temp_array, $test_key_res['checkup_form_value']);
error_log("Entry For Column:- " . $m);
}
// error_log($dbColumnNameList[$m] . " ITS A VALUE NOT COLUMN");
} else {
error_log($dbColumnNameList[$m] . " NOTHING TO BE FOUND");
array_push($temp_array, " ");
error_log("NO ENRY FOUND FOR THE ABOVE VALUE IN KEY_VALUE TABLE " . $m);
}
}
} //END OF FOR
$final_res[$key_id_string] = $temp_array;
}
}
$response_array = array(
"Db_column_name" => $dbColumnNameList,
"excel_column_name" => $ExcelColumnNameList,
"final_result" => $final_res
);
echo json_encode($response_array);
?>