avail_status = $context['avail_status']; $this->avail_edit = $context['avail_edit']; $this->link_view = $context['link_view']; $this->link_edit = $context['link_edit']; $this->status = $context['status']; $this->job_id = $context['id']; $this->order = (empty($context['order'])) ? "ASC" : $context['order']; $this->method = (empty($context['method'])) ? "id" : $context['method']; } public function get_data() { global $database; $db_name = $this->db_name; $status = $this->status; $job_id = $this->job_id; $sql = " SELECT * FROM job_trackings WHERE job_id = '$job_id' "; $results = $database->getAll($sql); $departments = common_production_department::get_all_active_departments(); foreach($departments AS $department) { $id = $department['id']; $check_status = " SELECT count(id) FROM job_trackings_completed WHERE job_id = '$job_id' AND department_id = '$id' "; $completed = $database->getOne($check_status); $department['status'] = ($completed == 0) ? "" : ''; $get_tracking = " SELECT start_time,end_time FROM job_trackings WHERE job_id = '$job_id' AND department = '$id' "; $trackings = $database->getAll($get_tracking); $department['actuals'] = 0; if(count($trackings) > 0) { foreach($trackings AS $tracking) { if($tracking['end_time'] == '0000-00-00 00:00:00') $tracking['end_time'] = date('Y-m-d G:i:s'); $department['actuals'] += dates::total_time($tracking['start_time'],$tracking['end_time']); } } else { $department['actuals'] = 0; } $return_results[] = $department; } $this->final_results = $return_results; return $this; } public function show() { global $database; $order = $this->order; $method = $this->method; $results = $this->final_results; $avail_status = $this->avail_status; $avail_edit = $this->avail_edit; $link_view = $this->link_view; $link_edit = $this->link_edit; $normalised_results = filter::sort_results($method,$order,$results); $normalise_get = filter::normalise_get($order); $pagination_results = filter::pagination($normalised_results,$normalise_get); filter::pagination_html($pagination_results); $pagination = $pagination_results['pagination']; $start = $pagination_results['start']; $size = $pagination_results['size']; $total_results = $pagination_results['total_results']; $max_size = $pagination_results['max_size']; $order = ($order == "ASC") ? "DESC" : "ASC"; $normalise_get = filter::normalise_get($order); $new_normalised_results = array(); foreach($normalised_results AS $key => $value) $new_normalised_results[] = $key; ?> 0) { for($i = $start; $i < $max_size; $i++) { $key = $new_normalised_results[$i]; $mod = $count%2; $class = ($mod == 0) ? "odd" : "even"; $count++; $total_actuals += $results[$key]['actuals']; ?>
Department Actual Status
edit