query( "SELECT a.department_id, b.department_desc FROM setting_department a LEFT JOIN setting_department_translation b ON ( a.department_id = b.department_id ) WHERE a.deleted_at IS NULL AND b.lang = 'en'" ) ; if ( $select_departments->num_rows > 0 ){ while ( $row_department = $select_departments->fetch_assoc() ){ $department_lists[$row_department['department_id']] = dataFilter( $row_department['department_desc'] ) ; } } // staff department $staffdeparments = [] ; $select_staffdeparments = $mysqli->query( "SELECT a.staff_id, a.department_id FROM staff_department a WHERE a.deleted_at IS NULL GROUP BY a.staff_id" ) ; if ( $select_staffdeparments->num_rows > 0 ){ while ( $row_staffdeparment = $select_staffdeparments->fetch_assoc() ){ $staffdeparments[$row_staffdeparment['staff_id']] = $row_staffdeparment['department_id'] ; } } // plus minus report $group_lists = [] ; $split_departmerns = [] ; $split_lists = [] ; $split_grouplists = [] ; $all_lists = [] ; $plus_lists = [] ; $minus_lists = [] ; $select_adjustment = $mysqli->query( "SELECT SUM(a.point) as total, SUM(CASE WHEN a.point > 0 THEN a.point ELSE 0 END) AS totalplus, SUM(CASE WHEN a.point < 0 THEN a.point ELSE 0 END) AS totalminus, a.staff_id FROM staff_adjustment_point a LEFT JOIN staff b ON ( a.staff_id = b.staff_id ) WHERE a.deleted_at IS NULL AND a.created_at LIKE '%" . $date_time . "%' AND b.deleted_at IS NULL " . $search_query . " GROUP BY a.staff_id" ) ; if ( $select_adjustment->num_rows > 0 ){ while ( $row_adjustment = $select_adjustment->fetch_assoc() ){ $get_department = $staffdeparments[$row_adjustment['staff_id']] ; $group_lists[$get_department] = ( $group_lists[$get_department] + $row_adjustment['total'] ) ; $split_lists['plus'][$get_department] = ( $split_lists['plus'][$get_department] + $row_adjustment['totalplus'] ) ; $split_lists['minus'][$get_department] = ( $split_lists['minus'][$get_department] + $row_adjustment['totalminus'] ) ; $split_departmerns[$get_department] = $get_department ; } } foreach ( $group_lists as $k => $v ){ $get_departmentname = ( $k == '0' ? 'Cross Department' : $department_lists[$k] ) ; $all_lists[] = [ 'label' => $get_departmentname, 'y' => floatval( $v ) ] ; } foreach ( $split_lists as $k_lists => $v_lists ){ $temps = [] ; foreach ( $split_departmerns as $k_department => $v_department ){ $temps[] = [ 'label' => ( $v_department == '0' ? 'Cross Department' : $department_lists[$v_department] ), 'y' => floatval( checkExists( $v_lists[$v_department], '0' ) ) ] ; } $split_grouplists[] = [ 'type' => 'bar', 'showInLegend' => true, 'name' => ucwords( $k_lists ), 'dataPoints' => $temps ] ; } ?>