2024-10-16 19:18:52 +05:30
< ? php
// include('includes/config/config.php');
// include('includes/functions.php');
$xaxis = array ();
$date = date ( " Y-m-d " );
$default_start_date = date ( 'Y-m-d' , strtotime ( $date . ' -7 days' ));
$default_end_date = date ( 'Y-m-d' , strtotime ( $date ));
error_log ( " date . " . $default_start_date . " " . $default_end_date );
if ( ! empty ( $_POST [ 'start_date' ])) {
$default_start_date = date ( 'Y-m-d' , strtotime ( $_POST [ 'start_date' ]));
}
if ( ! empty ( $_POST [ 'end_date' ])) {
$default_end_date = date ( 'Y-m-d' , strtotime ( $_POST [ 'end_date' ]));
}
error_log ( " date after filter . " . $default_start_date . " " . $default_end_date );
$total_injury_class_name = array ();
$total_injury_class = array ();
$sql = " select * from injury_class " ;
$result = mysqli_query ( $conn , $sql );
while ( $row = mysqli_fetch_assoc ( $result )) {
array_push ( $total_injury_class_name , '"' . $row [ 'inj_class_name' ] . '"' );
array_push ( $total_injury_class , $row [ 'inj_class_id' ]);
}
error_log ( " total injury " . print_r ( $total_injury_class , true ));
$injury_data = array ();
$date_data = array ();
2024-11-02 18:03:13 +05:30
for ( $i = 0 ; $i < count ( $total_injury_class ); $i ++ ) {
2024-10-16 19:18:52 +05:30
$query = " select count(appointment_id) from employee_appointment where date(appointment_date) >= ' " . $default_start_date . " ' and date(appointment_date) <= ' " . $default_end_date . " ' and
injury_classes_new = '" . $total_injury_class[$i] . "' or injury_classes_new like '%," . $total_injury_class[$i] . "' or injury_classes_new like '" . $total_injury_class[$i] . ",%' or injury_classes_new like '%," . $total_injury_class[$i] . ",%' " ;
error_log ( " injury query " . $query );
if ( ! $result = @ mysqli_query ( $conn , $query )) {
error_log ( " error in injury chart " . mysqli_error ( $conn ));
2024-11-02 18:03:13 +05:30
die ();
2024-10-16 19:18:52 +05:30
}
if ( mysqli_num_rows ( $result ) > 0 ) {
while ( $row = @ mysqli_fetch_array ( $result )) {
array_push ( $injury_data , $row [ 0 ]);
// array_push($date_data, $row[1]);
}
} else {
array_push ( $injury_data , 0 );
}
}
error_log ( " injury classification data trend " . print_r ( $injury_data , true ));
?>
< script >
var ctx = document . getElementById ( 'chart_monthly_injury' ) . getContext ( '2d' );
var chartData = [ < ? php echo join ( ',' , $injury_data ); ?> ];
var xaxis = [ < ? php echo join ( ',' , $total_injury_class_name ); ?> ];
// var label = [<?php echo join(',', $date_data); ?>];
var colors = [];
for ( var i = 0 ; i < chartData . length ; i ++ ) {
colors . push ( " # " + Math . floor ( Math . random () * 16777215 ) . toString ( 16 ));
}
var dataset = [];
// for (var i = 0; i < chartData.length; i++) {
dataset . push ({
label : " count " ,
data : chartData ,
borderColor : colors ,
backgroundColor : colors ,
fill : false ,
});
// }
var data = {
labels : xaxis ,
datasets : dataset
}
var myChart = new Chart ( ctx , {
type : 'horizontalBar' ,
data : data ,
options : {
legend : {
display : false
},
scales : {
xAxes : [{
ticks : {
beginAtZero : true ,
precision : 0 ,
}
}]
}
}
});
</ script >