コード例 #1
0
 /**
  * Envia email com a compilação dos erros gerados durente o ciclo de migração
  *
  * @param array $arrError
  * @return self
  */
 private function _sendMailProcess(\Zend_Date $zd, $pid, $processType, $start = TRUE, $withoutProcess = FALSE, $arrSuccess = array())
 {
     if (!$this->_checkSendEmail()) {
         return $this;
     }
     $arrConfigs = $this->_getMigrationConfigs('mail');
     $enviroment = '';
     if (APPLICATION_ENV != 'production') {
         $enviroment = '[' . APPLICATION_ENV . ']';
     }
     $type = $start ? 'Start' : 'Stop';
     $subject = "{$type}::{$pid} {$processType} {$enviroment}";
     $template = 'process.phtml';
     $arrTo = array();
     foreach ($arrConfigs['to'] as $value) {
         $arrTo['para'][$value['name']] = $value['email'];
     }
     $arguments = array('totalRegistroProcessar' => $this->_totalRegistroProcessar, 'withoutProcess' => $withoutProcess, 'objZDProcess' => $zd, 'processType' => $processType, 'type' => $type, 'arrSucesso' => $arrSuccess, 'imgLogo' => ArtefatoImagemService::PATH_IMAGE_LOGO);
     $SgdoceMail = new \Sgdoce_Mail();
     $SgdoceMail->prepareBodyHtml($template, $arguments);
     $SgdoceMail->setRecipients($arrTo);
     $SgdoceMail->setSubject($subject);
     $SgdoceMail->send();
     return $this;
 }
コード例 #2
0
 /**
  * Envia email com a compilação dos erros gerados durente o ciclo de migração
  *
  * @param array $arrError
  * @return self
  */
 private function _sendMailError(array $arrError)
 {
     $configs = \Core_Registry::get('configs');
     $enviroment = '';
     if (APPLICATION_ENV != 'production') {
         $enviroment = '[' . APPLICATION_ENV . ']';
     }
     $subject = "Resumo de erros ocorridos no MergePdf {$enviroment}";
     $template = 'merge_pdf_resume_error.phtml';
     $arrTo = array();
     foreach ($configs['merge_pdf']['mail']['to'] as $value) {
         $arrTo['para'][$value['name']] = $value['email'];
     }
     $arguments = array('erros' => $arrError, 'imgLogo' => self::PATH_IMAGE_LOGO);
     $SgdoceMail = new \Sgdoce_Mail();
     $SgdoceMail->prepareBodyHtml($template, $arguments);
     $SgdoceMail->setRecipients($arrTo);
     $SgdoceMail->setSubject($subject);
     $SgdoceMail->send();
     return $this;
 }
コード例 #3
0
 /**
  * @param Solicitacao $entSolicitacao
  *
  * @return boolean
  */
 protected function _sendStatus($entSolicitacao, $txComentario)
 {
     // EMAIL
     $ultimoStatus = $this->getUltimoStatusSolicitacao($entSolicitacao->getSqSolicitacao());
     $listaAndamentos = array();
     $ultimoAndamento = array();
     if ($ultimoStatus['sqTipoStatusSolicitacao'] == \Core_Configuration::getSgdoceTipoStatusSolicitacaoEmAndamento()) {
         $listaAndamentos = $this->getStatusPorTipo($entSolicitacao->getSqSolicitacao(), \Core_Configuration::getSgdoceTipoStatusSolicitacaoEmAndamento());
         $ultimoAndamento = current($listaAndamentos);
     }
     $status = array(\Core_Configuration::getSgdoceTipoStatusSolicitacaoAberta() => 'Aguardando atendimento', \Core_Configuration::getSgdoceTipoStatusSolicitacaoEmAndamento() => 'Com o atendente', \Core_Configuration::getSgdoceTipoStatusSolicitacaoFinalizada() => 'Atendimento concluído');
     if (count($listaAndamentos) && $ultimoAndamento['rownum'] > 1) {
         $status[\Core_Configuration::getSgdoceTipoStatusSolicitacaoEmAndamento()] = "Encaminhado para um novo atendente";
     }
     $subject = 'Andamento da solicitação nº ' . $entSolicitacao->getSqSolicitacao() . "/" . $entSolicitacao->getDtSolicitacao()->get(\Zend_Date::YEAR) . ". (" . $ultimoStatus['noTipoStatusSolicitacao'] . ")";
     $arguments = array('status' => $status, 'entSolicitacao' => $entSolicitacao, 'ultimoStatus' => $ultimoStatus, 'imgLogo' => ArtefatoImagemService::PATH_IMAGE_LOGO, 'txComentario' => $ultimoStatus['noTipoStatusSolicitacao'] == self::T_DEMANDA_FINALIZADA ? $txComentario : NULL);
     $ultimoStatus['txEmail'] = trim($ultimoStatus['txEmail']);
     $objZMail = new \Zend_Validate_EmailAddress();
     if ($objZMail->isValid($ultimoStatus['txEmail'])) {
         $SgdoceMail = new \Sgdoce_Mail();
         $SgdoceMail->prepareBodyHtml('solicitacao_status.phtml', $arguments);
         $SgdoceMail->setRecipients(array('para' => array($ultimoStatus['noPessoaSolicitacao'] => $ultimoStatus['txEmail'])));
         $SgdoceMail->setSubject($subject);
         $SgdoceMail->send();
     } else {
         $this->getMessaging()->addErrorMessage('MN177', 'User');
     }
     $this->getMessaging()->dispatchPackets();
 }