✏️ 正在编辑: AjaxController.php
路径:
/srv/systems_dir/yuppiecred-bkp/application/controllers/AjaxController.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php use Model_DbTable_CallcenterCampanha as CallcenterCampanha; use Model_DbTable_CallcenterBase as CallcenterBase; class AjaxController extends Zend_Controller_Action { public function init() { $this->_helper->layout->disableLayout(); } public function codigoCampanhaCallcenterAction() { $response = (new CallcenterCampanha) ->selectCodigoDiscadorEmCampanha($this->_getAllParams()); return $this->_helper->json($response); } public function carregarMaisTelefonesEnviadosDiscadorAction() { $limite = $this->_getParam('limite', 100); $ultimoId = (int) $this->_getParam('ultimo_id'); $campanhaId = $this->_getParam('campanha_id'); $realizados = (new CallcenterBase) ->selectNumerosEnviados($campanhaId, $ultimoId, $limite); if (!sizeof($realizados) > 0) { $this->_helper->json($realizados); } $this->view->realizados = $realizados; } public function alterarStatusRamalAction() { $request = $this->getRequest(); $pausa = current((new Model_DbTable_CallcenterMotivoPausa) ->find($request->getParam('motivo'))->toArray()); $mensagem = "Nenhuma mensagem retornada pelo discador."; if ($pausa['logout_discador'] == 1) { try { $result = Model_CallcenterOperador::deslogarDiscador($pausa); if ($result == "1") { $tempoPausa = $pausa['tempo_limite_pausa'] / 60; $mensagem = "Ramal deslogado. Pausa de {$tempoPausa} minutos iniciada."; $logout = true; } $this->_helper->json([ 'mensagem' => $mensagem, 'logout' => $logout ]); } catch (\Exception $e) { $mensagem = $e->getMessage(); } } if (stristr($pausa['descricao'], "LOGOUT")) { try { $result = Model_CallcenterOperador::deslogarDiscador($pausa); if( $result == "1" ){ $mensagem = "Ramal deslogado com sucesso."; } } catch (\Exception $e) { $mensagem = $e->getMessage(); } } else { try { $result = Model_CallcenterPausaOperador::realizarPausa($request->getParam('motivo')); $mensagem = $result['mensagem']; } catch (\Exception $e) { $mensagem = $e->getMessage(); } } $this->_helper->json(['mensagem' => $mensagem]); } public function consultarUltimaChamadaDiscadorAction() { $tbTableCampanha = new Model_DbTable_CallcenterCampanha; $campanhaId = $this->_getParam('campanha_id'); $dadosCampanha = $tbTableCampanha->fetchRow("id = $campanhaId"); if ($dadosCampanha['discador_ultima_chamada'] == null) { return $this->_helper->json('Sem Chamadas'); } $dataFormatada = (new Zend_Date($dadosCampanha['discador_ultima_chamada'])) ->get('dd/MM/yyyy hh:mm:ss'); return $this->_helper->json($dataFormatada); } public function tabularChamadaDiscadorAction() { $discadorModel = new Model_Discador; $discadorModel->tabularChamada($this->_getAllParams()); return $this->_helper->json(true); } public function carregarOperadoresAction() { $ns = new Zend_Session_Namespace(); $acl = $ns->acl; $operadores = null; if ($acl->isAllowed(Yuppie_Auth::getIdentity()->grupo, 'agendar-para-outro-operador')) { $operadores = (new Model_CallcenterOperador())->listar(['grupo' => 'callcenter']); } $this->_helper->json($operadores); } public function consultarBarraOperadorAction() { if (empty(Yuppie_Auth::getIdentity()->id) || empty(Yuppie_Auth::getIdentity()->discador_id)) { $this->_helper->json(false); } $this->_helper->json([ 'yuppie_status' => Model_CallcenterPausaOperador::consultarPausaYuppie(), 'sonax_status' => Model_Discador::consultarStatusOperador(), 'ramal_operador' => Model_Usuario::getRamalOperador(), ]); } public function exibirLayoutAction() { $this->getHelper('Layout')->disableLayout(); $request = $this->getRequest(); $bancoId = $request->getParam('id'); $layoutBanco = $request->getParam('idlayout'); try { $this->view->layout = Model_Contrato::getExibirLayoutBanco($bancoId, $layoutBanco); } catch (Core_Exception $e) { $this->_helper->json([ 'alert' => $e->getMessage(), ]); } $this->_helper->json([ 'alert' => '', 'body' => true, 'content' => $this->view->render('contrato/exibir-layout.phtml'), ]); } public function checarTempoPausaAction() { $motivosPausa = new Model_CallcenterMotivosPausa(); $result = $motivosPausa->checarTempoPausa(); $this->_helper->json($result); } public function autenticarRetornoPausaAction() { $modelUsuario = new Model_Usuario(); $result = $modelUsuario->autenticarRetornoPausa($this->getRequest()->getParams()); $this->_helper->json($result); } public function checarTermoEnviadoAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->layout->disableLayout(); $request = $this->getRequest(); $service = new Service_Corretor_TermoResponsabilidade(); $corretor = $service->getTermoCorretor($request->getParam('corretor')); if ($service->hasAssinaturaPendente($corretor['id'], $corretor['email'])) { $this->_helper->json(['resend' => true]); } $this->_helper->json(['resend' => false]); } public function downloadAnexoPropostaAction() { $id = (int) $this->getRequest()->getParam('id'); if ($id > 0) { $anexo = Model_ContratoAnexo::downloadAnexo($id); if ($anexo) { echo $anexo; } else { $this->_helper->flashMessenger(['error' => "Anexo não encontrado!"]); } die(); } } public function getFolhaPontoMesAction() { $request = $this->getRequest(); $mesAno = $request->getParam('mes_ano'); $modelFolhaPonto = new Model_FolhaPonto(); try { $this->view->folhas = $modelFolhaPonto->pontoFuncionarios($mesAno); $this->view->mesAno = $mesAno; $this->_helper->json([ 'success' => true, 'content' => $this->view->render('folha-ponto/exportar.phtml'), ]); } catch (Exception $exception) { $this->_helper->json(['erro' => $exception->getMessage()]); } } public function checarAgendaAction() { $agendamentos = (new Model_CallcenterBase())->getAgendaNotificacao(); if (empty($agendamentos)) { $this->_helper->json([]); } foreach ($agendamentos as $agenda) { $url = $this->view->url([ 'controller' => 'callcenter', 'action' => 'exibir-cliente', 'id' => $agenda['id'] ], null, true, false); $mensagem = "Nome {$agenda['nome']} - CPF " . String_Refatorar::resetCpf($agenda['cpf']); Core_Notificacao_PushBrowser::notify( "agenda", "Cliente agendado", $mensagem, [ "destinatario" => $agenda['usuario_ultimo_atendimento'], "cliente" => $agenda['id'], "url" => $url ] ); (new Model_DbTable_CallcenterBase())->agendaNotificada($agenda['id']); } $this->_helper->json($agendamentos); } public function atualizarUsuariosApiAction() { $fileName = CLIENT_PATH . "/configs/application.ini"; $applicationIni = new Zend_Config_Ini($fileName, 'production'); $bancosConfigurados = $applicationIni->bancos; $form = new Form_DadosSincronizacao(); $path = CLIENT_PATH . '/configs/importacao.php'; if(file_exists($path)){ $dados = include $path; $form->populate($dados); } $values = [ 'API_SAFRA' => [ 'usuario' => $bancosConfigurados->safra->usuario, 'senha' => $bancosConfigurados->safra->senha, 'login_certificado_safra' => $bancosConfigurados->safra->login_certificado ], 'BMG' => [ 'usuario' => $bancosConfigurados->bmgws->usuario, 'senha' => $bancosConfigurados->bmgws->senha, 'cod_loja' => $bancosConfigurados->bmgws->cod_loja, 'usuario_consig' => $bancosConfigurados->bmgws->usuario_consig, 'senha_consig' => $bancosConfigurados->bmgws->senha_consig ], 'FACTA' => [ 'usuario' => $bancosConfigurados->facta->usuario, 'senha' => $bancosConfigurados->facta->senha, 'login_certificado' => $bancosConfigurados->facta->login_certificado ], 'C6' => [ 'usuario' => $bancosConfigurados->c6bank->usuario, 'senha' => $bancosConfigurados->c6bank->senha, 'codigo_digitador' => $bancosConfigurados->c6bank->codigo_digitador ], 'MERCANTIL' => [ 'usuario_digitador' => $bancosConfigurados->mercantil->usuario_digitador, 'cpf_agente_certificado' => $bancosConfigurados->mercantil->cpf_agente_certificado, 'uf_atuacao' => $bancosConfigurados->mercantil->uf_atuacao ], 'API_PAN' => [ 'usuario' => $bancosConfigurados->pan->usuario, 'senha' => $bancosConfigurados->pan->senha ] ]; $form->populate($values); $form->persistData(); die('processado'); } public function chamarDigisacAction() { $request = $this->getRequest()->getParams(); $celular = $request['fone']; if (empty($celular)) { $this->_helper->json(['erro' => 'Nenhum número informado.']); } if (!$whatsapp = \Core_Whatsapp_Factory::load()) { $this->_helper->json(['erro' => 'Digisac não configurado no seu sistema.']); } $mensagem = "Oi"; $success = $whatsapp->sendMessage(String_Refatorar::formatarTelefone($celular), $mensagem); if ($success) { $this->_helper->json(['success' => 'Mensagem enviada via Digisac.']); } $this->_helper->json(['error' => 'Mensagem não enviada.']); } public function consultaFoneBlacklistAction() { $request = $this->getRequest(); if (empty($request->getParam('fone'))) { $this->_helper->json(['success' => true]); } $consulta = (new Model_BlacklistNaoPerturbe())->consultarTelefone($request->getParam('fone')); if (!$consulta) { $this->_helper->json(['success' => true]); } $this->_helper->json([ 'alert' => "Atenção! Este telefone ESTÁ cadastrado no Não Perturbe." ]); } }
💾 保存文件
← 返回文件管理器