public function getEnviosByDocumento($doc_id) { $sql = "select distinct dor.dor_envio, doe.*, esc.esc_id, esc.esc_nome, "; $sql .= "IF (dor.dor_id = (select max(dor2.dor_id) from documento_retorno dor2 where dor2.dor_envio = doe.doe_id) or dor.dor_id is null, dor.dor_id, 'antigo') as dor_id, "; $sql .= "dor.dor_rejeitado, dor.dor_visto is not null as dor_visto, "; $sql .= "doc.doc_id, doc.doc_descricao is not null as doc_descricao "; $sql .= "from documento_envio doe "; $sql .= "join escola esc on doe.doe_destinatario = esc.esc_id "; $sql .= "left join documento_retorno dor on doe.doe_id = dor.dor_envio "; $sql .= "left join documento doc on dor.dor_documento = doc.doc_id "; $sql .= "where doe.doe_documento = {$doc_id};"; $result = $this->retrieve($sql); $retorno = []; while ($qr = mysqli_fetch_array($result)) { if ($qr["dor_id"] == "antigo") { continue; } $doe = new DocumentoEnvio(); $doe->setDoe_id($qr["doe_id"]); $doe->setDoe_data_envio($qr["doe_data_envio"]); $doe->setDoe_documento($qr["doe_documento"]); $doe->setDoe_retorno($qr["doe_retorno"]); $doe->setDoe_visto($qr["doe_visto"]); $doe->setDoe_destinatario(new Escola()); $doe->getDoe_destinatario()->setEsc_id($qr["esc_id"]); $doe->getDoe_destinatario()->setEsc_nome($qr["esc_nome"]); $dados = ["envio" => $doe]; if ($qr["dor_id"] != null) { $dor = new DocumentoRetorno(); $dor->setDor_id($qr["dor_id"]); $dor->setDor_visto($qr["dor_visto"]); $dor->setDor_rejeitado($qr["dor_rejeitado"]); $dor->setDor_documento(new Documento()); $dor->getDor_documento()->setDoc_id($qr["doc_id"]); $dor->getDor_documento()->setDoc_descricao($qr["doc_descricao"]); $dados["retorno"] = $dor; } else { $dados["retorno"] = false; } array_push($retorno, $dados); } return $retorno; }
} if (!$_SESSION['cadastro'] == "excedeu") { $documento->setDoc_documento("arquivos_galeria/" . $nomeImage); $result = $documentosController->insertDocumentos($documento); echo json_encode($result); $_SESSION['cadastro'] = "ok"; } break; case 'postEnvio': $documento = $_REQUEST['documento']; $destinatario = $_REQUEST['destinatario']; $retorno = $_REQUEST['retorno']; $destinatario = $destinatario . explode(','); for ($i = 0; $i < $destinatario . sizeof(); $i++) { $documentoEnvio = new DocumentoEnvio(); $documentoEnvio->setDoe_documento($documento); $documentoEnvio->setDoe_destinatario($destinatario[$i]); $documentoEnvio->setDoe_retorno($retorno); $documentoEnvioController->insertParcial($documentoEnvio); } break; case 'postRetorno': $documento = $_REQUEST['documento']; $remetente = $_REQUEST['remetente']; $envio = $_REQUEST['envio']; $documentosRetorno = new DocumentoRetorno(); $documentosRetorno->setDor_documento($documento); $documentosRetorno->setDor_remetente($remetente); $documentosRetorno->setDor_envio($envio); $documentoRetornoController->insertParcial($documentosRetorno); break;
if (filesize($arquivo_temporario) > $maxSize) { $_SESSION['cadastro'] = "excedeu"; } else { move_uploaded_file($arquivo_temporario, $local . $nomeArquivo); $arquivo = $local . $nomeArquivo; } if (!$_SESSION['cadastro'] == "excedeu") { $documento->setDoc_arquivo("documentos/" . $nomeArquivo); $result = $documentosController->insertDocumentos($documento); $_SESSION['cadastro'] = "ok"; echo $result; } break; case 'postEnvio': $doe = new DocumentoEnvio(); $doe->setDoe_documento($_POST["documento"]); $doe->setDoe_retorno($_POST["retorno"]); $retorno = 0; $doe_id = intval($documentoEnvioController->insertDocumentoEnvio($doe)); for ($i = 0; $i < count(explode(",", $_POST["destinatario"])); $i++) { $dod = new DocumentoDestinatario(); $dod->setDod_envio($doe_id); $dod->setDod_destinatario(explode(",", $_POST["destinatario"])[$i]); if ($documentoDestinatarioController->insert($dod)) { $retorno = 1; } else { $retorno = 0; } } echo $retorno; break;
public function selectDocumentoEnviados() { $sql = " SELECT doe_id, doe_data_envio, doe_visto, doe_retorno, doc_id, doc_assunto, doc_descricao, "; $sql .= " MAX(IF(doe_retorno = 1 AND dor_id IS NULL, 1, 0)) as retornos_pendentes, MAX(IF(doe_retorno = 1 AND dor_visto = 0, 1, 0)) as retornos_nao_vistos "; $sql .= " FROM documento_envio "; $sql .= " JOIN documento ON doe_documento = doc_id "; $sql .= " LEFT JOIN documento_retorno ON dor_envio = doe_id "; $sql .= " GROUP BY doe_documento"; $result = $this->retrieve($sql); $retorno = []; while ($qr = mysqli_fetch_array($result)) { $doe = new DocumentoEnvio(); $doe->setDoe_id($qr["doe_id"]); $doe->setDoe_data_envio($qr["doe_data_envio"]); $doe->setDoe_visto($qr["doe_visto"]); $doe->setDoe_retorno($qr["doe_retorno"]); $doe->setDoe_documento(new Documento()); $doe->getDoe_documento()->setDoc_id($qr["doc_id"]); $doe->getDoe_documento()->setDoc_assunto($qr["doc_assunto"]); $doe->getDoe_documento()->setDoc_descricao($qr["doc_descricao"]); array_push($retorno, ["documento_envio" => $doe, "verificadores" => ["exige_retorno" => intval($qr["doe_retorno"]), "retornos_nao_vistos" => intval($qr["retornos_nao_vistos"]), "retornos_pendentes" => intval($qr["retornos_pendentes"])]]); } return $retorno; }