Non puoi selezionare più di 25 argomenti
Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
117 righe
5.1 KiB
117 righe
5.1 KiB
<? |
|
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php"; |
|
include_once($configPath); |
|
|
|
$error = true; |
|
if (!empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($radice,$_POST["codice_contratto"],"ooee")) { |
|
$bind = array(":codice"=>$_POST["codice"],":codice_contratto"=>$_POST["codice_contratto"]); |
|
$sql = "DELETE FROM r_contraenti WHERE codice = :codice AND codice_contratto = :codice_contratto "; |
|
$ris = $pdo->go($sql,$bind); |
|
if ($ris->rowCount() === 1) { |
|
|
|
if($_SESSION['ente']->hasModulo('contratti.documentale')){ |
|
$bind = null; |
|
$sql = " SELECT r_contratto_richiesta.codice, |
|
r_contratto_richiesta.codice_contratto, |
|
r_contratto_richiesta.codice_richiesta, |
|
b_contratti_richiesta_documentale.codice_classe_documentale |
|
FROM r_contratto_richiesta |
|
JOIN b_contratti_richiesta_documentale ON r_contratto_richiesta.codice_richiesta = b_contratti_richiesta_documentale.codice |
|
WHERE b_contratti_richiesta_documentale.soft_delete = 'N' |
|
AND r_contratto_richiesta.codice_contratto = :codice_contratto |
|
AND b_contratti_richiesta_documentale.codice_oe = :codice_operatore "; |
|
|
|
|
|
$bind = [ |
|
':codice_contratto' => $_POST['codice_contratto'], |
|
':codice_operatore' => $_POST['codice_operatore'] |
|
]; |
|
|
|
$richieste = $pdo->go($sql,$bind)->fetchAll(PDO::FETCH_ASSOC); |
|
|
|
if(!empty($richieste)){ |
|
$codiciClassiDocumentali = pluck('codice_classe_documentale', $richieste); |
|
|
|
$classiDocumentali = ContrattoDocumentale::getAllDocumentali(['codici' => $codiciClassiDocumentali]); |
|
|
|
if(!empty($classiDocumentali)){ |
|
foreach($richieste as $richiesta){ |
|
foreach ($classiDocumentali as $classeDocumentale) { |
|
if($richiesta['codice_classe_documentale'] == $classeDocumentale['codice']){ |
|
if ($classeDocumentale['ambito_validita'] == 'oe') { |
|
// Verifica se ci sono altre richieste in altri contratti |
|
|
|
$sql = "SELECT r_contratto_richiesta.codice, |
|
r_contratto_richiesta.codice_contratto, |
|
r_contratto_richiesta.codice_richiesta, |
|
b_contratti_richiesta_documentale.codice_classe_documentale |
|
FROM r_contratto_richiesta |
|
JOIN b_contratti_richiesta_documentale ON r_contratto_richiesta.codice_richiesta = b_contratti_richiesta_documentale.codice |
|
WHERE b_contratti_richiesta_documentale.soft_delete = 'N' |
|
AND b_contratti_richiesta_documentale.codice_classe_documentale = :codice_classe_documentale |
|
AND b_contratti_richiesta_documentale.codice_oe = :codice_operatore "; |
|
|
|
|
|
$bind[':codice_classe_documentale'] = $classeDocumentale['codice']; |
|
$ris = $pdo->go($sql,$bind); |
|
|
|
if ($ris->rowCount() === 1) { |
|
$sql = "UPDATE b_contratti_richiesta_documentale SET soft_delete = 'S' WHERE codice = :codice_richiesta "; |
|
$up = [':codice_richiesta' => $richiesta['codice_richiesta']]; |
|
|
|
$delete = $pdo->go($sql,$up); |
|
|
|
if($delete->rowCount() === 1){ |
|
scriviLog("b_contratti_richiesta_documentale","UPDATE",$pdo->getSQL(),$richiesta['codice_richiesta']); |
|
} |
|
|
|
|
|
}else{ |
|
|
|
$sql = "DELETE FROM r_contratto_richiesta WHERE codice_contratto = :codice_contratto AND codice_richiesta = :codice_richiesta "; |
|
$up = [ |
|
'codice_contratto' => $_POST['codice_contratto'], |
|
'codice_richiesta' => $richiesta['codice_richiesta'] |
|
]; |
|
$delete = $pdo->go($sql,$up); |
|
|
|
if($delete->rowCount() === 1){ |
|
scriviLog("r_contratto_richiesta","DELETE",$pdo->getSQL(),$richiesta['codice']); |
|
} |
|
|
|
} |
|
|
|
}else{ |
|
|
|
$sql = "UPDATE b_contratti_richiesta_documentale SET soft_delete = 'S' WHERE codice = :codice_richiesta "; |
|
|
|
$up = [':codice_richiesta' => $richiesta['codice_richiesta']]; |
|
|
|
$delete = $pdo->go($sql,$up); |
|
|
|
if($delete->rowCount() === 1){ |
|
scriviLog("b_contratti_richiesta_documentale","UPDATE",$pdo->getSQL(),$richiesta['codice_richiesta']); |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
|
|
$error = false; |
|
scriviLog("r_contraenti","DELETE",$pdo->getSQL(),$_POST["codice"]); |
|
} |
|
} |
|
|
|
if (!$error) { |
|
?> |
|
window.location.reload(); |
|
<? |
|
} else { |
|
header('HTTP/1.0 403 Forbidden'); |
|
die(); |
|
} |
|
|
|
?>
|
|
|