✏️ 正在编辑: BlacklistNaoPerturbe.php
路径:
/srv/systems_dir/yuppiecred-bkp/application/models/BlacklistNaoPerturbe.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class Model_BlacklistNaoPerturbe { private static $bancosBlacklist = [ '341' => 'ITAU', // '623' => 'PAN', ]; public static function getBancos() { return self::$bancosBlacklist; } public static function importarBlacklist($banco) { $sheetData = []; $upload = new Zend_File_Transfer_Adapter_Http(); $upload->setDestination(UPLOAD_PATH); try { $upload->receive(); } catch (Zend_File_Transfer_Exception $e) { Yuppie_Log::write("Erro no upload da blacklist: " . $e->getMessage()); return ['error' => 'Arquivo não recebido, favor verificar planilha.']; } $extension = strtolower(pathinfo($upload->getFileName(), PATHINFO_EXTENSION)); if (in_array($extension, ['csv'])) { $objReader = PHPExcel_IOFactory::createReader('CSV'); $objReader->setDelimiter(';'); } else { $objReader = PHPExcel_IOFactory::createReaderForFile($upload->getFileName()); $fileinfo = $objReader->listWorksheetInfo($upload->getFileName()); if (is_array($fileinfo) && ($arrayFilter = array_filter($fileinfo) != null)) { $firstSheetName = $fileinfo[0]['worksheetName']; $objReader->setLoadSheetsOnly($firstSheetName); } } try { $objPHPExcel = $objReader->load($upload->getFileName()); } catch (Exception $e) { if( $e->getMessage() == "Cannot read encrypted file" ){ return [ 'alert' => 'O arquivo não pode ser lido. Verifique se ele ' . 'está protegido por senha e tente novamente.' ]; } } if (isset($objPHPExcel) && is_object($objPHPExcel)) { $sheetData = $objPHPExcel->getActiveSheet()->toArray(null, true, true, true); $objPHPExcel->disconnectWorksheets(); unset($objPHPExcel); unset($objReader); unlink($upload->getFileName()); array_shift($sheetData); } if ($class = Core_Callcenter_Blacklist_BlacklistFactory::load($banco)) { return $class->importarTelefones($sheetData); } else { return ['alert' => 'O sistema ainda não está preparado para receber a blacklist desse banco']; } } public function salvar($telefone) { $dbtable = new Model_DbTable_BlacklistNaoPerturbe(); $atualizar = $dbtable->getTelefone($telefone); if ($atualizar) { return $dbtable->update($telefone, ["id = ?" => $atualizar['id']]); } else { return $dbtable->insert($telefone); } } public function consultarTelefone($telefone) { $dbtable = new Model_DbTable_BlacklistNaoPerturbe(); return $dbtable->getTelefone([ 'telefone' => Core_Callcenter_Blacklist_Abstract::trataNumeroTelefone($telefone) ]); } }
💾 保存文件
← 返回文件管理器