418 lines
20 KiB
PHP
418 lines
20 KiB
PHP
<?php
|
|
include('includes/config/config.php');
|
|
include('includes/auth/auth.php');
|
|
include('includes/functions.php');
|
|
include('access.php');
|
|
error_reporting(E_ERROR | E_PARSE);
|
|
?>
|
|
<?php
|
|
|
|
$selectedValues = $_POST['selectedID'];
|
|
error_log("RECIEVED ARRAY -> " . print_r($selectedValues, true));
|
|
|
|
$map_patient_id = array();
|
|
$map_checkup_id = array();
|
|
//Counter Variable
|
|
$patient_insert_counter = 0;
|
|
$form_insert_counter = 0;
|
|
$form_update_counter = 0;
|
|
$form_key_insert_counter = 0;
|
|
$form_key_update_counter = 0;
|
|
|
|
//Patient Source table
|
|
$SourceTable = ["patient_master_temp", "checkup_form_temp"];
|
|
$DestinationTable = ["patient_master", "checkup_form"];
|
|
|
|
for ($i = 0; $i < count($SourceTable); $i++) {
|
|
|
|
// $got_header = false;
|
|
// $ColumnString = "";
|
|
|
|
|
|
for ($j = 0; $j < count($selectedValues); $j++) {
|
|
$initquery = "";
|
|
$endquery = "";
|
|
$columnValuePairs = "";
|
|
//FIRST IS PATIENT ID AND SECOND IS CHECKUP ID
|
|
$values = explode(',', $selectedValues[$j]);
|
|
$patient_temp_id = $values[0];
|
|
$checkup_id = $values[1];
|
|
|
|
error_log("TEMP PATIENT ID " . $patient_temp_id . " TEMP CHECKUP ID " . $checkup_id);
|
|
|
|
//PATIENT SECTION
|
|
if ($SourceTable[$i] == 'patient_master_temp') {
|
|
$get_column = "SELECT * FROM $SourceTable[$i] WHERE id = '$patient_temp_id';";
|
|
error_log("SELEC PATIENT -> " . $get_column);
|
|
$get_column_row = mysqli_query($conn, $get_column);
|
|
$get_column_res = $get_column_row->fetch_assoc();
|
|
|
|
error_log(print_r($get_column_res, true));
|
|
$empCode = $get_column_res['emp_code'];
|
|
$aadharCode = $get_column_res['aadhar_no'];
|
|
|
|
array_shift($get_column_res);
|
|
$keys = array_keys($get_column_res);
|
|
$values = array_values($get_column_res);
|
|
|
|
for ($k = 0; $k < count($keys); $k++) {
|
|
$columnValuePairs .= $keys[$k] . " = " . " '" . $values[$k] . "' ";
|
|
|
|
// Add a comma and space if it's not the last element
|
|
if ($k < count($keys) - 1) {
|
|
$columnValuePairs .= ", ";
|
|
}
|
|
}
|
|
error_log("COL-VAL STRING FOR PATIENT MASTER " . $columnValuePairs);
|
|
|
|
$check_duplicate = "SELECT COUNT(*) AS data_exists FROM $DestinationTable[$i] WHERE emp_code = '$empCode';";
|
|
$check_duplicate_row = mysqli_query($conn, $check_duplicate);
|
|
$check_duplicate_res = $check_duplicate_row->fetch_assoc();
|
|
|
|
if ($check_duplicate_res['data_exists'] > 0) { // update case
|
|
$patient_main_id = "";
|
|
if (!empty($empCode)) {
|
|
$patient_main_id = getTableFieldValue('patient_master', 'id', 'emp_code', "'" . $empCode . "'");
|
|
}
|
|
|
|
if (!empty($aadharCode) && empty($empCode)) {
|
|
$patient_main_id = getTableFieldValue('patient_master', 'id', 'aadhar_no', "'" . $aadharCode . "'");
|
|
}
|
|
|
|
error_log("MAIN PATIENT ID FROM TABLE-> " . $patient_main_id);
|
|
|
|
// MAP NEW ID OF PATIENT TO TEMPRORY
|
|
if (isset($map_patient_id[$patient_temp_id])) {
|
|
error_log("KEY ALREADY EXISTS SO DONT ADD");
|
|
} else {
|
|
$map_patient_id[$patient_temp_id] = $patient_main_id;
|
|
}
|
|
|
|
|
|
error_log("MAPPPPP-> " . print_r($map_patient_id, true));
|
|
$queryDeleteData = "DELETE FROM $SourceTable[$i] WHERE emp_code = '$empCode';";
|
|
$resultDeleteData = mysqli_query($conn, $queryDeleteData);
|
|
|
|
// Check if the data deletion was successful
|
|
if ($resultDeleteData) {
|
|
$move_status['patient_response'] = "MOVED PATIENT DATA";
|
|
} else {
|
|
$move_status['patient_response'] = "ERROR DELETING PATIENT DATA FROM SOURCE TABLE";
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
}
|
|
// Do not Insert As value is already there
|
|
} else { // insert case
|
|
|
|
$initquery = "insert into $DestinationTable[$i] set ";
|
|
$endquery = "";
|
|
|
|
$query_patient = $initquery . $columnValuePairs . $endquery;
|
|
error_log("patient master query " . $query_patient);
|
|
|
|
if (!$result = @mysqli_query($conn, $query_patient)) {
|
|
error_log("Exception:" . mysqli_error($conn));
|
|
error_log("Failed to Execute Patient Insert/Update Query::: " . $query_patient);
|
|
// $response_array['responseText']=mysqli_error($conn);
|
|
$move_status['patient_response'] = mysqli_error($conn);
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
} else {
|
|
$patient_main_id = "";
|
|
if (!empty($empCode)) {
|
|
$patient_main_id = getTableFieldValue('patient_master', 'id', 'emp_code', "'" . $empCode . "'");
|
|
}
|
|
|
|
if (!empty($aadharCode) && empty($empCode)) {
|
|
$patient_main_id = getTableFieldValue('patient_master', 'id', 'aadhar_no', "'" . $aadharCode . "'");
|
|
}
|
|
|
|
// MAP NEW ID OF PATIENT TO TEMPRORY
|
|
$map_patient_id[$patient_temp_id] = $patient_main_id;
|
|
|
|
$queryDeleteData = "DELETE FROM $SourceTable[$i] WHERE emp_code = '$empCode';";
|
|
$resultDeleteData = mysqli_query($conn, $queryDeleteData);
|
|
|
|
// Check if the data deletion was successful
|
|
if ($resultDeleteData) {
|
|
$move_status['patient_response'] = "MOVED PATIENT DATA";
|
|
$patient_insert_counter++;
|
|
} else {
|
|
$move_status['patient_response'] = "ERROR DELETING PATIENT DATA FROM SOURCE TABLE";
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
}
|
|
}
|
|
}
|
|
} else if ($SourceTable[$i] == "checkup_form_temp") {
|
|
// $patient_temp_id HAS THE OLD PATIENT ID & $checkup_id has old checkup_forn id
|
|
$empId = $patient_temp_id;
|
|
$get_form_column = "SELECT * FROM $SourceTable[$i] WHERE checkup_id = '$checkup_id';";
|
|
error_log("SELECTT SAB FROM CHECKUP FORM-> " . $get_form_column);
|
|
$get_form_row = mysqli_query($conn, $get_form_column);
|
|
$get_form_res = $get_form_row->fetch_assoc();
|
|
|
|
$checkupTypeId = $get_form_res['checkup_type_id'];
|
|
$checkupDate = $get_form_res['checkup_date'];
|
|
|
|
array_shift($get_form_res);
|
|
$keys1 = array_keys($get_form_res);
|
|
$values1 = array_values($get_form_res);
|
|
|
|
error_log("CHECKUP FORM KEY->" . print_r($keys1, true));
|
|
error_log("CHECKUP FORM VALUES->" . print_r($values1, true));
|
|
|
|
$patient_new_id = "";
|
|
$patient_old_id = "";
|
|
$patient_ticket = "";
|
|
for ($k = 0; $k < count($keys1); $k++) {
|
|
if ($SourceTable[$i] == "checkup_form_temp" && ($keys1[$k] == 'emp_id')) {
|
|
$columnValuePairs .= $keys1[$k] . " = " . " '" . $map_patient_id[$values1[$k]] . "' ";
|
|
$patient_new_id = $map_patient_id[$values1[$k]];
|
|
$patient_old_id = $values1[$k];
|
|
} else {
|
|
$columnValuePairs .= $keys1[$k] . " = " . " '" . $values1[$k] . "' ";
|
|
if ($SourceTable[$i] == "checkup_form_temp" && ($keys1[$k] == 'ticket_no')) {
|
|
$patient_ticket = $values1[$k];
|
|
}
|
|
}
|
|
|
|
// Add a comma and space if it's not the last element
|
|
if ($k < count($keys1) - 1) {
|
|
$columnValuePairs .= ", ";
|
|
}
|
|
}
|
|
error_log("COLUMN VALUE PAIR FOR FORM TEMP -> " . $columnValuePairs);
|
|
$check_duplicate = "SELECT COUNT(*) AS data_exists FROM $DestinationTable[$i] WHERE emp_id = '$map_patient_id[$patient_temp_id]' AND checkup_type_id ='$checkupTypeId' AND checkup_date =' $checkupDate';";
|
|
error_log("DUPLICATE CHECK FOR CHECK FORM " . $check_duplicate);
|
|
$check_duplicate_row = mysqli_query($conn, $check_duplicate);
|
|
$check_duplicate_res = $check_duplicate_row->fetch_assoc();
|
|
|
|
if ($check_duplicate_res['data_exists'] > 0) {
|
|
// UPDATE DATA
|
|
$initquery = "update $DestinationTable[$i] set ";
|
|
$endquery = " where emp_id = '" . $map_patient_id[$empId] . "' and checkup_type_id = '" . $checkupTypeId . "' and checkup_date = '" . $checkupDate . "' ";
|
|
error_log("UPDATES CHECKUP FORM");
|
|
$form_update_counter++;
|
|
} else {
|
|
//INSERT ROW IN CHCECKUP FORM
|
|
$initquery = "insert into $DestinationTable[$i] set ";
|
|
$endquery = "";
|
|
error_log("INSERTS CHECKUP FORM");
|
|
$form_insert_counter++;
|
|
}
|
|
|
|
$medical_query = $initquery . $columnValuePairs . $endquery;
|
|
error_log("MEDICAL QUERY-> " . $medical_query);
|
|
if (!$result = @mysqli_query($conn, $medical_query)) {
|
|
error_log("Exception:" . mysqli_error($conn));
|
|
error_log("Failed to Execute the Medical Examination Query::: " . $medical_query);
|
|
$move_status['form_response'] = mysqli_error($conn);
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
} else {
|
|
//SELECT NEW CEHCKUP ID
|
|
$new_checkup_id = "SELECT `checkup_id` FROM `checkup_form` WHERE `emp_id` = '$map_patient_id[$empId]' AND checkup_type_id ='$checkupTypeId' AND checkup_date = '$checkupDate';";
|
|
|
|
error_log("MAIN TABLE CHECKUP ID-> " . $new_checkup_id);
|
|
$new_checkup_row = mysqli_query($conn, $new_checkup_id);
|
|
|
|
//SELECT OLD CHECKUP ID i.e($checkup_id)
|
|
|
|
//IF GET ID THEN CONTINUE PART (ALL KEY VALUES PART IN THIS)
|
|
if (($new_checkup_row->num_rows > 0) && (!empty($checkup_id))) {
|
|
$new_checkup_res = $new_checkup_row->fetch_assoc();
|
|
|
|
error_log("OLD CHECKUP ID " . $checkup_id);
|
|
error_log("NEW CHECKUP ID " . $new_checkup_res['checkup_id']);
|
|
|
|
$checkup_key_value_query = "SELECT * FROM `checkup_form_key_value_temp` WHERE `checkup_form_id` = '$checkup_id';";
|
|
|
|
error_log("GET KEY VALUE-> " . $checkup_key_value_query);
|
|
$checkup_key_temp_row = mysqli_query($conn, $checkup_key_value_query);
|
|
if ($checkup_key_temp_row->num_rows > 0) {
|
|
while ($checkup_key_temp_res = $checkup_key_temp_row->fetch_assoc()) {
|
|
|
|
$checkupFromKey = $checkup_key_temp_res['checkup_form_key'];
|
|
$checkupFormValue = $checkup_key_temp_res['checkup_form_value'];
|
|
|
|
$check_duplicate = "SELECT COUNT(*) AS data_exists FROM `checkup_form_key_value` WHERE checkup_form_id = '$new_checkup_res[checkup_id]' AND checkup_form_key ='$checkupFromKey';";
|
|
error_log("CHECK KEY VALUE " . $check_duplicate);
|
|
$check_duplicate_row = mysqli_query($conn, $check_duplicate);
|
|
$check_duplicate_res = $check_duplicate_row->fetch_assoc();
|
|
|
|
|
|
if ($check_duplicate_res['data_exists'] > 0) {
|
|
// UPDATE DATA
|
|
$initquery = "update checkup_form_key_value set ";
|
|
$endquery = " where checkup_form_key = '" . $checkupFromKey . "' and checkup_form_id = '" . $new_checkup_res['checkup_id'] . "' ";
|
|
$form_key_update_counter++;
|
|
} else {
|
|
//INSERT ROW IN CHCECKUP FORM
|
|
$initquery = "insert into checkup_form_key_value set ";
|
|
$endquery = "";
|
|
$form_key_insert_counter++;
|
|
}
|
|
|
|
$sql_checkup_form_key_value = $initquery . "checkup_form_id ='" . $new_checkup_res['checkup_id'] . "', checkup_form_key ='" . $checkupFromKey . "', checkup_form_value ='" . $checkupFormValue . "'" . $endquery;
|
|
error_log("KEY VALUE INSERT/UPDATE-> " . $sql_checkup_form_key_value);
|
|
if (!$result = @mysqli_query($conn, $sql_checkup_form_key_value)) {
|
|
error_log("Exception:" . mysqli_error($conn));
|
|
error_log("Failed to Execute the sql_checkup_form_key_value Query::: " . $sql_checkup_form_key_value);
|
|
$move_status['key_form_response'] = mysqli_error($conn);
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
} else {
|
|
$queryDeleteData = "DELETE FROM `checkup_form_key_value_temp` WHERE checkup_form_id = '$checkup_key_temp_res[checkup_form_id]' AND checkup_form_key ='$checkupFromKey'; ";
|
|
error_log("DELETEE CHECKUP KEY VALUE-> " . $queryDeleteData);
|
|
$resultDeleteData = mysqli_query($conn, $queryDeleteData);
|
|
|
|
// Check if the data deletion was successful
|
|
if ($resultDeleteData) {
|
|
$move_status['key_form_response'] = "MOVED CHECKUP KEY FORM DATA";
|
|
} else {
|
|
$move_status['key_form_response'] = "ERROR DELETING DATA FROM KEY VALUE SOURCE TABLE";
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
}
|
|
}
|
|
} //END FOR WHILE LOOP
|
|
}
|
|
}
|
|
//HERE GET CHECKUP ID AND TICKET NO AND CHECK FOR KEY VALUE USING LOOP
|
|
error_log("AMIN TBL EMP ID-> " . $map_patient_id[$empId]);
|
|
// $emp_ticket = getFieldFromTable('ticket_no', 'checkup_form', 'emp_id', $map_patient_id[$formID]);
|
|
|
|
error_log("FORM DELETE MAI AAGAYE");
|
|
$queryDeleteData = "DELETE FROM $SourceTable[$i] WHERE emp_id = '$empId' AND checkup_type_id ='$checkupTypeId' AND checkup_date = '$checkupDate'; ";
|
|
error_log("DELETEE CHECKUP FORM-> " . $queryDeleteData);
|
|
$resultDeleteData = mysqli_query($conn, $queryDeleteData);
|
|
|
|
// Check if the data deletion was successful
|
|
if ($resultDeleteData) {
|
|
$move_status['form_response'] = "MOVED CHECKUP FORM DATA";
|
|
error_log("FORM DELETE HO GAYA");
|
|
} else {
|
|
$move_status['form_response'] = "ERROR DELETING DATA FROM FORM SOURCE TABLE";
|
|
error_log("FORM DELETE NAHI HO PAYE " . mysqli_error($conn));
|
|
rollback();
|
|
exit(mysqli_error($conn));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
error_log("ALL colums Header FOR " . $SourceTable[$i] . " -> " . $ColumnString);
|
|
error_log("MAPPING -> " . print_r($map_patient_id, true));
|
|
}
|
|
// for ($i=0; $i < count($selectedValues) ; $i++) {
|
|
// //FIRST IS PATIENT ID AND SECOND IS CHECKUP ID
|
|
// $values = explode(',', $selectedValues[$i]);
|
|
// $patient_temp_id = $values[0];
|
|
// $checkup_id = $values[1];
|
|
|
|
// //PATIENT TEMP TO MAIN TRANSFER
|
|
// $get_patient_data = "SELECT * FROM `patient_master_temp` WHERE `id` = '$patient_temp_id';";
|
|
// $patient_data_row = mysqli_query($conn, $get_patient_data);
|
|
// $patient_data_res = $patient_data_row->fetch_assoc();
|
|
|
|
// $empCode = $patient_data_res['emp_code'];
|
|
// $aadharCode = $patient_data_res['aadhar_no'];
|
|
|
|
// //MAKE COLUMN KEY VALUE PAIR
|
|
// array_shift($patient_data_res);
|
|
|
|
// //CHECK IF PATIENT AVAILABLE IN MAIN TABLE
|
|
// $check_duplicate = "SELECT COUNT(*) AS data_exists FROM patient_master WHERE emp_code = '$empCode';";
|
|
// $check_duplicate_row = mysqli_query($conn, $check_duplicate);
|
|
// $check_duplicate_res = $check_duplicate_row->fetch_assoc();
|
|
|
|
// if ($check_duplicate_res['data_exists'] > 0) { // update case
|
|
// $patient_main_id = "";
|
|
// if (!empty($empCode)) {
|
|
// $patient_main_id = getTableFieldValue('patient_master', 'id', 'emp_code', "'" . $empCode . "'");
|
|
// }
|
|
|
|
// if (!empty($aadharCode) && empty($empCode)) {
|
|
// $patient_main_id = getTableFieldValue('patient_master', 'id', 'aadhar_no', "'" . $aadharCode . "'");
|
|
// }
|
|
|
|
// // MAP NEW ID OF PATIENT TO TEMPRORY
|
|
// $map_patient_id[$patient_temp_id] = $patient_main_id;
|
|
|
|
// $queryDeleteData = "DELETE FROM $SourceTable[$i] WHERE emp_code = '$empCode';";
|
|
// $resultDeleteData = mysqli_query($conn, $queryDeleteData);
|
|
|
|
// // Check if the data deletion was successful
|
|
// if ($resultDeleteData) {
|
|
// $move_status['patient_response'] = "MOVED PATIENT DATA";
|
|
// } else {
|
|
// $move_status['patient_response'] = "ERROR DELETING PATIENT DATA FROM SOURCE TABLE";
|
|
// rollback();
|
|
// exit(mysqli_error($conn));
|
|
// }
|
|
|
|
// }else{
|
|
// //INSERT ROW IN PATIENT_MASTER
|
|
// $initquery = "insert into patient_master set ";
|
|
// $endquery = "";
|
|
|
|
// // error_log("INITIAL " . $initquery);
|
|
// $query_patient = $initquery . $columnValuePairs . $endquery;
|
|
|
|
// // error_log("FINAL " . $query_patient);
|
|
|
|
// error_log("patient master query " . $query_patient);
|
|
|
|
// if (!$result = @mysqli_query($conn, $query_patient)) {
|
|
// error_log("Exception:" . mysqli_error($conn));
|
|
// error_log("Failed to Execute Patient Insert/Update Query::: " . $query_patient);
|
|
// // $response_array['responseText']=mysqli_error($conn);
|
|
// $move_status['patient_response'] = mysqli_error($conn);
|
|
// rollback();
|
|
// exit(mysqli_error($conn));
|
|
// }else{
|
|
// $patient_main_id = "";
|
|
// if (!empty($empCode)) {
|
|
// $patient_main_id = getTableFieldValue('patient_master', 'id', 'emp_code', "'" . $empCode . "'");
|
|
// }
|
|
|
|
// if (!empty($aadharCode) && empty($empCode)) {
|
|
// $patient_main_id = getTableFieldValue('patient_master', 'id', 'aadhar_no', "'" . $aadharCode . "'");
|
|
// }
|
|
|
|
// // MAP NEW ID OF PATIENT TO TEMPRORY
|
|
// $map_patient_id[$patient_temp_id] = $patient_main_id;
|
|
|
|
// $queryDeleteData = "DELETE FROM $SourceTable[$i] WHERE emp_code = '$empCode';";
|
|
// $resultDeleteData = mysqli_query($conn, $queryDeleteData);
|
|
|
|
// // Check if the data deletion was successful
|
|
// if ($resultDeleteData) {
|
|
// $move_status['patient_response'] = "MOVED PATIENT DATA";
|
|
// $patient_insert_counter++;
|
|
// } else {
|
|
// $move_status['patient_response'] = "ERROR DELETING PATIENT DATA FROM SOURCE TABLE";
|
|
// rollback();
|
|
// exit(mysqli_error($conn));
|
|
// }
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
|
$data = array(
|
|
"patient_counter" => $patient_insert_counter,
|
|
"form_insert" => $form_insert_counter,
|
|
"form_update" => $form_update_counter,
|
|
"form_key_insert" => $form_key_insert_counter,
|
|
"form_key_update" => $form_key_update_counter,
|
|
"response" => $move_status
|
|
);
|
|
|
|
echo json_encode($data);
|
|
|
|
?>
|