Esempio n. 1
0
 public function get_division_commodities_data($district_id = null, $facility_code = null, $division_id = null, $option = null, $report_type = null)
 {
     //reset the values here
     // echo $report_type;exit;
     $district_id = $district_id == "NULL" ? null : $district_id;
     $division_id = $division_id == "NULL" ? null : $division_id;
     $option = $option == "NULL" ? null : $option;
     $facility_code = $facility_code == "NULL" ? null : $facility_code;
     $option = $option == "NULL" || $option == "null" ? null : $option;
     //setting up the data
     if ($option == "mos" && $report_type != "csv_data" && $report_type != "table_data") {
         return $this->division_commodities_stock_level_graph($district_id, $county_id, $facility_code, $commodity_id, $division_id);
     }
     $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');
     //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_new = isset($option) ? $option : "ksh";
     $facility_code_ = isset($facility_code) ? facilities::get_facility_name_($facility_code)->toArray() : null;
     $facility_name = $facility_code_[0]['facility_name'];
     $division_name = isset($division_id) ? Commodity_division_details::get_all_divisions($division_id)->toArray() : null;
     $division_name_ = @$division_name[0]['division_name'];
     $commodity_name = isset($division_name_) ? " for " . $division_name_ : null;
     $title = isset($facility_code) && isset($district_id) ? "{$district_name_} : {$facility_name}" : (isset($district_id) && !isset($facility_code) ? "{$district_name_}" : "{$county_name['county']} county");
     $commodity_array = facility_stocks::get_county_drug_stock_level_new($facility_code, $district_id, $county_id, $category_id, $commodity_id, $option_new, $report_type, $division_id);
     // echo $facility_code." Dist: ". $district_id." Cty:". $county_id." Cat:".$category_id." Comm:". $commodity_id." Optn:". $option_new." Rpt typ:". $report_type." Div id:".$division_id;exit;
     foreach ($commodity_array as $data) {
         if ($report_type == "table_data") {
             if ($division_id > 0) {
                 array_push($series_data, array($data['district'], $data["commodity_name"], $data["facility_name"], $data["facility_code"], (int) $data['total']));
             } else {
                 array_push($series_data, array($data["name"], (int) $data['total']));
             }
         } else {
             //$series_data_  = array_merge($series_data_ , array(array($data['district'],$data["facility_name"],$data["facility_code"],$data["commodity_name"],(int)$data['total'])));
             $series_data = array_merge($series_data, array($data["name"] => (int) $data['total']));
             $series_data_ = array_merge($series_data_, array(array($data["name"], $data["facility_name"], $data["commodity_name"], (int) $data['total'])));
             $category_data = array_merge($category_data, array($data["name"]));
             $category_data = array_unique($category_data);
         }
     }
     //echo "<pre>";print_r($category_data);echo "</pre>";
     //echo "<pre>"; print_r(array_unique($category_data));echo "</pre>";exit;
     /*foreach ($commodity_array as $data) :
     	 if ((isset($district_id) && isset($facility_code)) || ((isset($district_id)) && (!isset($facility_code)))):
     	 $category_data = array_merge($category_data, array($data["commodity_name"]));
     	 $series_data  = array_merge($series_data , array($data["commodity_name"]=> $data['total']));
     	 endif;
     	 //echo $district_id.$facility_code;exit;
     	 //echo "<pre>";print_r($category_data);echo "</pre>";exit;
     	 endforeach;
     	 //echo "<pre>"; print_r($commodity_array);echo "</pre>";
     	 //echo "<pre>"; print_r($series_data);echo "</pre>";
     	 //echo "<pre>";print_r($category_data);echo "</pre>";exit;*/
     if ($report_type == "table_data") {
         if ($division_id > 0) {
             $category_data = array(array("Sub-county", "Facility Name", "Mfl", "TOTAL " . $option_new));
         } else {
             array_push($category_data, array("Stock level {$commodity_name} {$title} {$month_} {$year}", "stocks worth in {$option_new}"));
         }
         $graph_data = array_merge($graph_data, array("table_id" => 'dem_graph_'));
         $graph_data = array_merge($graph_data, array("table_header" => $category_data));
         $graph_data = array_merge($graph_data, array("table_body" => $series_data));
         $data['table'] = $this->hcmp_functions->create_data_table($graph_data);
         $data['table_id'] = "dem_graph_";
         return $this->load->view("shared_files/report_templates/data_table_template_v", $data);
     } elseif ($report_type == "csv_data") {
         //echo "<pre>";print_r($series_data);echo "</pre>";exit;
         $excel_data = array('doc_creator' => $this->session->userdata('full_name'), 'doc_title' => "Stock level {$commodity_name} {$title} {$month_} {$year}", 'file_name' => "Stock_level_{$commodity_name_}{$title_}{$month_}{$year}");
         $row_data = array();
         $column_data = array("Stock level {$commodity_name} {$title} {$month_} {$year}", "Commodity", "Facility", "stocks worth in {$option_new}");
         $excel_data['column_data'] = $column_data;
         $row_data = array_merge($row_data, $series_data_);
         $excel_data['row_data'] = $row_data;
         $this->hcmp_functions->create_excel($excel_data);
     } else {
         $graph_type = 'column';
         $graph_data = array_merge($graph_data, array("graph_id" => 'default_graph_'));
         $graph_data = array_merge($graph_data, array("graph_title" => "Stock Level {$commodity_name} {$title} {$month_} {$year}"));
         $graph_data = array_merge($graph_data, array("graph_type" => $graph_type));
         $graph_data = array_merge($graph_data, array("graph_yaxis_title" => "Commodity Stock level in {$option_new}"));
         $graph_data = array_merge($graph_data, array("graph_categories" => $category_data));
         $graph_data = array_merge($graph_data, array("series_data" => array('total' => $series_data)));
         $data['high_graph'] = $this->hcmp_functions->create_high_chart_graph($graph_data);
         return $this->load->view("shared_files/report_templates/high_charts_template_v", $data);
     }
 }