public static function getInstance()
 {
     if (self::$objInstance == null) {
         self::$objInstance = new NegAtividadeMembro();
     }
     return self::$objInstance;
 }
 public function consultarAtividadeMembro($arrStrFiltros)
 {
     return NegAtividadeMembro::getInstance()->consultar($arrStrFiltros);
 }
Example #3
0
 public function salvar($arrStrDados)
 {
     $obj = $this->factory(DadosHelper::getInstance()->prepararDadosComAcentuacao($arrStrDados));
     $obj->setCPF(StringHelper::getInstance()->removerCaracteresParaBanco($arrStrDados["PES_CPF"]));
     // verifica se já existe uma matrícula para
     // o membro, se existir o sistema não gera
     // só irá gerar se não existir
     if (trim($obj->getMatricula()) == "") {
         $dataAtual = Date("Y-m-d H:m:s");
         $strAno = substr($dataAtual, 0, 4);
         $intMes = (int) substr($dataAtual, 5, 2);
         if ($intMes <= 06) {
             $strSimestre = "1";
         } else {
             $strSimestre = "2";
         }
         // gera a hora em milissegundos
         $m = explode(' ', microtime());
         list($totalSeconds, $extraMilliseconds) = array($m[1], (int) round($m[0] * 1000, 3));
         $datHora = date("H:i:s", $totalSeconds) . ":{$extraMilliseconds}";
         //retira a pontuação da hora
         $strHoraSemPontuacao = str_replace(":", "", $datHora);
         // concatena pra gerar a matricula
         $strMatricula = $strAno . "." . $strSimestre . "." . $strHoraSemPontuacao;
         $obj->setMatricula($strMatricula);
     }
     // conserva a string da foto
     // para que não seja convertida para maúscula
     $obj->setFoto($arrStrDados["PES_ArquivoFoto"]);
     $obj->setDataNascimento(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["PES_DataNascimento"]));
     // conversão de datas não obrigatórias
     if (isset($arrStrDados["PES_DataCasamento"])) {
         if (trim($arrStrDados["PES_DataCasamento"]) != "") {
             $obj->setDataCasamento(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["PES_DataCasamento"]));
         }
     }
     if (isset($arrStrDados["MEM_DataConversao"])) {
         if (trim($arrStrDados["MEM_DataConversao"]) != "") {
             $obj->setDataConversao(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["MEM_DataConversao"]));
         }
     }
     if (isset($arrStrDados["MEM_DataReconciliacao"])) {
         if (trim($arrStrDados["MEM_DataReconciliacao"]) != "") {
             $obj->setDataReconciliacao(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["MEM_DataReconciliacao"]));
         }
     }
     if (isset($arrStrDados["MEM_DataBatismo"])) {
         if (trim($arrStrDados["MEM_DataBatismo"]) != "") {
             $obj->setDataBatismo(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["MEM_DataBatismo"]));
         }
     }
     if (isset($arrStrDados["PES_DataFalecimento"])) {
         $obj->setDataFalecimento(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["PES_DataFalecimento"]));
     }
     if (isset($arrStrDados["PES_Falecimento"])) {
         if (isset($arrStrDados["MEM_DataInativacao"])) {
             if (trim($arrStrDados["MEM_DataInativacao"]) != "") {
                 $obj->setDataInativacao(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["MEM_DataInativacao"]));
             }
         }
         if (isset($arrStrDados["MEM_DataDescricaoInativacao"])) {
             if (trim($arrStrDados["MEM_DataDescricaoInativacao"]) != "") {
                 $obj->setDataDescricaoInativacao(DataHelper::getInstance()->converterDataUsuarioParaDataBanco($arrStrDados["MEM_DataDescricaoInativacao"]));
             }
         }
     }
     if ($obj->getId() == "") {
         $intPessoaID = RepoPessoa::getInstance()->salvar($obj);
         if ($intPessoaID > 0) {
             // guarda o id da pessoa
             $obj->setId($intPessoaID);
             if (!RepoMembro::getInstance()->salvar($obj)) {
                 return false;
             } else {
                 // grava os familiares
                 if (isset($arrStrDados["DADOS_MEMBRO"]["FAMILIARES"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["FAMILIARES"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["FAMILIARES"] as $arrStrFamilia) {
                             $arrStrFamilia["PES_Primario_ID"] = $intPessoaID;
                             NegFamilia::getInstance()->salvar($arrStrFamilia);
                         }
                     }
                 }
                 // grava as atividades
                 if (isset($arrStrDados["DADOS_MEMBRO"]["ATIVIDADES"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["ATIVIDADES"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["ATIVIDADES"] as $arrStrAtividade) {
                             $arrStrAtividade["PES_ID"] = $intPessoaID;
                             $arrStrAtividade["ATM_Status"] = "A";
                             NegAtividadeMembro::getInstance()->salvar($arrStrAtividade);
                         }
                     }
                 }
                 // grava os dados eclesiásticos
                 if (isset($arrStrDados["DADOS_MEMBRO"]["ECLESIASTICO"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["ECLESIASTICO"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["ECLESIASTICO"] as $arrStrEcle) {
                             $arrStrEcle["PES_ID"] = $intPessoaID;
                             NegDadosEclesiasticos::getInstance()->salvar($arrStrEcle);
                         }
                     }
                 }
                 // grava os telefones
                 if (isset($arrStrDados["DADOS_MEMBRO"]["FONES"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["FONES"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["FONES"] as $arrStrFone) {
                             $arrStrFone["PES_ID"] = $intPessoaID;
                             NegPessoaTelefone::getInstance()->salvar($arrStrFone);
                         }
                     }
                 }
                 // grava os e-mails
                 if (isset($arrStrDados["DADOS_MEMBRO"]["EMAILS"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["EMAILS"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["EMAILS"] as $arrStrEmail) {
                             $arrStrEmail["PES_ID"] = $intPessoaID;
                             NegPessoaEmail::getInstance()->salvar($arrStrEmail);
                         }
                     }
                 }
                 // grava os processos de desligamento
                 if (isset($arrStrDados["DADOS_MEMBRO"]["DESLIGAMENTO"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["DESLIGAMENTO"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["DESLIGAMENTO"] as $arrStrDesligamento) {
                             $arrStrDesligamento["PES_ID"] = $intPessoaID;
                             NegMotivosDesligamentoMembro::getInstance()->salvar($arrStrDesligamento);
                         }
                     }
                 }
                 // grava os ministérios
                 if (isset($arrStrDados["DADOS_MEMBRO"]["MINISTERIOS"])) {
                     if (count($arrStrDados["DADOS_MEMBRO"]["MINISTERIOS"]) > 0) {
                         foreach ($arrStrDados["DADOS_MEMBRO"]["MINISTERIOS"] as $arrStrMinisterio) {
                             $arrStrMinisterio["PES_ID"] = $intPessoaID;
                             NegMembroMinisterio::getInstance()->salvar($arrStrMinisterio);
                         }
                     }
                 }
                 return true;
             }
         } else {
             return false;
         }
     } else {
         // exclui as atividades
         $arrDadosExcluirAtividade["PES_ID"] = $obj->getId();
         NegAtividadeMembro::getInstance()->excluir($arrDadosExcluirAtividade);
         // salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["ATIVIDADES"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["ATIVIDADES"] as $atividade) {
                 $atividade["PES_ID"] = $obj->getId();
                 NegAtividadeMembro::getInstance()->salvar($atividade);
             }
         }
         //exclui os familiares
         $arrDadosExcluirFamiliares["PES_Primario_ID"] = $obj->getId();
         NegFamilia::getInstance()->excluir($arrDadosExcluirFamiliares);
         //salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["FAMILIARES"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["FAMILIARES"] as $familia) {
                 $familia["PES_Primario_ID"] = $obj->getId();
                 NegFamilia::getInstance()->salvar($familia);
             }
         }
         //exclui os dados eclesiasticos
         $arrDadosExcluirEclesiastico["PES_ID"] = $obj->getId();
         NegDadosEclesiasticos::getInstance()->excluir($arrDadosExcluirEclesiastico);
         //salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["ECLESIASTICO"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["ECLESIASTICO"] as $ecle) {
                 $ecle["PES_ID"] = $obj->getId();
                 NegDadosEclesiasticos::getInstance()->salvar($ecle);
             }
         }
         //exclui os Telefones
         $arrDadosExcluirFone["PES_ID"] = $obj->getId();
         NegPessoaTelefone::getInstance()->excluir($arrDadosExcluirFone);
         //salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["FONES"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["FONES"] as $fone) {
                 $fone["PES_ID"] = $obj->getId();
                 NegPessoaTelefone::getInstance()->salvar($fone);
             }
         }
         //exclui os Emails
         $arrDadosExcluirEmails["PES_ID"] = $obj->getId();
         NegPessoaEmail::getInstance()->excluir($arrDadosExcluirEmails);
         //salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["EMAILS"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["EMAILS"] as $email) {
                 $email["PES_ID"] = $obj->getId();
                 NegPessoaEmail::getInstance()->salvar($email);
             }
         }
         //exclui os processo de desligamento
         $arrDadosExcluirDesligamento["PES_ID"] = $obj->getId();
         NegMotivosDesligamentoMembro::getInstance()->excluir($arrDadosExcluirDesligamento);
         //salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["DESLIGAMENTO"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["DESLIGAMENTO"] as $desligamento) {
                 $desligamento["PES_ID"] = $obj->getId();
                 NegMotivosDesligamentoMembro::getInstance()->salvar($desligamento);
             }
         }
         // exclui os ministérios
         $arrDadosExcluirMinisterio["PES_ID"] = $obj->getId();
         NegMembroMinisterio::getInstance()->excluir($arrDadosExcluirMinisterio);
         // salva os que estão vindo novamente
         if (isset($arrStrDados["DADOS_MEMBRO"]["MINISTERIOS"])) {
             foreach ($arrStrDados["DADOS_MEMBRO"]["MINISTERIOS"] as $ministerio) {
                 $ministerio["PES_ID"] = $obj->getId();
                 NegMembroMinisterio::getInstance()->salvar($ministerio);
             }
         }
         if (RepoPessoa::getInstance()->alterar($obj)) {
             if (RepoMembro::getInstance()->alterar($obj) == false) {
                 return false;
             } else {
                 return true;
             }
         } else {
             return true;
         }
     }
 }