File manager - Edit - /home/autoph/public_html/connectv1/print_bank_report.php
Back
<?php ini_set('max_execution_time', '0'); set_time_limit(0); //same code above ini_set('memory_limit','-1'); date_default_timezone_set('Asia/Manila'); include('cfg/db.php'); include_once("api/controllers/utility.php"); if(!isset($_SESSION['user']['id'])){ header('location: home.php'); return; } $utility = new Utility(); $current_user = $_SESSION['user']['id']; $granted_company_ids = $utility->isNotEmpty($_SESSION['user']['company_permissions_implode']) ? $_SESSION['user']['company_permissions_implode'] : '-1' ; if(!(isset($global_action_permissions['5']['38']['14']) && in_array("2", $global_action_permissions['5']['38']['14']))){ echo "You are not allowed to do this action."; exit; } $generated_by = ""; $user_role = $db->select("SELECT employee_role_id FROM employee_account WHERE id = '$current_user'"); if($user_role == 45 || $user_role == 1){ $generated_by = $_SESSION['user']['first_name'] . " " . $_SESSION['user']['last_name']; } else { $generated_by = $_SESSION['user']['first_name'] . " " . $_SESSION['user']['last_name'] . " (" . $_SESSION['user']['company_code'] . ")"; } $bank = ""; $bank_id = ""; $company = ""; $dealer = ""; $filter_date = ""; $start_date = ""; $end_date = ""; $date_q = ""; $compcode = ""; $compname = ""; $dealcode = ""; $dealname = ""; $uuid = $db->select("SELECT UUID()"); if(isset($_REQUEST['filter_date']) && $_REQUEST['filter_date'] != ""){ // 2021-10-01@2021-10-08 // echo $filter_date; exit; if($filter_date == ""){ $date_q = ""; } else { $date = $db -> escape(trim($_REQUEST['filter_date'])); $start_date = substr($date, 0, 10); $end_date = substr($date, 11, 10); $date_q = " AND DATE_FORMAT(bdl.`date_added`, '%%Y-%%m-%%d') BETWEEN '$start_date' AND '$end_date' "; // $diff = date_diff(date_create($start_date), date_create($end_date)); // compute date interval // $interval = (int)$diff->format("%a"); // if($interval == 0){ // $date_title = $db->select("SELECT DATE_FORMAT('".$start_date."', '%b %d, %Y')"); // } // else { // $date_title = $db->select("SELECT DATE_FORMAT('".$start_date."', '%b %d, %Y')") . " to " . $db->select("SELECT DATE_FORMAT('".$end_date."', '%b %d, %Y')"); // } } } if(isset($_REQUEST['bank_id']) && $_REQUEST['bank_id'] != 0){ $bank_id = $db->escape($_REQUEST['bank_id']); $bank = " AND bdl.bank_id = '$bank_id' "; } else { $bank_id = "None"; } if(isset($_REQUEST['comp']) && $_REQUEST['comp'] != 0){ $company = $db->escape($_REQUEST['comp']); $compcode = $db->select("SELECT code FROM source_company WHERE id = '$company'"); $compname = $db->select("SELECT name FROM source_company WHERE id = '$company'"); $company = " AND bdl.company_id = '$company' "; } else { $company = " AND bdl.company_id IN(" . $granted_company_ids . ") "; } if(isset($_REQUEST['deal']) && $_REQUEST['deal'] != 0){ $dealer = $db->escape($_REQUEST['deal']); $dealcode = $db->select("SELECT code FROM source_dealer WHERE id = '$dealer'"); $dealname = $db->select("SELECT name FROM source_dealer WHERE id = '$dealer'"); $dealer = " AND bdl.dealer_id = '$dealer' "; } $count_field = " COUNT(1) "; $fields = " bdl.id AS record_id, bd.abbreviation AS bank_name, bdl.bank_id, bda.name AS area, bdl.branch_name, bdl.branch_contact_number, bdl.branch_head, bdl.bh_contact, bdl.bh_position, sc.code AS company, sd.code AS dealer "; $query = "SELECT %s FROM bank_db_list bdl INNER JOIN bank_db bd ON bd.id = bdl.bank_id INNER JOIN bank_db_areas bda ON bda.id = bdl.area_id INNER JOIN source_company sc ON sc.id = bdl.company_id INNER JOIN source_dealer sd ON sd.id = bdl.dealer_id WHERE 1 ".$bank.$company.$dealer.$date_q." AND bdl.status = 1"; // echo sprintf($query, $fields); return; // echo sprintf($query, $fields); exit; $fetch_print = $db->sql_query(sprintf($query, $fields)); $fetch_print_total = $db->select(sprintf($query, $count_field)); $data_to_insert = array(); $company_arr = array(); $filename_arr = array(); $ctr = 1; foreach($fetch_print AS $row){ $company_item = $row['company']; if(!(in_array($company_item, $company_arr))){ $uuid = $db->select("SELECT UUID()"); array_push($company_arr, $company_item); array_push($filename_arr, $uuid); } } // print_r($company_arr); exit; $col_width = array(9, 10, 30, 26, 34, 46, 25, 20); $col_header = array('No.', 'Bank', 'Area', 'Branch', 'Branch Contact', 'Branch Head (BH)', 'BH Contact', 'BH Position'); $company_arr_length = count($company_arr); $company_code_list_arr = array(); $company_name_list_arr = array(); $company_count = array(); for($i=0; $i<$company_arr_length; $i++){ $company_code = $company_arr[$i]; $file_name = $filename_arr[$i]; $company_id = $db->select("SELECT id FROM source_company WHERE code = '$company_code'"); // echo $company_id; exit; $company_name = $db->select("SELECT name FROM source_company WHERE code = '$company_code'"); // echo $company_name; exit; array_push($company_code_list_arr, $company_code); array_push($company_name_list_arr, $company_name); $filename = 'report/bank_report/data/'.$file_name.'.'.'php'; $fp = fopen($filename, 'w'); $string = implode(';',array_map('replaceExistingSemiColon', $col_header)); fwrite($fp, $string.PHP_EOL); $company_q = " AND bdl.company_id = '$company_id'"; $query_print = "SELECT %s FROM bank_db_list bdl INNER JOIN bank_db bd ON bd.id = bdl.bank_id INNER JOIN bank_db_areas bda ON bda.id = bdl.area_id INNER JOIN source_company sc ON bdl.company_id = sc.id INNER JOIN source_dealer sd ON bdl.dealer_id = sd.id WHERE 1 " . $bank . $company_q . $dealer . $date_q; // echo sprintf($query_print, $fields); return; $new = $db->sql_query(sprintf($query_print, $fields)); $comp_count = $db->select(sprintf($query_print, $count_field)); // $comp_count = $db->select("SELECT COUNT(*) FROM (".sprintf($query_print, $count_query).") AS count"); array_push($company_count, $comp_count); foreach($new AS $row){ $data_to_insert = array( $ctr, $row['bank_name'], $row['area'], $row['branch_name'], $row['branch_contact_number'], $row['branch_head'], $row['bh_contact'], $row['bh_position'] ); $ctr++; $string = implode(';', array_map('replaceExistingSemiColon', $data_to_insert)); fwrite($fp, $string.PHP_EOL); } // if($mask == 0){ // $company_q = " AND bdl.company_id = '$company_id'"; // $query_print = "SELECT %s // FROM bank_db_list bdl // INNER JOIN source_company sc // ON bdl.company_id = sc.id // INNER JOIN source_dealer sd // ON bdl.dealer_id = sd.id // WHERE 1 AND " . $company_q . $dealer_q; // $new = $db->sql_query(sprintf($query_print, $fields)); // $comp_count = $db->select(sprintf($query_print, $count_query)); // // $comp_count = $db->select("SELECT COUNT(*) FROM (".sprintf($query_print, $count_query).") AS count"); // array_push($company_count, $comp_count); // foreach($new AS $row){ // $status = $row['status']; // if($status == -2 || $status == 0){ //success // $status_str = "SMS sent"; // } // else if($status == -1){ //pending // $status_str = "Pending"; // } // else if($status == 1){ //invalid // $status_str = "Invalid number"; // } // else if($status == 2){ //unsupp # // $status_str = "Unsupported #"; // } // else { // $status_str = "Send error. Itexmo status: " . $status; // } // $data_to_insert = array( // $ctr, // $row['name'], // $row['mobile_number'], // $row['dealer'], // $status_str // ); // $ctr++; // $string = implode(';', array_map('replaceExistingSemiColon', $data_to_insert)); // fwrite($fp, $string.PHP_EOL); // } // } // else { // $company_q = " AND tbbr.company_id = '$company_id'"; // $query_print = "SELECT %s // FROM text_blast_birthday_record tbbr // INNER JOIN source_company sc // ON tbbr.company_id = sc.id // INNER JOIN source_dealer sd // ON tbbr.dealer_id = sd.id // WHERE tbbr.date BETWEEN '$start_date' AND '$end_date' " . $filter_status . $company_q . $dealer_q; // // echo sprintf($query_print, $fields); return; // $new = $db->sql_query(sprintf($query_print, $fields)); // $comp_count = $db->select(sprintf($query_print, $count_query)); // // $comp_count = $db->select("SELECT COUNT(*) FROM (".sprintf($query_print, $count_query).") AS count"); // array_push($company_count, $comp_count); // foreach($new AS $row){ // $status = $row['status']; // if($status == -2 || $status == 0){ //success // $status_str = "SMS sent"; // } // else if($status == -1){ //pending // $status_str = "Pending"; // } // else if($status == 1){ //invalid // $status_str = "Invalid number"; // } // else if($status == 2){ //unsupp # // $status_str = "Unsupported #"; // } // else { // $status_str = "Send error. Itexmo status: " . $status; // } // $data_to_insert = array( // $ctr, // $row['name'], // "+" . mask($row['mobile_number'], 5, 1), // $row['dealer'], // $status_str // ); // $ctr++; // $string = implode(';', array_map('replaceExistingSemiColon', $data_to_insert)); // fwrite($fp, $string.PHP_EOL); // } // } fclose($fp); } // $file_name = 'report/bank_report/data/'.strtr($db->cipher($uuid, true), "+/", "-_" ).'.'.'php'; // $pdf_file_name = strtr($db->cipher($uuid, true), "+/=", "-_~" ).'.'.'pdf'; // $fp = fopen($file_name, 'w'); // $string = implode(';',array_map('replaceExistingSemiColon', $col_header)); // fwrite($fp, $string.PHP_EOL); // $data_to_insert = array(); // $ctr = 1; // foreach($fetch_print AS $row){ // $data_to_insert = array( // $ctr, // $row['area'], // $row['branch_name'], // $row['branch_contact_number'], // $row['branch_head'], // $row['bh_contact'], // $row['bh_position'] // ); // $ctr++; // $string = implode(';',array_map('replaceExistingSemiColon', $data_to_insert)); // //echo $data_to_insert; exit; // fwrite($fp, $string.PHP_EOL); // } // fclose($fp); $bank_header = ""; if($bank_id == "None"){ $bank_header = "All"; } else { $bank_code = $db->select("SELECT abbreviation FROM bank_db WHERE id = '$bank_id'"); $bank_name = $db->select("SELECT name FROM bank_db WHERE id = '$bank_id'"); $bank_header = $bank_name . " (" . $bank_code . ")"; } $date = $db->select("SELECT CURDATE() AS now"); // GENERATE PDF include('include/fpdf183/mc_table_bank.php'); $pdf = new PDF_MC_Table('P','mm','Legal'); $title = 'AutoHub-' . $date; $pdf->SetTitle($title); $pdf->AddPage(); $pdf->SetFont('Arial', '', 10); $pdf_request_data[] = array('Bank', ': ', $bank_header); if($compcode != ""){ $pdf_request_data[] = array('Company', ': ', $compname . " (" . $compcode . ")"); } if($dealcode != ""){ $pdf_request_data[] = array('Dealer', ': ', $dealname . " (" . $dealcode . ")"); } $pdf_request_data[] = array('Total Data Count', ': ', number_format($fetch_print_total)); $pdf_request_data[] = array('Generated by', ': ', $generated_by); $request_header_widths = array(30, 10, 92, 25, 35); $pdf->SetWidths($request_header_widths); foreach($pdf_request_data as $row){ $pdf->Row($row, false); } $pdf->Ln(2); // Arial 12 $pdf->SetFont('Arial', '', 11); // Background color $pdf->SetFillColor(255,255,255); // } $pdf->Ln(5); $pdf->SetFont('Arial', '', 8); // $pdf_request_data = $pdf->LoadData('report/bank_report/data/'.strtr($db->cipher($uuid, true), "+/", "-_" ).'.'.'php'); for($i=0; $i<count($filename_arr); $i++){ $file_name = $filename_arr[$i]; $record_data = $pdf->LoadData('report/bank_report/data/'.$file_name.'.'.'php'); $pdf->Ln(3); $pdf->Write(7, $company_code_list_arr[$i] . ": " . $company_count[$i]); $pdf->Ln(7); $pdf->FancyTable($record_data, $col_width); $record_data = []; unlink('report/bank_report/data/'.$file_name.'.'.'php'); } $filenames = "BANK_REPORT.pdf"; // $pdf->FancyTable($pdf_request_data, $col_width); $filename = "report/bank_report/pdf/".$filenames; //echo $filename; $pdf->Output($filename,'F'); // unlink($file_name); $filename = "BANK_REPORT.pdf"; $pdf->Output($filename, 'D'); if($count > 0){ $return_array['status'] = 1; $return_array['message'] = "Request Generated"; $return_array['file'] = str_replace(".pdf", "", $pdf_file_name); $file = str_replace(".pdf", "", $pdf_file_name); } else { $return_array['status'] = 0; $return_array['message'] = "Request Generation Failed"; } echo json_encode($return_array); function replaceExistingSemiColon($s){ return str_replace(";", " ", $s); } function removeHyphen($s){ return str_replace("-", "", $s); } function cleanStr($string) { $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. } function mask($str, $first, $last) { $str = cleanStr($str); $len = strlen($str); $toShow = $first + $last; return substr($str, 0, $len <= $toShow ? 0 : $first).str_repeat("*", $len - ($len <= $toShow ? 0 : $toShow)).substr($str, $len - $last, $len <= $toShow ? 0 : $last); } ?>
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0 |
proxy
|
phpinfo
|
Settings