183 lines
6.3 KiB
PHP
183 lines
6.3 KiB
PHP
<?php
|
|
|
|
$blood_sugar_ppbs = array();
|
|
$blood_sugar_fbs = array();
|
|
$blood_sugar_rbs = array();
|
|
$medical_date = array();
|
|
|
|
$fbs_new = array();
|
|
$rbs_new = array();
|
|
$ppbs_new = array();
|
|
|
|
|
|
$query = "SELECT blood_sugar_rbs as rbs, date(appointment_date) as dat FROM employee_appointment
|
|
where emp_id='$id'and blood_sugar_rbs != ''
|
|
UNION
|
|
SELECT cf.checkup_form_value as rbs ,date(c.checkup_date) as dat from
|
|
checkup_form c left join checkup_form_key_value cf on
|
|
c.checkup_id=cf.checkup_form_id left join checkup_parameter cp on
|
|
cp.`column_name` = cf.checkup_form_key
|
|
where c.emp_id='$id' and cp.key_health_map_name=(select key_param_id from key_health_reportable_parameter_master where key_param_name='rbs') order by dat desc limit 25";
|
|
|
|
error_log("rbs query ".$query);
|
|
$result = @mysqli_query($conn, $query);
|
|
if (mysqli_num_rows($result) > 0) {
|
|
while ($row = @mysqli_fetch_array($result)) {
|
|
array_push($medical_date, $row[1]);
|
|
$blood_sugar_rbs['rbs'][$row[1]] = $row[0];
|
|
}
|
|
}
|
|
|
|
$query = "SELECT blood_sugar_fbs as fbs, date(appointment_date) as dat FROM employee_appointment
|
|
where emp_id='$id'and blood_sugar_fbs != ''
|
|
UNION
|
|
SELECT cf.checkup_form_value as fbs ,date(c.checkup_date) as dat from
|
|
checkup_form c left join checkup_form_key_value cf on
|
|
c.checkup_id=cf.checkup_form_id left join checkup_parameter cp on
|
|
cp.`column_name` = cf.checkup_form_key
|
|
where c.emp_id='$id' and cp.key_health_map_name=(select key_param_id from key_health_reportable_parameter_master where key_param_name='fbs') order by dat desc limit 25";
|
|
|
|
error_log("fbs query ".$query);
|
|
$result = @mysqli_query($conn, $query);
|
|
if (mysqli_num_rows($result) > 0) {
|
|
while ($row = @mysqli_fetch_array($result)) {
|
|
array_push($medical_date, $row[1]);
|
|
$blood_sugar_fbs['fbs'][$row[1]] = $row[0];
|
|
}
|
|
}
|
|
|
|
|
|
$query = "SELECT blood_sugar_ppbs as ppbs, date(appointment_date) as dat FROM employee_appointment
|
|
where emp_id='$id'and blood_sugar_ppbs != ''
|
|
UNION
|
|
SELECT cf.checkup_form_value as ppbs ,date(c.checkup_date) as dat from
|
|
checkup_form c left join checkup_form_key_value cf on
|
|
c.checkup_id=cf.checkup_form_id left join checkup_parameter cp on
|
|
cp.`column_name` = cf.checkup_form_key
|
|
where c.emp_id='$id' and cp.key_health_map_name=(select key_param_id from key_health_reportable_parameter_master where key_param_name='ppbs') order by dat desc limit 25";
|
|
|
|
error_log("ppbs query ".$query);
|
|
$result = @mysqli_query($conn, $query);
|
|
if (mysqli_num_rows($result) > 0) {
|
|
while ($row = @mysqli_fetch_array($result)) {
|
|
array_push($medical_date, $row[1]);
|
|
$blood_sugar_ppbs['ppbs'][$row[1]] = $row[0];
|
|
}
|
|
}
|
|
$medical_date = array_values(array_unique($medical_date));
|
|
error_log("sugar chart date array ".print_r($medical_date,true));
|
|
|
|
|
|
for($i = 0; $i < sizeof($medical_date); $i++){
|
|
|
|
error_log("inside loop value".$blood_sugar_rbs['rbs'][$medical_date[$i]]);
|
|
error_log("inside loop value".$blood_sugar_fbs['fbs'][$medical_date[$i]]);
|
|
error_log("inside loop value".$blood_sugar_ppbs['ppbs'][$medical_date[$i]]);
|
|
|
|
if($blood_sugar_rbs['rbs'][$medical_date[$i]] == ''){
|
|
array_push($rbs_new,0);
|
|
}else{
|
|
array_push($rbs_new,$blood_sugar_rbs['rbs'][$medical_date[$i]]);
|
|
}
|
|
if($blood_sugar_fbs['fbs'][$medical_date[$i]] == ''){
|
|
array_push($fbs_new,0);
|
|
}else{
|
|
array_push($fbs_new,$blood_sugar_fbs['fbs'][$medical_date[$i]]);
|
|
}
|
|
if($blood_sugar_ppbs['ppbs'][$medical_date[$i]] == ''){
|
|
array_push($ppbs_new,0);
|
|
}else{
|
|
array_push($ppbs_new,$blood_sugar_ppbs['ppbs'][$medical_date[$i]]);
|
|
}
|
|
}
|
|
|
|
error_log("final height ".print_r($rbs_new, true));
|
|
error_log("final weight ".print_r($fbs_new, true));
|
|
error_log("final bmi ".print_r($ppbs_new, true));
|
|
?>
|
|
|
|
|
|
<script>
|
|
var ctx = document.getElementById('patient_bs').getContext('2d');
|
|
var blood_sugar_ppbs = [<?php echo join(',', $ppbs_new); ?>];
|
|
var blood_sugar_rbs = [<?php echo join(',', $rbs_new); ?>];
|
|
var blood_sugar_fbs = [<?php echo join(',', $fbs_new); ?>];
|
|
var xaxis = [<?php echo json_encode($medical_date); ?>];
|
|
|
|
function formatDateBMI(input) {
|
|
var datePart = input.match(/\d+/g),
|
|
year = datePart[0],
|
|
month = datePart[1],
|
|
day = datePart[2];
|
|
return day + '-' + month + '-' + year;
|
|
}
|
|
for (let i = 0; i < xaxis[0].length; i++) {
|
|
xaxis[0][i] = formatDateBMI(xaxis[0][i]);
|
|
}
|
|
|
|
var myChart = new Chart(ctx, {
|
|
type: 'line',
|
|
options: {
|
|
title: {
|
|
display: true,
|
|
text: "Blood Sugar Graph"
|
|
},
|
|
legend: {
|
|
position: "bottom"
|
|
},
|
|
scales: {
|
|
yAxes: [{
|
|
ticks: {
|
|
precision: 0
|
|
}
|
|
}]
|
|
}
|
|
},
|
|
data: {
|
|
labels: xaxis[0],
|
|
datasets: [{
|
|
data: blood_sugar_ppbs,
|
|
label: "Blood Sugar PPBS",
|
|
borderColor: "#7bb6dd",
|
|
backgroundColor: "#7bb6dd",
|
|
fill: false,
|
|
pointBackgroundColor: function(context) {
|
|
var index = context.dataIndex;
|
|
var value = context.dataset.data[index];
|
|
return value < 140 ? 'red' : // draw negative values in red
|
|
index % 2 ? 'blue' :
|
|
// else, alternate values in blue and green
|
|
'green';
|
|
}
|
|
}, {
|
|
data: blood_sugar_rbs,
|
|
label: "Blood Sugar RBS",
|
|
borderColor: "#ff7c43",
|
|
backgroundColor: "#ffa500",
|
|
fill: false,
|
|
pointBackgroundColor: function(context) {
|
|
var index = context.dataIndex;
|
|
var value = context.dataset.data[index];
|
|
return value < 124 ? 'red' : // draw negative values in red
|
|
index % 2 ? 'blue' :
|
|
// else, alternate values in blue and green
|
|
'green';
|
|
}
|
|
}, {
|
|
data: blood_sugar_fbs,
|
|
label: "Blood Sugar FBS",
|
|
borderColor: "#800080",
|
|
backgroundColor: "#800080",
|
|
fill: false,
|
|
pointBackgroundColor: function(context) {
|
|
var index = context.dataIndex;
|
|
var value = context.dataset.data[index];
|
|
return value < 124 ? 'red' : // draw negative values in red
|
|
index % 2 ? 'blue' :
|
|
// else, alternate values in blue and green
|
|
'green';
|
|
}
|
|
}]
|
|
},
|
|
});
|
|
</script>
|