File manager - Edit - /home/autoph/public_html/connectv1/api/controllers/import_bank.php
Back
<?php class Import { function getArrayFields($id, $db){ $return_array = array(); $data_list = $db->sql_query("SELECT `name` FROM `source_bank_fields_name` WHERE `bank_field_id` = '$id'"); foreach($data_list as $row){ $return_array = array_merge($return_array, array($row['name'])); } // print_r($return_array); exit; return $return_array; } function getIssueSummaryField($str, $ColumnNumber, $array_data){ for($i = 0; $i < $ColumnNumber; $i++){ if(in_array($str, $array_data, true)){ return $i; } } return "-5"; } function getFieldFromExcel($row, $ColumnNumber, $array_data){ for($i = 0; $i < $ColumnNumber; $i++){ if(in_array(trim($row[$i]), $array_data, true)){ return $row[$i]; } } return ""; } function checkExist($row, $field, $utility){ if(!$utility->isNotEmpty($field)){ return ""; } $key = array_search($field, $GLOBALS['row_bank_headers']); return isset($row[$key]) ? $row[$key] : '' ; } function getCompanyIdByName($data_dms, $data_company, $utility, $db){ $id = $db -> select("SELECT id FROM `source_company` WHERE (`code` = '$data_company' OR `name` = '$data_company') AND dms_id = '$data_dms' LIMIT 1"); if($utility->isNotEmpty($id)){ return $id; } return 0; } function getDealerIdByNameOrCode($data_dealer, $utility, $db){ $id = $db->select("SELECT id FROM `source_dealer` WHERE (`code` = '$data_dealer' OR `name` = '$data_dealer') AND status = 1 LIMIT 1"); if($utility->isNotEmpty($id)){ return $id; } return 0; } function getCompanyDealerIdByName($data_company,$data_dealer,$utility,$db){ $company_dealer_id = $db -> select("SELECT id FROM `source_company_dealer` WHERE `company_id` = '$data_company' AND `dealer_id` = '$data_dealer' AND type= '1' AND status = '1' LIMIT 1"); if($utility->isNotEmpty($company_dealer_id)){ return $company_dealer_id; } return 0; } function validateDate($date, $format = 'Y-m-d') { $d = DateTime::createFromFormat($format, $date); // The Y ( 4 digits year ) returns TRUE for any integer with any number of digits so changing the comparison from == to === fixes the issue. return $d && $d->format($format) === $date; } function in_array_r($needle, $haystack, $strict = false) { foreach ($haystack as $item) { if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && $this->in_array_r($needle, $item, $strict))) { return true; } } return false; } function in_array_y($array, $key, $val) { foreach ($array as $item) if (isset($item[$key]) && $item[$key] == $val) return true; return false; } function getDuplicateByEmailAndMobile($data_customer_email, $data_customer_mobile, $data_company_dealer, $utility, $db){ if($utility->isNotEmpty($data_customer_mobile)){ $append_mobile = " AND (`customer_mobile_number` = '$data_customer_mobile' "; } else { $append_mobile = ""; } if($utility->isNotEmpty($data_customer_email)){ $append_email = " OR `customer_email` = '$data_customer_email') "; } else { $append_email = ")"; } $query = "SELECT id, customer_fullname, customer_email, customer_mobile_number, company_id, dealer_id FROM finance WHERE 1 %s %s AND status = 1 "; // echo sprintf($query, $append_mobile, $append_email); exit; return ($db->return_result(sprintf($query, $append_mobile, $append_email))); } function alphaNumericOnly($s){ $str = preg_replace("/[^a-zA-Z0-9]+/", "", $s); if(strlen($str) < 5){ return ""; } return $str; } function getDmsCompanyId($data_dealer, $utility, $db){ $query = "SELECT sdms.id as dms_id, sc.id as company_id FROM source_dms sdms INNER JOIN source_company sc ON sdms.id = sc.dms_id INNER JOIN source_company_dealer scd ON sc.id = scd.company_id WHERE sdms.status = 1 AND sc.status = 1 AND scd.type = 1 AND scd.status = 1 AND scd.dealer_id = '$data_dealer' LIMIT 1"; $results = $db->sql_query($query); $data_dms_company = array(); foreach($results as $result){ $data_dms_company =(array( 'dms' => $result['dms_id'], 'company'=>$result['company_id'] )); } return ($data_dms_company); } function updateIndividualCompany($corporation_id,$individual_id, $db){ $db -> sql_query("UPDATE customer SET corporation_id = '$corporation_id' WHERE id = '$individual_id' "); } function check_string_exist($str){ $str = strtolower($str); $none = array("na", "n/a", "none"); if(in_array($str, $none)){ return true; } return false; } function start_import($row, $customer_class, $utility, $db){ //store raw data from excel $data_bank = $this->checkExist($row, $GLOBALS['bank'], $utility); $data_area = $this->checkExist($row, $GLOBALS['area'], $utility); $data_branch_name = $this->checkExist($row, $GLOBALS['branch_name'], $utility); $data_branch_address = $this->checkExist($row, $GLOBALS['branch_address'], $utility); $data_branch_contact = $this->checkExist($row, $GLOBALS['branch_contact'], $utility); $data_branch_head = $this->checkExist($row, $GLOBALS['branch_head'], $utility); $data_branch_head_birthday = $this->checkExist($row, $GLOBALS['branch_head_birthday'], $utility); $data_branch_head_email = $this->checkExist($row, $GLOBALS['branch_head_email'], $utility); $data_branch_head_contact = $this->checkExist($row, $GLOBALS['branch_head_contact'], $utility); $data_branch_head_position = $this->checkExist($row, $GLOBALS['branch_head_position'], $utility); $data_dealer = $this->checkExist($row, $GLOBALS['dealer'], $utility); $data_facebook = $this->checkExist($row, $GLOBALS['facebook'], $utility); $data_uploader = $_SESSION['user']['id']; //data cleansing use for validations $data_branch_head_birthday = $utility->fix_date($data_branch_head_birthday, false, $utility); //end data cleansing use for validations //validate required data if((!$utility->isNotEmpty($data_bank))){ // CHECK BANK $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_bank']), $row); $GLOBALS['no_bank_count']++; $GLOBALS['not_inserted_count']++; return 0; } if(!$utility->isNotEmpty($data_area)){ // CHECK AREA $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_area']), $row); $GLOBALS['no_area_count']++; $GLOBALS['not_inserted_count']++; return 0; } if((!$utility->isNotEmpty($data_branch_name))){ // CHECK BRANCH NAME $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_branch_name']), $row); $GLOBALS['no_branch_name_count']++; $GLOBALS['not_inserted_count']++; return 0; } // if((!$utility->isNotEmpty($data_branch_address))){ // CHECK BRANCH ADDRESS // $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_branch_address']), $row); // $GLOBALS['no_branch_address_count']++; // $GLOBALS['not_inserted_count']++; // return 0; // } // if((!$utility->isNotEmpty($data_branch_head_email))){ // CHECK BRANCH HEAD EMAIL // $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_branch_head_email']), $row); // $GLOBALS['no_branch_head_email_count']++; // $GLOBALS['not_inserted_count']++; // return 0; // } // if((!$utility->isNotEmpty($data_branch_head))){ // CHECK BRANCH HEAD // $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_branch_head']), $row); // $GLOBALS['not_inserted_count']++; // return 0; // } // if((!$utility->isNotEmpty($data_branch_head_contact))){ // CHECK BRANCH HEAD CONTACT // $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_branch_head_contact']), $row); // $GLOBALS['not_inserted_count']++; // return 0; // } if((!$utility->isNotEmpty($data_dealer))){ // CHECK DEALER $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_dealer']), $row); $GLOBALS['not_inserted_count']++; return 0; } $bh_contact = ""; if($utility->isNotEmpty($data_branch_head_contact)){ // CHECK BRANCH HEAD CELLPHONE NUMBER $mobile_count = strpos($data_branch_head_contact, '/'); if($mobile_count > 0){ $multi_mobile = array(); $multi_mobile = explode("/", $data_branch_head_contact); $bh_contact = ""; for($i=0; $i<count($multi_mobile); $i++){ $new_mobile = $utility->fix_mobile_format(remove_non_numeric($multi_mobile[$i])); $multi_mobile[$i] = $new_mobile; if(isMobileValid($multi_mobile[$i])){ if($bh_contact == ""){ $bh_contact = $multi_mobile[$i]; } else { $bh_contact = $bh_contact . " / " . $multi_mobile[$i]; } } } } else { $data_branch_head_contact = $utility->fix_mobile_format(remove_non_numeric($data_branch_head_contact)); $isValidMobile = isMobileValid($data_branch_head_contact); if($isValidMobile){ $bh_contact = $data_branch_head_contact; } } } // VALIDATE BANK $data_bank_count = $db->select("SELECT COUNT(1) FROM bank_db WHERE abbreviation = '$data_bank' OR name = '$data_bank' AND status != 0"); // $bank = ""; if($data_bank_count > 0){ $data_bank = $db->select("SELECT id FROM bank_db WHERE abbreviation = '$data_bank' OR name = '$data_bank' AND status != 0"); } else { $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['unknown_bank']), $row); $GLOBALS['not_inserted_count']++; return 0; } //end validate bank // VALIDATE DEALER $data_dealer_count = $db->select("SELECT COUNT(1) FROM source_dealer WHERE code = '$data_dealer' OR name = '$data_dealer'"); $data_company = ""; if($data_dealer_count > 0){ $data_dealer = $db->select("SELECT id FROM source_dealer WHERE code = '$data_dealer' OR name = '$data_dealer'"); $data_company = $db->select("SELECT company_id FROM source_company_dealer WHERE dealer_id = '$data_dealer' AND status != 0"); } else { $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['no_dealer']), $row); $GLOBALS['not_inserted_count']++; return 0; } //end validate bank // VALIDATE AREA $data_area_count = $db->select("SELECT COUNT(1) FROM bank_db_areas WHERE name = '$data_area' AND status != 0"); // $bank = ""; if($data_area_count > 0){ $data_area = $db->select("SELECT id FROM bank_db_areas WHERE name = '$data_area' AND status != 0"); } else { $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['unknown_area']), $row); $GLOBALS['not_inserted_count']++; return 0; } //end validate area //============================================================================================= START CHECK DUPLICATES ====> $duplicate_record_count = getDuplicateRecord($data_bank, $data_area, $data_branch_name, $data_branch_contact, $data_branch_head, $db); if($duplicate_record_count > 0){ $GLOBALS['not_inserted_list_v2'][] = array_merge(array($GLOBALS['duplicate_record']), $row); $GLOBALS['duplicate_record_count']++; $GLOBALS['not_inserted_count']++; return 0; } // NO DUPLICATE // $data_insurance_company = $db->select("SELECT "); $db->sql_query("INSERT INTO `bank_db_list` (`bank_id`, `area_id`, `branch_name`, `branch_address`, `branch_contact_number`, `bh_email`, `bh_birthday`, `branch_head`, `bh_contact`, `bh_position`, `company_id`, `dealer_id`, `facebook`, `uploaded_by`, `status`) VALUES ('$data_bank', '$data_area', '$data_branch_name', '$data_branch_address', '$data_branch_contact', '$data_branch_head_email', '$data_branch_head_birthday', '$data_branch_head', '$bh_contact', '$data_branch_head_position', '$data_company', '$data_dealer', '$data_facebook', '$data_uploader', 1)"); $GLOBALS['inserted_count']++; } } function getDuplicateRecord($bank, $area, $branch_name, $branch_contact, $branch_head, $db){ $count = 0; $query = ""; $query = "SELECT COUNT(1) FROM `bank_db_list` WHERE `bank_id` = '$bank' AND `area_id` = '$area' AND `branch_name` = '$branch_name' AND `branch_contact_number` = '$branch_contact' AND `branch_head` = '$branch_head'"; $count = $db->select($query); // echo $count; exit; return intval($count); } function getDuplicatePolicyNumber($policy_number, $db){ $count = $db->select("SELECT COUNT(1) FROM `finance` WHERE `policy_number` = '$policy_number' AND status = 1"); return intval($count); } function isMobileValid($data){ if(substr($data, 0, 4 ) === "+639"){ if(strlen($data) == 13){ return 1; } else { return 0; } } else { return 0; } } function remove_non_numeric($data){ return preg_replace("/[^0-9\/s\/]/", "", $data); // return preg_replace("/[^0-9]/","",$data); } ?>
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0 |
proxy
|
phpinfo
|
Settings