public function consumption_data_dashboard($commodity_id = null, $district_id = null, $facility_code = null, $option = null, $from = null, $to = null, $graph_type = null, $tracer = null) { //reset the values here switch ($option) { case 'ksh': $axis = "Ksh"; break; case 'units': $axis = "Units"; break; case 'packs': $axis = "Packs"; break; default: $option = 'packs'; $axis = "Packs"; // $axis = "Ksh"; break; } $commodity_id = $commodity_id == "NULL" ? null : $commodity_id; $district_id = isset($district_id) && $district_id > 0 ? $district_id : $this->session->userdata('district_id'); $county_id = isset($county_id) && $county_id > 0 ? $county_id : $this->session->userdata('county_id'); $facility_code = $facility_code == "NULL" ? null : $facility_code; $report_type = $graph_type == "NULL" ? null : $graph_type; // echo $district_id;exit; $from = $from == "NULL" ? strtotime(date('Y-m-01')) : strtotime(urldecode($from)); $to = $to == "NULL" ? strtotime(date('Y-m-d')) : strtotime(urldecode($to)); $county_name = counties::get_county_name($county_id); //start building the notifications dashboaard first //compute stocked out items $items_stocked_out_in_facility = count(facility_stocks::get_items_that_have_stock_out_in_facility($facility_code, $district_id, $county_id)); // echo "I reach here";exit; //get order information from the db $facility_order_count_ = facility_orders::get_facility_order_summary_count($facility_code, $district_id, $county_id); $facility_order_count = array(); foreach ($facility_order_count_ as $facility_order_count_) { $facility_order_count[$facility_order_count_['status']] = $facility_order_count_['total']; } //get potential expiries infor here $potential_expiries = count(Facility_stocks::getpotentialexpcount($county_id, $district_id)); //get actual Expiries infor here $actual_expiries = count(Facility_stocks::getexpcount($county_id, $district_id)); //get items they have been donated for $facility_donations = count(redistribution_data::get_redistribution_data($facility_code, $district_id, $county_id, date('Y'))); $identifier = $this->session->userdata('user_indicator'); //get the roll out status here $facility_roll_out_status = Facilities::get_tragetted_rolled_out_facilities($facility_code, $district_id, $county_id, $identifier); $category_data = $series_data = $graph_data = $series_data_ = $amc = array(); //check if the district is set $district_data = isset($district_id) && $district_id > 0 ? districts::get_district_name($district_id)->toArray() : null; $district_name_ = isset($district_data) ? " :" . $district_data[0]['district'] . " subcounty" : null; //$option = "packs"; $facility_code_ = isset($facility_code) ? facilities::get_facility_name_($facility_code)->toArray() : null; $facility_name = $facility_code_[0]['facility_name']; $commodity_name = isset($commodity_id) ? Commodities::get_details($commodity_id)->toArray() : null; $category_name_ = @$commodity_name[0]['commodity_name']; $commodity_name = isset($category_name_) ? " for " . $category_name_ : null; $title = isset($facility_code) && isset($district_id) ? "{$district_name_} : {$facility_name}" : ($district_id > 0 && !isset($facility_code) ? "{$district_name_}" : "{$county_name['county']} county"); $time = "between " . date('j M y', $from) . " and " . date('j M y', $to); $consumption_data = Facility_stocks::get_county_consumption_level_new($facility_code, $district_id, $county_id, $category_id, $commodity_id, $option, $from, $to, $report_type, $tracer); //echo $consumption_data;exit;//seth //echo "<pre>"; //print_r($consumption_data);die; foreach ($consumption_data as $data) { if ($report_type == "table_data") { if ($commodity_id > 0) { array_push($series_data, array($data['district'], $data["facility_name"], $data["facility_code"], $data['commodity'], (int) $data['total'])); } else { array_push($series_data, array($data["name"], $data['commodity'], (int) $data['total'])); } } elseif ($tracer == 1) { $series_data = array_merge($series_data, array((int) $data['total'])); $series_data_ = array_merge($series_data_, array(array($data["commodity"], (int) $data['total']))); $category_data = array_merge($category_data, array($data["commodity"])); } else { $series_data = array_merge($series_data, array((int) $data['total'])); $series_data_ = array_merge($series_data_, array(array($data["name"], (int) $data['total']))); $category_data = array_merge($category_data, array($data["name"])); } } $default_consumption_graph_ = array(); $graph_type = 'bar'; $default_consumption_graph_ = array_merge($default_consumption_graph_, array("graph_id" => 'graph_content_')); $default_consumption_graph_ = array_merge($default_consumption_graph_, array("graph_title" => "Consumption level {$commodity_name} {$title} {$time}")); $default_consumption_graph_ = array_merge($default_consumption_graph_, array("graph_type" => $graph_type)); $default_consumption_graph_ = array_merge($default_consumption_graph_, array("graph_yaxis_title" => "{$axis}")); $default_consumption_graph_ = array_merge($default_consumption_graph_, array("graph_categories" => $category_data)); $default_consumption_graph_ = array_merge($default_consumption_graph_, array("series_data" => array('Consumption' => $series_data))); $check_count = count($series_data); $data = array(); $data = array(); if ($check_count <= 0) { // $def_cons= ' $("#graph_content_").html("<b>You have no Records, for this period please try using the filters</b>!"); // $("#graph_content_").removeAttr( "style" ); // $("#graph_content_").css({"height": "auto", "font-size": "200%","font-align": "center","margin-top": "2%"}); '; $def_cons = ' $("#graph_content_").html("<b>You have no Records, for this period please try using the filters</b>!"); $("#graph_content_").css({"height": "auto", "font-size": "100%","font-align": "center","margin-top": "2%"}); '; } else { $def_cons = $this->hcmp_functions->create_high_chart_graph($default_consumption_graph_); } $data['default_consumption_graph'] = $def_cons; $county_id = $this->session->userdata('county_id'); $data['district_data'] = districts::getDistrict($county_id); $data['c_data'] = Commodities::get_all_2(); $data['tracer_items'] = Commodities::get_tracer_items(); $data['categories'] = commodity_sub_category::get_all_pharm(); $data['county_dashboard_notifications'] = array('items_stocked_out_in_facility' => $items_stocked_out_in_facility, 'facility_order_count' => $facility_order_count, 'potential_expiries' => $potential_expiries, 'actual_expiries' => $actual_expiries, 'facility_donations' => $facility_donations, 'facility_roll_out_status' => $facility_roll_out_status); //echo "<pre>";print_r($data['county_dashboard_notifications']); exit; return $this->load->view("subcounty/ajax/county_consumption_data_filter_v", $data); }
public function stock_level_dashboard() { //seth $tracer = isset($tracer) ? $tracer : null; $commodity_id = $commodity_id == "NULL" ? null : $commodity_id; $district_id = $district_id == "NULL" ? null : $district_id; $option = $option == "NULL" ? null : $option; $category_id = $category_id == "NULL" ? null : $category_id; $facility_code = $facility_code == "NULL" ? null : $facility_code; $option = $option == "NULL" || $option == "null" ? null : $option; $county_id = $this->session->userdata('county_id'); $county_name = counties::get_county_name($county_id); $category_data = $series_data = $series_data_ = $graph_data = $data = array(); $title = ''; $year = date('Y'); $month_ = date('M d'); //echo $district_id." Cty:".$county_id." Fcty:".$facility_code." Cmd_id:".$commodity_id." Report Type:".$report_type." TRacer:".$tracer;exit; $district = $this->session->userdata('district_id'); $county_id = $this->session->userdata('county_id'); $user = $this->session->userdata('user_indicator'); $graph_data_default = $series_data = $series_data_ = array(); if ($user == "district") { $district_name = districts::get_district_name($district)->toArray(); $district_name_ = $district_name[0]['district']; $title .= ' ' . $district_name_ . " Subcounty"; } elseif ($user == "county") { $county_name = counties::get_county_name($county_id); $county_name_ = $county_name['county']; $title .= ' ' . $county_name_ . " County "; } $tracer = $report_type = 1; $final_graph_data = facility_stocks_temp::get_months_of_stock($district_id, $county_id, NULL, NULL, $report_type, $tracer); //facility_stocks_temp::get_months_of_stock($district_id , $county_id , $facility_code ,$commodity_id,$report_type,$tracer) /*foreach($final_graph_data as $final_graph_data_): $graph_data_default['graph_categories'] = array_merge($graph_data_default['graph_categories'], array($final_graph_data_['commodity_name'])); $graph_data['series_data']['Month of Stock'] = array_merge($graph_data['series_data']['Month of Stock'],array((int)$final_graph_data_['total'])); endforeach;*/ $graph_type = 'bar'; $graph_data = array_merge($graph_data, array("graph_id" => 'default_graph_')); $graph_data = array_merge($graph_data, array("graph_title" => "Months Of Stock For " . $title . "")); $graph_data = array_merge($graph_data, array("graph_type" => $graph_type)); $graph_data = array_merge($graph_data, array("graph_yaxis_title" => "Months of Stock")); $graph_data = array_merge($graph_data, array("graph_categories" => array())); $graph_data = array_merge($graph_data, array("series_data" => array("Month of Stock" => array()))); foreach ($final_graph_data as $final_graph_data_) { $graph_data['graph_categories'] = array_merge($graph_data['graph_categories'], array($final_graph_data_['commodity_name'])); $graph_data['series_data']['Month of Stock'] = array_merge($graph_data['series_data']['Month of Stock'], array((int) $final_graph_data_['total'])); } //$facility_code=(!$this -> session -> userdata('facility_id')) ? null: $this -> session -> userdata('facility_id'); $district_id = !$this->session->userdata('district_id') ? null : $this->session->userdata('district_id'); //$county_id=(!$this -> session -> userdata('county_id')) ? null:$this -> session -> userdata('county_id'); //compute stocked out items $items_stocked_out_in_facility = count(facility_stocks::get_items_that_have_stock_out_in_facility($facility_code, $district_id, $county_id)); //get order information from the db $facility_order_count_ = facility_orders::get_facility_order_summary_count($facility_code, $district_id, $county_id); $facility_order_count = array(); foreach ($facility_order_count_ as $facility_order_count_) { $facility_order_count[$facility_order_count_['status']] = $facility_order_count_['total']; } //get potential expiries infor here // $potential_expiries = count(Facility_stocks::get_potential_expiry_summary($county_id,6,$district_id,$facility_code)); $potential_expiries = count(Facility_stocks::getpotentialexpcount($county_id, $district_id)); //get actual Expiries infor here $actual_expiries = count(Facility_stocks::getexpcount($county_id, $district_id)); //get items they have been donated for $facility_donations = count(redistribution_data::get_redistribution_data($facility_code, $district_id, $county_id, date('Y'))); $identifier = $this->session->userdata('user_indicator'); //get the roll out status here $facility_roll_out_status = Facilities::get_tragetted_rolled_out_facilities($facility_code, $district_id, $county_id, $identifier); $data['county_dashboard_notifications'] = array('items_stocked_out_in_facility' => $items_stocked_out_in_facility, 'facility_order_count' => $facility_order_count, 'potential_expiries' => $potential_expiries, 'actual_expiries' => $actual_expiries, 'facility_donations' => $facility_donations, 'facility_roll_out_status' => $facility_roll_out_status); $data['graph_data_default'] = $this->hcmp_functions->create_high_chart_graph($graph_data); //return $this -> load -> view("shared_files/report_templates/high_charts_template_v", $data); //$graph_data_ = $this->hcmp_functions->create_high_chart_graph($graph_data_default); //$data['graph_data_default'] = $graph_data_; $data['district_data'] = districts::getDistrict($this->session->userdata('county_id')); $data['c_data'] = Commodities::get_all_2(); $data['tracer_items'] = Commodities::get_tracer_items(); $data['division_commodities'] = commodity_division_details::get_all_divisions(); $data['categories'] = commodity_sub_category::get_all_pharm(); $data['number_of_tracer_items'] = count(facility_stocks_temp::get_tracer_item_names()); //$data['high_graph'] = $this->hcmp_functions->create_high_chart_graph($graph_data); return $this->load->view("subcounty/ajax/county_stock_level_filter_v", $data); }