Aggiunto ripristino elementi eliminati
This commit is contained in:
parent
3a6282d6f1
commit
a3a6b6167c
26
editor.php
26
editor.php
|
@ -18,11 +18,13 @@ $query = Util\Query::getQuery($module, [
|
||||||
]);
|
]);
|
||||||
Util\Query::setSegments(true);
|
Util\Query::setSegments(true);
|
||||||
|
|
||||||
|
$query = str_replace(['AND `deleted_at` IS NULL', '`deleted_at` IS NULL', 'AND deleted_at IS NULL', 'deleted_at IS NULL'], '', $query);
|
||||||
|
|
||||||
$has_access = !empty($query) ? $dbo->fetchNum($query) !== 0 : true;
|
$has_access = !empty($query) ? $dbo->fetchNum($query) !== 0 : true;
|
||||||
|
|
||||||
if ($has_access) {
|
if ($has_access) {
|
||||||
// Inclusione gli elementi fondamentali
|
// Inclusione gli elementi fondamentali
|
||||||
include_once $docroot.'/actions.php';
|
include_once DOCROOT.'/actions.php';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (empty($record) || !$has_access) {
|
if (empty($record) || !$has_access) {
|
||||||
|
@ -104,6 +106,26 @@ if (empty($record) || !$has_access) {
|
||||||
<div class="tab-content">
|
<div class="tab-content">
|
||||||
<div id="tab_0" class="tab-pane active">';
|
<div id="tab_0" class="tab-pane active">';
|
||||||
|
|
||||||
|
if(!empty($record['deleted_at'])){
|
||||||
|
echo '
|
||||||
|
<div class="alert alert-danger text-center">
|
||||||
|
<h3>'.tr('Ripristinare il record?').'</h3>
|
||||||
|
|
||||||
|
<a class="btn btn-warning" id="restore">
|
||||||
|
<i class="fa fa-undo"></i> '.tr('Ripristina').'
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(document).ready(function(){
|
||||||
|
$("#restore").click(function(){
|
||||||
|
$("input[name=op]").attr("value", "restore");
|
||||||
|
$("#submit").trigger("click");
|
||||||
|
})
|
||||||
|
});
|
||||||
|
</script>';
|
||||||
|
}
|
||||||
|
|
||||||
// Pulsanti di default
|
// Pulsanti di default
|
||||||
echo '
|
echo '
|
||||||
<div id="pulsanti">
|
<div id="pulsanti">
|
||||||
|
@ -326,7 +348,7 @@ if (empty($record) || !$has_access) {
|
||||||
|
|
||||||
$id_plugin = $plugin['id'];
|
$id_plugin = $plugin['id'];
|
||||||
|
|
||||||
include $docroot.'/include/manager.php';
|
include DOCROOT.'/include/manager.php';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
</div>';
|
</div>';
|
||||||
|
|
|
@ -5,6 +5,9 @@ include_once __DIR__.'/../../core.php';
|
||||||
use Modules\Anagrafiche\Anagrafica;
|
use Modules\Anagrafiche\Anagrafica;
|
||||||
|
|
||||||
switch (post('op')) {
|
switch (post('op')) {
|
||||||
|
case 'restore':
|
||||||
|
$anagrafica->restore();
|
||||||
|
|
||||||
case 'update':
|
case 'update':
|
||||||
// Informazioni sulla sede
|
// Informazioni sulla sede
|
||||||
$sede = $anagrafica->sedeLegale;
|
$sede = $anagrafica->sedeLegale;
|
||||||
|
@ -241,26 +244,12 @@ switch (post('op')) {
|
||||||
|
|
||||||
case 'delete':
|
case 'delete':
|
||||||
// Se l'anagrafica non è l'azienda principale, la disattivo
|
// Se l'anagrafica non è l'azienda principale, la disattivo
|
||||||
if (!in_array($id_azienda, $tipi_anagrafica)) {
|
if (!$anagrafica->isAzienda()) {
|
||||||
$interventi = $dbo->fetchOne('SELECT id FROM in_interventi WHERE idanagrafica='.prepare($id_record));
|
//$anagrafica->delete();
|
||||||
$preventivi = $dbo->fetchOne('SELECT id FROM co_preventivi WHERE idanagrafica='.prepare($id_record));
|
|
||||||
$contratti = $dbo->fetchOne('SELECT id FROM co_contratti WHERE idanagrafica='.prepare($id_record));
|
|
||||||
$ordini = $dbo->fetchOne('SELECT id FROM or_ordini WHERE idanagrafica='.prepare($id_record));
|
|
||||||
$ddt = $dbo->fetchOne('SELECT id FROM dt_ddt WHERE idanagrafica='.prepare($id_record));
|
|
||||||
$fatture = $dbo->fetchOne('SELECT id FROM co_documenti WHERE idanagrafica='.prepare($id_record));
|
|
||||||
|
|
||||||
// Se non ci sono documenti collegati, elimino l'anagrafica
|
|
||||||
if (count($interventi) == 0 && count($preventivi) == 0 && count($contratti) == 0 && count($ordini) == 0 && count($ddt) == 0 && count($fatture) == 0) {
|
|
||||||
$dbo->query('DELETE FROM an_anagrafiche WHERE idanagrafica = '.prepare($id_record));
|
|
||||||
}
|
|
||||||
|
|
||||||
// altrimenti la disabilito solo
|
|
||||||
else {
|
|
||||||
$dbo->query('UPDATE an_anagrafiche SET deleted_at = NOW() WHERE idanagrafica = '.prepare($id_record));
|
$dbo->query('UPDATE an_anagrafiche SET deleted_at = NOW() WHERE idanagrafica = '.prepare($id_record));
|
||||||
|
|
||||||
// Se l'anagrafica è collegata ad un utente lo disabilito
|
// Se l'anagrafica è collegata ad un utente lo disabilito
|
||||||
$dbo->query('UPDATE zz_users SET enabled = 0 WHERE idanagrafica = '.prepare($id_record));
|
$dbo->query('UPDATE zz_users SET enabled = 0 WHERE idanagrafica = '.prepare($id_record));
|
||||||
}
|
|
||||||
|
|
||||||
flash()->info(tr('Anagrafica eliminata!'));
|
flash()->info(tr('Anagrafica eliminata!'));
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@ if (!$cliente) {
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<form action="" method="post" id="edit-form" >
|
<form action="" method="post" id="edit-form" >
|
||||||
<fieldset <?php echo (empty($record['deleted_at'])) ? '' : 'disabled'; ?> >
|
<fieldset>
|
||||||
<input type="hidden" name="backto" value="record-edit">
|
<input type="hidden" name="backto" value="record-edit">
|
||||||
<input type="hidden" name="op" value="update">
|
<input type="hidden" name="op" value="update">
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ $id_fornitore = $dbo->fetchArray("SELECT idtipoanagrafica FROM an_tipianagrafich
|
||||||
$id_tecnico = $dbo->fetchArray("SELECT idtipoanagrafica FROM an_tipianagrafiche WHERE descrizione='Tecnico'")[0]['idtipoanagrafica'];
|
$id_tecnico = $dbo->fetchArray("SELECT idtipoanagrafica FROM an_tipianagrafiche WHERE descrizione='Tecnico'")[0]['idtipoanagrafica'];
|
||||||
|
|
||||||
if (isset($id_record)) {
|
if (isset($id_record)) {
|
||||||
$anagrafica = Anagrafica::find($id_record);
|
$anagrafica = Anagrafica::withTrashed()->find($id_record);
|
||||||
|
|
||||||
$record = $dbo->fetchOne('SELECT *,
|
$record = $dbo->fetchOne('SELECT *,
|
||||||
(SELECT GROUP_CONCAT(an_tipianagrafiche.idtipoanagrafica) FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica WHERE idanagrafica=an_anagrafiche.idanagrafica) AS idtipianagrafica,
|
(SELECT GROUP_CONCAT(an_tipianagrafiche.idtipoanagrafica) FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica WHERE idanagrafica=an_anagrafiche.idanagrafica) AS idtipianagrafica,
|
||||||
|
|
|
@ -7,10 +7,11 @@ use Modules\Fatture\Fattura;
|
||||||
use Settings;
|
use Settings;
|
||||||
use Traits\RecordTrait;
|
use Traits\RecordTrait;
|
||||||
use Util\Generator;
|
use Util\Generator;
|
||||||
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||||
|
|
||||||
class Anagrafica extends Model
|
class Anagrafica extends Model
|
||||||
{
|
{
|
||||||
use RecordTrait;
|
use RecordTrait, SoftDeletes;
|
||||||
|
|
||||||
protected $table = 'an_anagrafiche';
|
protected $table = 'an_anagrafiche';
|
||||||
protected $primaryKey = 'idanagrafica';
|
protected $primaryKey = 'idanagrafica';
|
||||||
|
@ -159,16 +160,6 @@ class Anagrafica extends Model
|
||||||
return $this->idanagrafica;
|
return $this->idanagrafica;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setCodiceAttribute($value)
|
|
||||||
{
|
|
||||||
if (self::where([
|
|
||||||
['codice', $value],
|
|
||||||
[$this->primaryKey, '<>', $this->id],
|
|
||||||
])->count() == 0) {
|
|
||||||
$this->attributes['codice'] = $value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPartitaIvaAttribute()
|
public function getPartitaIvaAttribute()
|
||||||
{
|
{
|
||||||
return $this->piva;
|
return $this->piva;
|
||||||
|
@ -248,7 +239,7 @@ class Anagrafica extends Model
|
||||||
|
|
||||||
$ultimo = Generator::getPreviousFrom($maschera, 'an_anagrafiche', 'codice', [
|
$ultimo = Generator::getPreviousFrom($maschera, 'an_anagrafiche', 'codice', [
|
||||||
"codice != ''",
|
"codice != ''",
|
||||||
//'deleted_at IS NULL', // Rimozione per unicità del codice
|
'deleted_at IS NULL',
|
||||||
]);
|
]);
|
||||||
$codice = Generator::generate($maschera, $ultimo);
|
$codice = Generator::generate($maschera, $ultimo);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue