예제 #1
0
파일: sms.php 프로젝트: HCMPKenya/RTK_TEST
 public function expiries_report()
 {
     //Set the current year
     $year = date("Y");
     //get the facilities in the district
     $counties = Facilities::get_counties_all_using_HCMP();
     foreach ($counties as $counties) {
         //holds the dat for the entire county
         //once it is done executing for one county it is reset to zero
         $county_total = array();
         //pick the county nae and county ID accordingly
         $county_id = $counties['county'];
         $county_name = $counties['county_name'];
         //Get all the ddistricts in that  particular county
         $districts = Facilities::get_all_using_HCMP($county_id);
         //holds the data for all the districts in a particular county
         $district_total = array();
         foreach ($districts as $districts) {
             $district_id = $districts['district'];
             $district_name = $districts['name'];
             //get all facilities in that district
             $facilities = Facilities::getFacilities_for_email($district_id);
             //holds all the data for all facilities in a particular district
             $facility_total = array();
             foreach ($facilities as $facilities_) {
                 //holds the total value of expiries for that particular facility in that district
                 $facility_potential_expiries_total = 0;
                 //$facility_potential_expiries = array();
                 $facility_code = $facilities_->facility_code;
                 $facility_name = Facilities::get_facility_name2($facility_code);
                 $facility_name = $facility_name['facility_name'];
                 //$facility_potential_expiries = Facility_stocks::get_items_that_have_stock_out_in_facility(17401, 88, null);
                 $facility_potential_expiries = Facility_stocks::All_expiries_email($facility_code, 'all');
                 //get potential expiries in that particular facility
                 //$facility_potential_expiries = Facility_stocks::potential_expiries_email($district_id, $facility_code);
                 //push the result into another array that will be used by the distrct
                 array_key_exists($facility_name, $facility_total) ? $facility_total[$facility_name] = array_merge($facility_total[$facility_name], array($facility_potential_expiries)) : ($facility_total = array_merge($facility_total, array($facility_name => array($facility_potential_expiries))));
                 //Start buliding the excel file
                 $excel_data = array();
                 $excel_data = array('doc_creator' => $facility_name, 'doc_title' => 'facility expiries weekly report ', 'file_name' => 'facility weekly report');
                 $row_data = array();
                 $column_data = array("Facility Code", "Facility Name", "Commodity Code", "Commodity Name", "Expiry Date", "Batch No", "Manufacturer", "Unit Size", "Current Balance");
                 $excel_data['column_data'] = $column_data;
                 foreach ($facility_potential_expiries as $facility_potential_expiries) {
                     array_push($row_data, array($facility_potential_expiries["facility_code"], $facility_potential_expiries["facility_name"], $facility_potential_expiries["commodity_code"], $facility_potential_expiries["commodity_name"], $facility_potential_expiries["expiry_date"], $facility_potential_expiries["batch_no"], $facility_potential_expiries["manufacture"], $facility_potential_expiries["unit_size"], $facility_potential_expiries["current_balance"]));
                 }
                 if (empty($row_data)) {
                     //do nothing
                 } else {
                     $excel_data['row_data'] = $row_data;
                     $excel_data['report_type'] = "download_file";
                     $excel_data['file_name'] = $facility_name . "_Expiries_Report";
                     $message = "Find attached an excel sheet with the breakdown for the Expiries in the facility";
                     $this->hcmp_functions->create_excel($excel_data);
                     $handler = "./print_docs/excel/excel_files/" . $excel_data['file_name'] . ".xls";
                     $subject = "Expiries: " . $facility_name;
                     //$email_address = "*****@*****.**";
                     $email_address = $this->get_facility_email($facility_code);
                     $this->hcmp_functions->send_email($email_address, $message, $subject, $handler);
                 }
                 //End foreach for facility
             }
             array_key_exists($district_name, $district_total) ? $district_total[$district_name] = array_merge($district_total[$district_name], array($facility_total)) : ($district_total = array_merge($district_total, array($district_name => array($facility_total))));
             //Building the excel sheet to be sent to the district admin
             $excel_data = array();
             $excel_data = array('doc_creator' => $district_name, 'doc_title' => 'district stock outs weekly report ', 'file_name' => 'district weekly report');
             $row_data = array();
             $column_data = array("Facility Code", "Facility Name", "Commodity Code", "Commodity Name", "Expiry Date", "Batch No", "Manufacturer", "Unit Size", "Current Balance");
             $excel_data['column_data'] = $column_data;
             foreach ($facility_total as $facility_total_1) {
                 foreach ($facility_total_1 as $facility_total_2) {
                     foreach ($facility_total_2 as $facility_total1) {
                         array_push($row_data, array($facility_total1["facility_code"], $facility_total1["facility_name"], $facility_total1["commodity_code"], $facility_total1["commodity_name"], $facility_total1["expiry_date"], $facility_total1["batch_no"], $facility_total1["manufacture"], $facility_total1["unit_size"], $facility_total1["current_balance"]));
                     }
                 }
             }
             if (empty($row_data)) {
                 //do nothing
             } else {
                 $excel_data['row_data'] = $row_data;
                 $excel_data['report_type'] = "download_file";
                 $excel_data['file_name'] = $district_name . "_Weekly_District_Stock_Outs_Report";
                 $this->hcmp_functions->create_excel($excel_data);
                 $handler = "./print_docs/excel/excel_files/" . $excel_data['file_name'] . ".xls";
                 $subject = "Expiries: " . $district_name . " Sub County";
                 $message = $district_name . "'s Weekly Expiries Report";
                 $message .= "Find attached an excel sheet with the breakdown for the Expiries for the district";
                 //$email_address = "*****@*****.**";
                 $email_address = $this->get_ddp_email($district_id);
                 $this->hcmp_functions->send_email($email_address, $message, $subject, $handler);
             }
         }
         //Building the excel sheet to be sent to the district admin
         $excel_data = array();
         $excel_data = array('doc_creator' => $district_name, 'doc_title' => 'district stock outs weekly report ', 'file_name' => 'district weekly report');
         $row_data = array();
         $column_data = array("Facility Code", "Facility Name", "Commodity Code", "Commodity Name", "Expiry Date", "Batch No", "Manufacturer", "Unit Size", "Current Balance");
         $excel_data['column_data'] = $column_data;
         foreach ($district_total as $facility_total_1) {
             foreach ($facility_total_1 as $facility_total_2) {
                 foreach ($facility_total_2 as $facility_total_3) {
                     foreach ($facility_total_3 as $facility_total_4) {
                         foreach ($facility_total_4 as $facility_total1) {
                             array_push($row_data, array($facility_total1["facility_code"], $facility_total1["facility_name"], $facility_total1["commodity_code"], $facility_total1["commodity_name"], $facility_total1["expiry_date"], $facility_total1["batch_no"], $facility_total1["manufacture"], $facility_total1["unit_size"], $facility_total1["current_balance"]));
                         }
                     }
                 }
             }
         }
         if (empty($row_data)) {
             //do nothing
         } else {
             $excel_data['row_data'] = $row_data;
             $excel_data['report_type'] = "download_file";
             $excel_data['file_name'] = $county_name . "_Weekly_County_Expiries_Report";
             $this->hcmp_functions->create_excel($excel_data);
             $handler = "./print_docs/excel/excel_files/" . $excel_data['file_name'] . ".xls";
             $subject = "Expiries: " . $county_name . " County";
             $message = $county_name . "'s Weekly Expiries Report";
             $message .= "Find attached an excel sheet with the breakdown for the Expiries for the county";
             $email_address = $this->get_county_email($county_id);
             $bcc = $this->get_bcc_notifications();
             $cc_email = "";
             $this->hcmp_functions->send_email($email_address, $message, $subject, $handler, $bcc, $cc_email);
         }
     }
 }
예제 #2
0
파일: sms.php 프로젝트: HCMPKenya/hcmp_demo
 public function expiries_report()
 {
     //Set the current year
     $year = date("Y");
     $picurl = base_url() . 'assets/img/coat_of_arms-resized1.png';
     //get the facilities in the district
     $counties = Facilities::get_counties_all_using_HCMP();
     foreach ($counties as $counties) {
         //holds the dat for the entire county
         //once it is done executing for one county it is reset to zero
         $county_total = array();
         //Used to store the total cost of all expiries
         $county_expiries_total = 0;
         //pick the county nae and county ID accordingly
         $county_id = $counties['county'];
         $county_name = $counties['county_name'];
         //Get all the ddistricts in that  particular county
         $districts = Facilities::get_all_using_HCMP($county_id);
         //holds the data for all the districts in a particular county
         $district_total = array();
         foreach ($districts as $districts) {
             //Used to store the total cost of all expiries
             $sub_county_expiries_total = 0;
             $district_id = $districts['district'];
             $district_name = $districts['name'];
             //get all facilities in that district
             $facilities = Facilities::getFacilities_for_email($district_id);
             //holds all the data for all facilities in a particular district
             $facility_total = array();
             foreach ($facilities as $facilities_) {
                 //holds the total value of expiries for that particular facility in that district
                 $facility_potential_expiries_total = 0;
                 //$facility_potential_expiries = array();
                 $facility_code = $facilities_->facility_code;
                 $facility_name = Facilities::get_facility_name2($facility_code);
                 $facility_name = $facility_name['facility_name'];
                 //get potential expiries in that particular facility
                 $facility_expiries = Facility_stocks::All_expiries_email($facility_code);
                 //push the result into another array that will be used by the distrct
                 array_key_exists($facility_name, $facility_total) ? $facility_total[$facility_name] = array_merge($facility_total[$facility_name], array($facility_expiries)) : ($facility_total = array_merge($facility_total, array($facility_name => array($facility_expiries))));
                 //Start buliding the excel file
                 $excel_data = array();
                 $excel_data = array('doc_creator' => $facility_name, 'doc_title' => 'facility expiries monthly report ', 'file_name' => 'facility weekly report');
                 $row_data = array();
                 $column_data = array("Facility Name", "MFL Code", "Sub County", "County", "Commodity Name", "Unit Size", "Quantity (packs)", "Quantity (units)", "Unit Cost(KSH)", "Total Expired(KSH)", "Date of Expiry", "Supplier", "Date Added", "Manufacturer");
                 $excel_data['column_data'] = $column_data;
                 foreach ($facility_expiries as $facility_expiries) {
                     array_push($row_data, array($facility_expiries["facility_name"], $facility_expiries["facility_code"], $facility_expiries["subcounty"], $facility_expiries["county"], $facility_expiries["commodity_name"], $facility_expiries["unit_size"], $facility_expiries["packs"], $facility_expiries["units"], $facility_expiries["unit_cost"], $facility_expiries["total"], $facility_expiries["expiry_date"], $facility_expiries["source_name"], $facility_expiries["date_added"], $facility_expiries["manufacture"]));
                     $facility_potential_expiries_total = $facility_potential_expiries_total + $facility_expiries["total"];
                 }
                 if (empty($row_data)) {
                     //do nothing
                 } else {
                     $excel_data['row_data'] = $row_data;
                     $excel_data['report_type'] = "download_file";
                     $excel_data['file_name'] = $facility_name . "_Expiries_Report";
                     $excel_data['excel_title'] = "Expiries Report for " . $facility_name . " for the month of " . date("F Y");
                     $subject = "Expiries: " . $facility_name;
                     $message = "Dear " . $facility_name . " facility,</br>\n\t \t\t\t\t\t<p>Find attached an excel sheet with the " . $facility_name . " breakdown of Expiries.\n\t \t\t\t\t\t\tYou may log onto health-cmp.or.ke to decommission them.</p>\n\t \t\t\t\t\t\t<p>----</p>\n\t \t\t\t\t\t\t<p>HCMP</p>\n\t \t\t\t\t\t\t<p>This email was automatically generated. Please do not respond to this email address or it will be ignored.</p>";
                     //create the excel here
                     $report_type = "expiries";
                     //holds the total figure for the expiries
                     $total_figure = $facility_potential_expiries_total;
                     //excel is created by php excel here
                     $this->create_excel($excel_data, $report_type, $total_figure);
                     //where the excel sheet is stored before being attached
                     $handler = "./print_docs/excel/excel_files/" . $excel_data['file_name'] . ".xls";
                     //the email of the receipients
                     $email_address = $this->get_facility_email($facility_code);
                     //function for sending the actual email
                     $this->hcmp_functions->send_email($email_address, $message, $subject, $handler);
                 }
                 //End foreach for facility
             }
             array_key_exists($district_name, $district_total) ? $district_total[$district_name] = array_merge($district_total[$district_name], array($facility_total)) : ($district_total = array_merge($district_total, array($district_name => array($facility_total))));
             //Building the excel sheet to be sent to the district admin
             $excel_data = array();
             $excel_data = array('doc_creator' => $district_name, 'doc_title' => 'district expiries weekly report ', 'file_name' => 'district weekly report');
             $row_data = array();
             $column_data = array("Facility Name", "MFL Code", "Sub County", "County", "Commodity Name", "Unit Size", "Quantity (packs)", "Quantity (units)", "Unit Cost(KSH)", "Total Expired(KSH)", "Date of Expiry", "Supplier", "Date Added", "Manufacturer");
             $excel_data['column_data'] = $column_data;
             foreach ($facility_total as $facility_total_1) {
                 foreach ($facility_total_1 as $facility_total_2) {
                     foreach ($facility_total_2 as $facility_total1) {
                         array_push($row_data, array($facility_total1["facility_name"], $facility_total1["facility_code"], $facility_total1["subcounty"], $facility_total1["county"], $facility_total1["commodity_name"], $facility_total1["unit_size"], $facility_total1["packs"], $facility_total1["units"], $facility_total1["unit_cost"], $facility_total1["total"], $facility_total1["expiry_date"], $facility_total1["source_name"], $facility_total1["date_added"], $facility_total1["manufacture"]));
                         $sub_county_expiries_total = $sub_county_expiries_total + $facility_total1["total"];
                     }
                 }
             }
             if (empty($row_data)) {
                 //do nothing
             } else {
                 $excel_data['row_data'] = $row_data;
                 $excel_data['report_type'] = "download_file";
                 $excel_data['file_name'] = $district_name . "_Weekly_District_Expiries_Report";
                 $excel_data['excel_title'] = "Expiries Report for " . $district_name . " Sub County for the month of " . date("F Y");
                 //tyoe of report created
                 $report_type = "expiries";
                 //holds the total cost
                 $total_figure = $sub_county_expiries_total;
                 //creates the excel sheet
                 $this->create_excel($excel_data, $report_type, $total_figure);
                 //path of the excel sheet
                 $handler = "./print_docs/excel/excel_files/" . $excel_data['file_name'] . ".xls";
                 //creating the email subject and message body
                 $subject = "Expiries: " . $district_name . " Sub County (Next 3 Months)";
                 $message = "Dear " . $district_name . " Sub County,\n\t \t\t\t\t\t\t\t\t<p>Find attached an excel sheet with the " . $district_name . " Sub County breakdown of Expiries.\n\t \t\t\t\t\t\t\t\t\tYou may log onto health-cmp.or.ke to decommission them.</p>\n\t \t\t\t\t\t\t\t\t\t<p>----</p>\n\t \t\t\t\t\t\t\t\t\t<p>HCMP</p>\n\t \t\t\t\t\t\t\t\t\t<p>This email was automatically generated. Please do not respond to this email address or it will be ignored.</p>";
                 //email address to receive
                 $email_address = $this->get_ddp_email($district_id);
                 $this->hcmp_functions->send_email($email_address, $message, $subject, $handler);
             }
         }
         //Building the excel sheet to be sent to the district admin
         $excel_data = array();
         $excel_data = array('doc_creator' => $district_name, 'doc_title' => 'county expiries weekly report ', 'file_name' => 'district report');
         $row_data = array();
         $column_data = array("Facility Name", "MFL Code", "Sub County", "County", "Commodity Name", "Unit Size", "Quantity (packs)", "Quantity (units)", "Unit Cost(KSH)", "Total Expired(KSH)", "Date of Expiry", "Supplier", "Date Added", "Manufacturer");
         $excel_data['column_data'] = $column_data;
         foreach ($district_total as $facility_total_1) {
             foreach ($facility_total_1 as $facility_total_2) {
                 foreach ($facility_total_2 as $facility_total_3) {
                     foreach ($facility_total_3 as $facility_total_4) {
                         foreach ($facility_total_4 as $facility_total1) {
                             array_push($row_data, array($facility_total1["facility_name"], $facility_total1["facility_code"], $facility_total1["subcounty"], $facility_total1["county"], $facility_total1["commodity_name"], $facility_total1["unit_size"], $facility_total1["packs"], $facility_total1["units"], $facility_total1["unit_cost"], $facility_total1["total"], $facility_total1["expiry_date"], $facility_total1["source_name"], $facility_total1["date_added"], $facility_total1["manufacture"]));
                             $county_expiries_total = $county_expiries_total + $facility_total1["total"];
                         }
                     }
                 }
             }
         }
         if (empty($row_data)) {
             //do nothing
         } else {
             $excel_data['row_data'] = $row_data;
             $excel_data['report_type'] = "download_file";
             $excel_data['file_name'] = $county_name . "_Weekly_County_Expiries_Report";
             $excel_data['excel_title'] = "Expiries Report for " . $county_name . " County for the month of " . date("F Y");
             //create the excel here
             $report_type = "expiries";
             $total_figure = $county_expiries_total;
             $this->create_excel($excel_data, $report_type, $total_figure);
             //Where the excel sheet will be saved before being attached
             $handler = "./print_docs/excel/excel_files/" . $excel_data['file_name'] . ".xls";
             //Start creating the email Subject and message body here
             $subject = "Expiries: " . $county_name . " County (Next 3 Months)";
             $message = "Dear " . $county_name . " County,\n\t \t\t\t\t\t\t\t\t\t\t\t\t<p>Find attached an excel sheet with the " . $county_name . " County's breakdown of Expiries.\n\t \t\t\t\t\t\t\t\t\t\t\t\t\tYou may log onto health-cmp.or.ke to decommission them.</p>\n\t \t\t\t\t\t\t\t\t\t\t\t\t\t<p>----</p>\n\t \t\t\t\t\t\t\t\t\t\t\t\t\t<p>HCMP</p>\n\t \t\t\t\t\t\t\t\t\t\t\t\t\t<p>This email was automatically generated. Please do not respond to this email address or it will be ignored.</p>";
             $email_address = $this->get_ddp_email_county($county_id);
             $bcc = $this->get_bcc_notifications();
             $cc = $this->get_county_email($county_id);
             $this->hcmp_functions->send_email($email_address, $message, $subject, $handler, $bcc, $cc);
         }
     }
 }