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.
116 righe
3.6 KiB
116 righe
3.6 KiB
<?php |
|
|
|
require_once ROOT . "/lib/classes/IDataClass.php"; |
|
|
|
class CustomerSatisfaction extends DataClass { |
|
|
|
const TABLE_NAME = "CUSTOMER_SATISFACTION"; |
|
const SEQ_NAME = "CUSTOMER_SATISFACTION_ID_SEQ"; |
|
|
|
public $ID = 0; // Primary key |
|
public $CODICE_FISCALE = ""; |
|
public $VALORE = ""; |
|
public $DATA = ""; |
|
|
|
public function __construct($src = null) { |
|
global $con; |
|
$stripSlashes = false; |
|
if ($src == null) { |
|
return; |
|
} |
|
if (is_array($src)) { |
|
$this->_loadByRow($src, $stripSlashes); |
|
} elseif (is_string($src)) { |
|
// Carichiamo tramite ID |
|
$sql = "SELECT * FROM " . self::TABLE_NAME . " WHERE ID = :ID"; |
|
$query = $con->prepare($sql); |
|
$query->bindParam(":ID", $src); |
|
try { |
|
$query->execute(); |
|
$it = $query->fetchAll(PDO::FETCH_ASSOC); |
|
Utils::FillObjectFromRow($this, $it[0]); |
|
} catch (Exception $exc) { |
|
$exc->getMessage(); |
|
} |
|
} |
|
} |
|
|
|
public static function getByCf() { |
|
global $con, $LoggedAccount; |
|
$codiceFiscale = $LoggedAccount->CODICE_FISCALE; |
|
$sql = "SELECT " . self::TABLE_NAME . ".*, TO_CHAR(DATA, 'dd-MM-YYYY HH24:MI:SS') AS DATA_ITA FROM " . self::TABLE_NAME . " WHERE CODICE_FISCALE = :codice_fiscale"; |
|
$query = $con->prepare($sql); |
|
$query->bindParam(":codice_fiscale", $codiceFiscale); |
|
try { |
|
$query->execute(); |
|
$it = $query->fetch(PDO::FETCH_ASSOC); |
|
} catch (Exception $exc) { |
|
|
|
} |
|
return $it; |
|
} |
|
|
|
public static function getData() { |
|
global $con; |
|
$sql = "SELECT VALORE, COUNT(*) AS CONTEGGIO FROM " . self::TABLE_NAME . " WHERE VALORE IN (1, 2, 3) GROUP BY VALORE ORDER BY VALORE"; |
|
$query = $con->prepare($sql); |
|
try { |
|
$query->execute(); |
|
$it = $query->fetchAll(PDO::FETCH_ASSOC); |
|
} catch (Exception $exc) { |
|
} |
|
return $it; |
|
} |
|
|
|
public static function checkVerificaDatiPreSalvataggio() { |
|
$_POST['VALORE'] = intval(Utils::get_filter_int_POST('VALORE')); |
|
} |
|
|
|
|
|
public function checkDatiPreSave() { |
|
$response = array(); |
|
$controllValidita = true; |
|
$dati_mancanti = ''; |
|
if ($this->CODICE_FISCALE == "") { |
|
$controllValidita = false; |
|
$dati_mancanti .= "Codice Fiscale assente<br>"; |
|
} |
|
if ($this->VALORE != 1 && $this->VALORE != 2 && $this->VALORE != 3) { |
|
$controllValidita = false; |
|
$dati_mancanti .= "E' necessario esprimere un voto per proseguire nel salvataggio."; |
|
} |
|
$response['checkDati'] = $controllValidita; |
|
$response['txt_dati_mancanti'] = $dati_mancanti; |
|
return $response; |
|
} |
|
|
|
|
|
public function Save() { |
|
global $con, $LoggedAccount; |
|
$vars = get_object_vars($this); |
|
/* REMOVE LOCAL VAR */ |
|
unset($vars['DATA']); |
|
/**/ |
|
$sql = Utils::prepareQuery(self::TABLE_NAME, $vars); |
|
$queryabi = $con->prepare($sql); |
|
foreach ($vars as $k => $v) { |
|
if ($k == "ID" && $v == 0){ |
|
continue; |
|
} |
|
$queryabi->bindValue(":" . $k, $v); |
|
} |
|
try { |
|
$it = parent::_Save($queryabi); |
|
} catch (Exception $exc) { |
|
$it['esito'] = -999; |
|
$it['erroreDescrizione'] = $exc->getMessage(); |
|
} |
|
return $it; |
|
} |
|
|
|
|
|
|
|
public function Parse(&$record, $campo = "") { |
|
array_push($record, array("Campo" => $campo, "Valore" => $this->$campo)); |
|
} |
|
}
|
|
|