Fix per ottimizzazione database
This commit is contained in:
parent
2f8fb8077a
commit
e62d206c14
|
@ -26,7 +26,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Name'); ?>", "name": "name", "value": "$name$", "required": 1 ]}
|
{[ "type": "text", "label": "<?php echo tr('Name'); ?>", "name": "name", "value": "$title$", "required": 1 ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\Anagrafiche;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Provenienza extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
|
||||||
|
protected $table = 'an_provenienze';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function anagrafiche()
|
||||||
|
{
|
||||||
|
return $this->hasMany(Anagrafica::class, 'id_provenienza');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Provenienze clienti';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\Anagrafiche;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Relazione extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
|
||||||
|
protected $table = 'an_relazioni';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function anagrafiche()
|
||||||
|
{
|
||||||
|
return $this->hasMany(Anagrafica::class, 'idrelazione');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Relazioni';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\Anagrafiche;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Settore extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
|
||||||
|
protected $table = 'an_settori';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function anagrafiche()
|
||||||
|
{
|
||||||
|
return $this->hasMany(Anagrafica::class, 'id_settore');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Settori merceologici';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -57,6 +57,9 @@ switch (post('op')) {
|
||||||
$sottocategoria = Categoria::find(post('subcategoria'));
|
$sottocategoria = Categoria::find(post('subcategoria'));
|
||||||
$articolo = Articolo::build($codice, $categoria, $sottocategoria);
|
$articolo = Articolo::build($codice, $categoria, $sottocategoria);
|
||||||
|
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$articolo->name = $descrizione;
|
||||||
|
}
|
||||||
$articolo->barcode = post('barcode');
|
$articolo->barcode = post('barcode');
|
||||||
$articolo->threshold_qta = post('threshold_qta');
|
$articolo->threshold_qta = post('threshold_qta');
|
||||||
$articolo->coefficiente = post('coefficiente');
|
$articolo->coefficiente = post('coefficiente');
|
||||||
|
@ -121,6 +124,10 @@ switch (post('op')) {
|
||||||
]));
|
]));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$articolo->name = $descrizione;
|
||||||
|
}
|
||||||
|
|
||||||
$articolo->codice = post('codice', true);
|
$articolo->codice = post('codice', true);
|
||||||
$articolo->barcode = post('barcode');
|
$articolo->barcode = post('barcode');
|
||||||
$articolo->um = post('um');
|
$articolo->um = post('um');
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\Articoli;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class CausaleMovimento extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
|
||||||
|
protected $table = 'mg_causali_movimenti';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Causali movimenti';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -32,6 +32,9 @@ switch (filter('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro attributo.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro attributo.'));
|
||||||
} else {
|
} else {
|
||||||
$attributo = Attributo::build();
|
$attributo = Attributo::build();
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$attributo->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$attributo->setTranslation('title', $descrizione);
|
$attributo->setTranslation('title', $descrizione);
|
||||||
$attributo->setTranslation('title', $title);
|
$attributo->setTranslation('title', $title);
|
||||||
|
@ -49,6 +52,9 @@ switch (filter('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro attributo.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro attributo.'));
|
||||||
} else {
|
} else {
|
||||||
$attributo->setTranslation('title', $title);
|
$attributo->setTranslation('title', $title);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$attributo->name = $descrizione;
|
||||||
|
}
|
||||||
$attributo->save();
|
$attributo->save();
|
||||||
|
|
||||||
flash()->info(tr('Attributo aggiornato correttamente!'));
|
flash()->info(tr('Attributo aggiornato correttamente!'));
|
||||||
|
|
|
@ -18,35 +18,55 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
use Modules\DDT\AspettoBeni;
|
||||||
|
|
||||||
switch (post('op')) {
|
switch (post('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$descrizione = post('descrizione');
|
$descrizione = post('descrizione');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `dt_aspettobeni` LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni`.`id`=`dt_aspettobeni_lang`.`id_record` AND `dt_aspettobeni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione).' AND `dt_aspettobeni`.`id`!='.prepare($id_record)))) {
|
if (isset($descrizione)) {
|
||||||
$dbo->query('UPDATE `dt_aspettobeni_lang` SET `title`='.prepare($descrizione).' WHERE `id_record`='.prepare($id_record)).' AND `id_lang`='.prepare(Models\Locale::getDefault()->id);
|
$aspetto_new = AspettoBeni::where('id', '=', (new AspettoBeni())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
flash()->info(tr('Salvataggio completato.'));
|
if (empty($aspetto_new)) {
|
||||||
|
$aspetto->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$aspetto->name = $descrizione;
|
||||||
|
}
|
||||||
|
$aspetto->save();
|
||||||
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente un aspetto beni con questa descrizione."));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente un aspetto beni con questa descrizione."));
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
$descrizione = post('descrizione');
|
$descrizione = post('descrizione');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `dt_aspettobeni` LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni`.`id`=`dt_aspettobeni_lang`.`id_record` AND `dt_aspettobeni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione)))) {
|
if (isset($descrizione)) {
|
||||||
$dbo->query('INSERT INTO `dt_aspettobeni` (`created_at`) VALUES (NOW())');
|
if (empty(AspettoBeni::where('id', '=', (new AspettoBeni())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
$id_record = $dbo->lastInsertedID();
|
$aspetto = AspettoBeni::build();
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$aspetto->name = $descrizione;
|
||||||
|
}
|
||||||
|
$aspetto->save();
|
||||||
|
|
||||||
|
$id_record = $dbo->lastInsertedID();
|
||||||
|
$aspetto->setTranslation('title', $descrizione);
|
||||||
|
$aspetto->save();
|
||||||
|
|
||||||
$dbo->query('INSERT INTO `dt_aspettobeni_lang` (`title`, `id_record`, `id_lang`) VALUES ('.prepare($descrizione).', '.prepare($id_record).', '.prepare(Models\Locale::getDefault()->id).')');
|
if (isAjaxRequest()) {
|
||||||
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
|
}
|
||||||
|
|
||||||
if (isAjaxRequest()) {
|
flash()->info(tr('Aggiunto nuovo Aspetto beni.'));
|
||||||
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
} else {
|
||||||
|
flash()->error(tr("E' già presente un aspetto beni con questa descrizione."));
|
||||||
}
|
}
|
||||||
|
|
||||||
flash()->info(tr('Aggiunto nuovo Aspetto beni.'));
|
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente un aspetto beni con questa descrizione."));
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -34,7 +34,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -16,9 +16,12 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
use Modules\DDT\AspettoBeni;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `dt_aspettobeni` LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni`.`id`=`dt_aspettobeni_lang`.`id_record` AND `dt_aspettobeni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `dt_aspettobeni`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `dt_aspettobeni` LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni`.`id`=`dt_aspettobeni_lang`.`id_record` AND `dt_aspettobeni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `dt_aspettobeni`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$aspetto = AspettoBeni::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,6 +32,9 @@ switch (filter('op')) {
|
||||||
$categoria->colore = $colore;
|
$categoria->colore = $colore;
|
||||||
$categoria->parent = $id_original ?: null;
|
$categoria->parent = $id_original ?: null;
|
||||||
$categoria->setTranslation('title', $nome);
|
$categoria->setTranslation('title', $nome);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$categoria->name = $descrizione;
|
||||||
|
}
|
||||||
$categoria->save();
|
$categoria->save();
|
||||||
|
|
||||||
flash()->info(tr('Salvataggio completato!'));
|
flash()->info(tr('Salvataggio completato!'));
|
||||||
|
@ -66,6 +69,9 @@ switch (filter('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altra categoria.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altra categoria.'));
|
||||||
} else {
|
} else {
|
||||||
$categoria = Categoria::build($nota, $colore);
|
$categoria = Categoria::build($nota, $colore);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$categoria->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$categoria->parent = $id_original;
|
$categoria->parent = $id_original;
|
||||||
$categoria->setTranslation('title', $nome);
|
$categoria->setTranslation('title', $nome);
|
||||||
|
|
|
@ -40,7 +40,7 @@ if (isset($id_original)) {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
|
|
|
@ -33,7 +33,7 @@ use Models\Module;
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
|
|
|
@ -32,6 +32,9 @@ switch (post('op')) {
|
||||||
]));
|
]));
|
||||||
} else {
|
} else {
|
||||||
$categoria->setTranslation('title', $descrizione);
|
$categoria->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$categoria->name = $descrizione;
|
||||||
|
}
|
||||||
$categoria->save();
|
$categoria->save();
|
||||||
|
|
||||||
$categoria->syncPermessi(post('permessi') ?: []);
|
$categoria->syncPermessi(post('permessi') ?: []);
|
||||||
|
@ -51,6 +54,9 @@ switch (post('op')) {
|
||||||
]));
|
]));
|
||||||
} else {
|
} else {
|
||||||
$categoria = Categoria::build();
|
$categoria = Categoria::build();
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$categoria->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$categoria->setTranslation('title', $descrizione);
|
$categoria->setTranslation('title', $descrizione);
|
||||||
$categoria->save();
|
$categoria->save();
|
||||||
|
|
|
@ -33,7 +33,7 @@ if ($record['doc_associati'] > 0) {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -34,7 +34,7 @@ use Models\Module;
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
|
|
|
@ -18,29 +18,24 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
use Modules\DDT\Causale;
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
$predefined = post('predefined');
|
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `dt_causalet` LEFT JOIN `dt_causalet_lang` ON (`dt_causalet`.`id` = `dt_causalet_lang`.`id_record` AND `dt_causalet_lang`.`id_lang` ='.prepare(Models\Locale::getDefault()->id).') WHERE `deleted_at` IS NULL AND `title`='.prepare($descrizione).' AND `dt_causalet`.`id`!='.prepare($id_record)))) {
|
$causale_new = Causale::where('id', '=', (new Causale())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
if (!empty($predefined)) {
|
if (empty($causale_new)) {
|
||||||
$dbo->query('UPDATE dt_causalet SET predefined = 0');
|
$causale->setTranslation('title', $descrizione);
|
||||||
}
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$causale->name = $descrizione;
|
||||||
$dbo->update('dt_causalet', [
|
}
|
||||||
'is_importabile' => filter('is_importabile'),
|
$causale->predefined = post('predefined');
|
||||||
'reversed' => filter('reversed'),
|
$causale->is_importabile = filter('is_importabile');
|
||||||
'predefined' => $predefined,
|
$causale->reversed = filter('reversed');
|
||||||
'is_rientrabile' => filter('is_rientrabile'),
|
$causale->is_rientrabile = filter('is_rientrabile');
|
||||||
], ['id' => $id_record]);
|
$causale->save();
|
||||||
|
|
||||||
$dbo->update('dt_causalet_lang', [
|
|
||||||
'name' => $descrizione,
|
|
||||||
], ['id_record' => $id_record, 'id_lang' => Models\Locale::getDefault()->id]);
|
|
||||||
|
|
||||||
flash()->info(tr('Salvataggio completato!'));
|
flash()->info(tr('Salvataggio completato!'));
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una causale di trasporto con la stessa descrizione"));
|
flash()->error(tr("E' già presente una causale di trasporto con la stessa descrizione"));
|
||||||
|
@ -55,16 +50,16 @@ switch (filter('op')) {
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `dt_causalet` LEFT JOIN `dt_causalet_lang` ON (`dt_causalet`.`id` = `dt_causalet_lang`.`id_record` AND `dt_causalet_lang`.`id_lang` ='.prepare(Models\Locale::getDefault()->id).') WHERE `deleted_at` IS NULL AND `title`='.prepare($descrizione)))) {
|
if (empty(Causale::where('id', '=', (new Causale())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
$dbo->insert('dt_causalet', [
|
$causale = Causale::build();
|
||||||
'is_importabile' => 1,
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
]);
|
$causale->name = $descrizione;
|
||||||
|
}
|
||||||
|
$causale->save();
|
||||||
|
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$dbo->insert('dt_causalet_lang', [
|
$causale->setTranslation('title', $descrizione);
|
||||||
'name' => $descrizione,
|
$causale->save();
|
||||||
'id_record' => $id_record,
|
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
|
||||||
]);
|
|
||||||
|
|
||||||
if (isAjaxRequest()) {
|
if (isAjaxRequest()) {
|
||||||
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
|
|
|
@ -28,7 +28,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$", "charcounter": 1, "maxlength": "100" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$", "charcounter": 1, "maxlength": "100" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -17,8 +17,12 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\DDT\Causale;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `dt_causalet` LEFT JOIN `dt_causalet_lang` ON (`dt_causalet`.`id` = `dt_causalet_lang`.`id_record` AND `dt_causalet_lang`.`id_lang` ='.prepare(Models\Locale::getDefault()->id).') WHERE `dt_causalet`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `dt_causalet` LEFT JOIN `dt_causalet_lang` ON (`dt_causalet`.`id` = `dt_causalet_lang`.`id_record` AND `dt_causalet_lang`.`id_lang` ='.prepare(Models\Locale::getDefault()->id).') WHERE `dt_causalet`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$causale = Causale::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,16 +19,25 @@
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
|
use Modules\Articoli\CausaleMovimento as Causale;
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
if (!empty($id_record)) {
|
$nome = post('nome');
|
||||||
$database->update('mg_causali_movimenti', [
|
$descrizione = post('descrizione');
|
||||||
'tipo_movimento' => post('tipo_movimento'),
|
if (isset($descrizione)) {
|
||||||
], ['id' => $id_record]);
|
$causale_new = Causale::where('id', '=', (new Causale())->getByField('title', $nome))->where('id', '!=', $id_record)->first();
|
||||||
$database->update('mg_causali_movimenti_lang', [
|
if (empty($causale_new)) {
|
||||||
'name' => post('nome'),
|
$causale->tipo_movimento = post('tipo_movimento');
|
||||||
'description' => post('descrizione'),
|
$causale->setTranslation('title', $nome);
|
||||||
], ['id_record' => $id_record, 'id_lang' => Models\Locale::getDefault()->id]);
|
$causale->setTranslation('description', $descrizione);
|
||||||
|
$causale->save();
|
||||||
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente una causale con nome _NAME_.", [
|
||||||
|
'_NAME_' => $descrizione,
|
||||||
|
]));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
}
|
}
|
||||||
|
@ -36,16 +45,28 @@ switch (filter('op')) {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
$database->insert('mg_causali_movimenti', [
|
$descrizione = post('descrizione');
|
||||||
'tipo_movimento' => post('tipo_movimento'),
|
if (empty(Causale::where('id', '=', (new Causale())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
]);
|
$causale = Causale::build();
|
||||||
$id_record = $database->lastInsertedID();
|
$causale->tipo_movimento = post('tipo_movimento');
|
||||||
$database->insert('mg_causali_movimenti_lang', [
|
$causale->save();
|
||||||
'name' => post('nome'),
|
$id_record = $dbo->lastInsertedID();
|
||||||
'description' => post('descrizione'),
|
$causale->setTranslation('title', post('nome'));
|
||||||
'id_record' => $id_record,
|
$causale->setTranslation('description', $descrizione);
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
$causale->save();
|
||||||
]);
|
|
||||||
|
if (isAjaxRequest()) {
|
||||||
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
|
}
|
||||||
|
|
||||||
|
flash()->info(tr('Aggiunta nuova causale con nome _NAME_', [
|
||||||
|
'_NAME_' => $descrizione,
|
||||||
|
]));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente una causale con nome _NAME_.", [
|
||||||
|
'_NAME_' => $descrizione,
|
||||||
|
]));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'delete':
|
case 'delete':
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -19,6 +19,10 @@
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
|
use Modules\Articoli\CausaleMovimento;
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `mg_causali_movimenti` LEFT JOIN `mg_causali_movimenti_lang` ON (`mg_causali_movimenti`.`id` = `mg_causali_movimenti_lang`.`id_record` AND `mg_causali_movimenti_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `mg_causali_movimenti`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `mg_causali_movimenti` LEFT JOIN `mg_causali_movimenti_lang` ON (`mg_causali_movimenti`.`id` = `mg_causali_movimenti_lang`.`id_record` AND `mg_causali_movimenti_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `mg_causali_movimenti`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$causale = CausaleMovimento::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@ echo '
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "value": "$name$", "required": 1 ]}
|
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "value": "$title$", "required": 1 ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -33,7 +33,7 @@ echo '
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "value": "$name$", "required": 1 ]}
|
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "value": "$title$", "required": 1 ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -17,6 +17,9 @@ switch (filter('op')) {
|
||||||
} else {
|
} else {
|
||||||
if (empty($combinazione)) {
|
if (empty($combinazione)) {
|
||||||
$combinazione = Combinazione::build();
|
$combinazione = Combinazione::build();
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$combinazione->name = $nome;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
}
|
}
|
||||||
$combinazione->setTranslation('title', $nome);
|
$combinazione->setTranslation('title', $nome);
|
||||||
|
|
|
@ -37,7 +37,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\DDT;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class AspettoBeni extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
protected $table = 'dt_aspettobeni';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function ddt()
|
||||||
|
{
|
||||||
|
return $this->hasMany(DDT::class, 'idaspettobeni');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Aspetto beni';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,50 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\DDT;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Causale extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
protected $table = 'dt_causalet';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function ddt()
|
||||||
|
{
|
||||||
|
return $this->hasMany(DDT::class, 'idcausalet');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Causali trasporto';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,50 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\DDT;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Porto extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
protected $table = 'dt_porto';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function ddt()
|
||||||
|
{
|
||||||
|
return $this->hasMany(DDT::class, 'idporto');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Porto';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,50 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\DDT;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Spedizione extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
protected $table = 'dt_spedizione';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function ddt()
|
||||||
|
{
|
||||||
|
return $this->hasMany(DDT::class, 'idspedizione');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Tipi di spedizione';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -29,6 +29,9 @@ switch (post('op')) {
|
||||||
$subject = post('subject');
|
$subject = post('subject');
|
||||||
|
|
||||||
$template = Template::build($module, $id_account);
|
$template = Template::build($module, $id_account);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$template->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$template->setTranslation('title', $name);
|
$template->setTranslation('title', $name);
|
||||||
$template->setTranslation('subject', $subject);
|
$template->setTranslation('subject', $subject);
|
||||||
|
@ -40,6 +43,9 @@ switch (post('op')) {
|
||||||
|
|
||||||
case 'update':
|
case 'update':
|
||||||
$template->setTranslation('title', post('name'));
|
$template->setTranslation('title', post('name'));
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$template->name = $descrizione;
|
||||||
|
}
|
||||||
$template->id_account = post('smtp');
|
$template->id_account = post('smtp');
|
||||||
$template->icon = post('icon');
|
$template->icon = post('icon');
|
||||||
$template->tipo_reply_to = post('tipo_reply_to');
|
$template->tipo_reply_to = post('tipo_reply_to');
|
||||||
|
|
|
@ -41,7 +41,7 @@ if (!$record['predefined']) {
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "value": "$name$", "required": 1, "extra": "<?php echo $attr; ?>" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "value": "$title$", "required": 1, "extra": "<?php echo $attr; ?>" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
|
|
|
@ -18,73 +18,74 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
use Modules\TipiIntervento\FasciaOraria;
|
||||||
|
|
||||||
switch (post('op')) {
|
switch (post('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$nome = post('nome');
|
$descrizione = post('nome');
|
||||||
$giorni = (array) post('giorni');
|
$giorni = (array) post('giorni');
|
||||||
$ora_inizio = post('ora_inizio');
|
$ora_inizio = post('ora_inizio');
|
||||||
$ora_fine = post('ora_fine');
|
$ora_fine = post('ora_fine');
|
||||||
$include_bank_holidays = post('include_bank_holidays');
|
$include_bank_holidays = post('include_bank_holidays');
|
||||||
$is_predefined = post('is_predefined');
|
$is_predefined = post('is_predefined');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT `in_fasceorarie`.`id` FROM `in_fasceorarie` LEFT JOIN `in_fasceorarie_lang` ON (`in_fasceorarie_lang`.`id_record` = `in_fasceorarie`.`id` AND `in_fasceorarie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($nome).' AND `in_fasceorarie`.`id`!='.prepare($id_record)))) {
|
if (isset($descrizione)) {
|
||||||
if (!empty($is_predefined)) {
|
$fascia_oraria_new = FasciaOraria::where('id', '=', (new FasciaOraria())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
$dbo->query('UPDATE `in_fasceorarie` SET `is_predefined` = 0');
|
if (empty($fascia_oraria_new)) {
|
||||||
|
if (!empty($is_predefined)) {
|
||||||
|
$dbo->query('UPDATE `in_fasceorarie` SET `predefined` = 0');
|
||||||
|
}
|
||||||
|
$fascia_oraria->setTranslation('title', $descrizione);
|
||||||
|
$fascia_oraria->giorni = $giorni;
|
||||||
|
$fascia_oraria->ora_inizio = $ora_inizio;
|
||||||
|
$fascia_oraria->ora_fine = $ora_fine;
|
||||||
|
$fascia_oraria->include_bank_holidays = $include_bank_holidays;
|
||||||
|
$fascia_oraria->is_predefined = $is_predefined;
|
||||||
|
$fascia_oraria->save();
|
||||||
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente una fascia_oraria _NAME_.", [
|
||||||
|
'_NAME_' => $descrizione,
|
||||||
|
]));
|
||||||
}
|
}
|
||||||
|
|
||||||
$dbo->update('in_fasceorarie', [
|
|
||||||
'giorni' => $giorni ? implode(',', $giorni) : null,
|
|
||||||
'ora_inizio' => $ora_inizio,
|
|
||||||
'ora_fine' => $ora_fine,
|
|
||||||
'include_bank_holidays' => $include_bank_holidays,
|
|
||||||
'is_predefined' => $is_predefined,
|
|
||||||
], ['id' => $id_record]);
|
|
||||||
|
|
||||||
$dbo->update('in_fasceorarie_lang', [
|
|
||||||
'name' => $nome,
|
|
||||||
], ['id_record' => $id_record, 'id_lang' => Models\Locale::getDefault()->id]);
|
|
||||||
|
|
||||||
flash()->info(tr('Salvataggio completato.'));
|
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una _TYPE_ con lo stesso nome", [
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
'_TYPE_' => 'fascia oraria',
|
|
||||||
]));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
$nome = post('nome');
|
$descrizione = post('nome');
|
||||||
$ora_inizio = post('ora_inizio');
|
$ora_inizio = post('ora_inizio');
|
||||||
$ora_fine = post('ora_fine');
|
$ora_fine = post('ora_fine');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT `in_fasceorarie`.`id` FROM `in_fasceorarie` LEFT JOIN `in_fasceorarie_lang` ON (`in_fasceorarie_lang`.`id_record` = `in_fasceorarie`.`id` AND `in_fasceorarie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($nome)))) {
|
if (isset($descrizione)) {
|
||||||
$dbo->insert('in_fasceorarie', [
|
if (empty(FasciaOraria::where('id', '=', (new FasciaOraria())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
'ora_inizio' => $ora_inizio,
|
$fascia_oraria = FasciaOraria::build();
|
||||||
'ora_fine' => $ora_fine,
|
|
||||||
]);
|
|
||||||
$id_record = $dbo->lastInsertedID();
|
|
||||||
$dbo->insert('in_fasceorarie_lang', [
|
|
||||||
'name' => $nome,
|
|
||||||
'id_record' => $id_record,
|
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
|
||||||
]);
|
|
||||||
|
|
||||||
$tipi_intervento = $dbo->select('in_tipiintervento', '*');
|
$fascia_oraria->ora_inizio = $ora_inizio;
|
||||||
foreach ($tipi_intervento as $tipo_intervento) {
|
$fascia_oraria->ora_fine = $ora_fine;
|
||||||
$dbo->insert('in_fasceorarie_tipiintervento', [
|
$fascia_oraria->save();
|
||||||
'idfasciaoraria' => $id_record,
|
|
||||||
'idtipointervento' => $tipo_intervento['id'],
|
$id_record = $dbo->lastInsertedID();
|
||||||
'costo_orario' => $tipo_intervento['costo_orario'],
|
$fascia_oraria->setTranslation('title', $descrizione);
|
||||||
'costo_km' => $tipo_intervento['costo_km'],
|
$fascia_oraria->save();
|
||||||
'costo_diritto_chiamata' => $tipo_intervento['costo_diritto_chiamata'],
|
|
||||||
'costo_orario_tecnico' => $tipo_intervento['costo_orario_tecnico'],
|
$tipi_intervento = $dbo->select('in_tipiintervento', '*');
|
||||||
'costo_km_tecnico' => $tipo_intervento['costo_km_tecnico'],
|
foreach ($tipi_intervento as $tipo_intervento) {
|
||||||
'costo_diritto_chiamata_tecnico' => $tipo_intervento['costo_km_tecnico'],
|
$dbo->insert('in_fasceorarie_tipiintervento', [
|
||||||
]);
|
'idfasciaoraria' => $id_record,
|
||||||
|
'idtipointervento' => $tipo_intervento['id'],
|
||||||
|
'costo_orario' => $tipo_intervento['costo_orario'],
|
||||||
|
'costo_km' => $tipo_intervento['costo_km'],
|
||||||
|
'costo_diritto_chiamata' => $tipo_intervento['costo_diritto_chiamata'],
|
||||||
|
'costo_orario_tecnico' => $tipo_intervento['costo_orario_tecnico'],
|
||||||
|
'costo_km_tecnico' => $tipo_intervento['costo_km_tecnico'],
|
||||||
|
'costo_diritto_chiamata_tecnico' => $tipo_intervento['costo_km_tecnico'],
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isAjaxRequest()) {
|
if (isAjaxRequest()) {
|
||||||
echo json_encode(['id' => $id_record, 'text' => $nome]);
|
echo json_encode(['id' => $id_record, 'text' => $nome]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ use Modules\Pagamenti\Pagamento;
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
|
|
|
@ -19,6 +19,10 @@
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
|
use Modules\TipiIntervento\FasciaOraria;
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `in_fasceorarie` LEFT JOIN `in_fasceorarie_lang` ON (`in_fasceorarie_lang`.`id_record` = `in_fasceorarie`.`id` AND `in_fasceorarie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `in_fasceorarie`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `in_fasceorarie` LEFT JOIN `in_fasceorarie_lang` ON (`in_fasceorarie_lang`.`id_record` = `in_fasceorarie`.`id` AND `in_fasceorarie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `in_fasceorarie`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$fascia_oraria = FasciaOraria::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ echo '
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "text", "label": "'.tr('Classe').'", "name": "class", "required": 1, "value": "$class$" ]}
|
{[ "type": "text", "label": "'.tr('Classe').'", "name": "class", "required": 1, "value": "$class$" ]}
|
||||||
|
|
|
@ -37,8 +37,6 @@ switch ($op) {
|
||||||
'idanagrafica' => post('idanagrafica'),
|
'idanagrafica' => post('idanagrafica'),
|
||||||
'nome' => post('nome'),
|
'nome' => post('nome'),
|
||||||
'matricola' => $matricola,
|
'matricola' => $matricola,
|
||||||
'id_marca' => post('id_marca'),
|
|
||||||
'modello' => post('modello'),
|
|
||||||
'id_categoria' => post('id_categoria') ?: null,
|
'id_categoria' => post('id_categoria') ?: null,
|
||||||
'id_sottocategoria' => post('id_sottocategoria') ?: null,
|
'id_sottocategoria' => post('id_sottocategoria') ?: null,
|
||||||
'descrizione' => post('descrizione'),
|
'descrizione' => post('descrizione'),
|
||||||
|
|
|
@ -79,10 +79,10 @@ if (!empty($record['immagine'])) {
|
||||||
</div>
|
</div>
|
||||||
<div class ="row">
|
<div class ="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "select", "label": "<?php echo tr('Marca'); ?>", "name": "id_marca", "value": "$id_marca$", "ajax-source": "marca", "icon-after": "add|<?php echo $id_modulo_marca_impianti; ?>" ]}
|
<!--{[ "type": "select", "label": "<?php echo tr('Marca'); ?>", "name": "id_marca", "value": "$id_marca$", "ajax-source": "marca", "icon-after": "add|<?php echo $id_modulo_marca_impianti; ?>" ]}-->
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Modello'); ?>", "name": "modello", "value": "$modello$" ]}
|
<!--{[ "type": "text", "label": "<?php echo tr('Modello'); ?>", "name": "modello", "value": "$modello$" ]}-->
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Proprietario'); ?>", "name": "proprietario", "value": "$proprietario$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Proprietario'); ?>", "name": "proprietario", "value": "$proprietario$" ]}
|
||||||
|
|
|
@ -27,7 +27,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -41,6 +41,9 @@ switch (filter('op')) {
|
||||||
$iva->codice_natura_fe = $codice_natura_fe;
|
$iva->codice_natura_fe = $codice_natura_fe;
|
||||||
$iva->esigibilita = $esigibilita;
|
$iva->esigibilita = $esigibilita;
|
||||||
$iva->setTranslation('title', $descrizione);
|
$iva->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$iva->name = $descrizione;
|
||||||
|
}
|
||||||
$iva->save();
|
$iva->save();
|
||||||
|
|
||||||
// Messaggio di avvertenza
|
// Messaggio di avvertenza
|
||||||
|
@ -72,6 +75,9 @@ switch (filter('op')) {
|
||||||
$iva = Aliquota::build($esente, $percentuale, $indetraibile, $dicitura, $codice, $codice_natura_fe, $esigibilita);
|
$iva = Aliquota::build($esente, $percentuale, $indetraibile, $dicitura, $codice, $codice_natura_fe, $esigibilita);
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$iva->setTranslation('title', $descrizione);
|
$iva->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$iva->name = $descrizione;
|
||||||
|
}
|
||||||
$iva->save();
|
$iva->save();
|
||||||
|
|
||||||
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [
|
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [
|
||||||
|
|
|
@ -64,7 +64,7 @@ if ($res) {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -33,6 +33,9 @@ switch (filter('op')) {
|
||||||
flash()->error(tr('Esiste già una lista con questo nome.'));
|
flash()->error(tr('Esiste già una lista con questo nome.'));
|
||||||
} else {
|
} else {
|
||||||
$lista = Lista::build($name);
|
$lista = Lista::build($name);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$lista->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $lista->id;
|
$id_record = $lista->id;
|
||||||
$lista->setTranslation('title', $name);
|
$lista->setTranslation('title', $name);
|
||||||
$lista->save();
|
$lista->save();
|
||||||
|
@ -56,6 +59,9 @@ switch (filter('op')) {
|
||||||
if (!empty($lista_new) && $lista_new->id != $id_record) {
|
if (!empty($lista_new) && $lista_new->id != $id_record) {
|
||||||
flash()->error(tr('Esiste già una lista con questo nome.'));
|
flash()->error(tr('Esiste già una lista con questo nome.'));
|
||||||
} else {
|
} else {
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$lista->name = $descrizione;
|
||||||
|
}
|
||||||
$lista->setTranslation('title', $name);
|
$lista->setTranslation('title', $name);
|
||||||
$lista->setTranslation('description', $description);
|
$lista->setTranslation('description', $description);
|
||||||
$lista->query = $query;
|
$lista->query = $query;
|
||||||
|
|
|
@ -37,7 +37,7 @@ echo '
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -63,7 +63,7 @@ echo '
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -46,25 +46,20 @@ switch (filter('op')) {
|
||||||
$giorno = -post('giorno')[$key] - 1;
|
$giorno = -post('giorno')[$key] - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($id)) {
|
if (empty($id)) {
|
||||||
$pagamento->setTranslation('title', $descrizione);
|
|
||||||
$pagamento->num_giorni = post('distanza')[$key];
|
|
||||||
$pagamento->giorno = $giorno;
|
|
||||||
$pagamento->prc = post('percentuale')[$key];
|
|
||||||
$pagamento->idconto_vendite = post('idconto_vendite') ?: null;
|
|
||||||
$pagamento->idconto_acquisti = post('idconto_acquisti') ?: null;
|
|
||||||
$pagamento->codice_modalita_pagamento_fe = post('codice_modalita_pagamento_fe');
|
|
||||||
$pagamento->save();
|
|
||||||
} else {
|
|
||||||
$pagamento = Pagamento::build(post('codice_modalita_pagamento_fe'));
|
$pagamento = Pagamento::build(post('codice_modalita_pagamento_fe'));
|
||||||
$pagamento->num_giorni = post('distanza')[$key];
|
|
||||||
$pagamento->giorno = $giorno;
|
|
||||||
$pagamento->prc = post('percentuale')[$key];
|
|
||||||
$pagamento->idconto_vendite = post('idconto_vendite') ?: null;
|
|
||||||
$pagamento->idconto_acquisti = post('idconto_acquisti') ?: null;
|
|
||||||
$pagamento->setTranslation('title', $descrizione);
|
|
||||||
$pagamento->save();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$pagamento->name = $descrizione;
|
||||||
|
}
|
||||||
|
$pagamento->num_giorni = post('distanza')[$key];
|
||||||
|
$pagamento->giorno = $giorno;
|
||||||
|
$pagamento->prc = post('percentuale')[$key];
|
||||||
|
$pagamento->idconto_vendite = post('idconto_vendite') ?: null;
|
||||||
|
$pagamento->idconto_acquisti = post('idconto_acquisti') ?: null;
|
||||||
|
$pagamento->setTranslation('title', $descrizione);
|
||||||
|
$pagamento->save();
|
||||||
}
|
}
|
||||||
|
|
||||||
flash()->info(tr('Salvataggio completato!'));
|
flash()->info(tr('Salvataggio completato!'));
|
||||||
|
@ -85,6 +80,9 @@ switch (filter('op')) {
|
||||||
flash()->error(tr('Esiste già un metodo di pagamento con questo nome!'));
|
flash()->error(tr('Esiste già un metodo di pagamento con questo nome!'));
|
||||||
} else {
|
} else {
|
||||||
$pagamento = Pagamento::build($codice_modalita_pagamento_fe);
|
$pagamento = Pagamento::build($codice_modalita_pagamento_fe);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$pagamento->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$pagamento->setTranslation('title', $descrizione);
|
$pagamento->setTranslation('title', $descrizione);
|
||||||
$pagamento->save();
|
$pagamento->save();
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "value": "$name$", "required": 1 ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "value": "$title$", "required": 1 ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
|
|
|
@ -56,7 +56,7 @@ class Pagamento extends Model
|
||||||
|
|
||||||
public function calcola($importo, $data, $id_anagrafica)
|
public function calcola($importo, $data, $id_anagrafica)
|
||||||
{
|
{
|
||||||
$rate = PagamentoLang::where('name', '=', $this->getTranslation('title'))->get()->sortBy('num_giorni')->pluck('id')->toArray();
|
$rate = PagamentoLang::where('title', '=', $this->getTranslation('title'))->get()->sortBy('num_giorni')->pluck('id')->toArray();
|
||||||
$number = count($rate);
|
$number = count($rate);
|
||||||
|
|
||||||
$totale = 0.0;
|
$totale = 0.0;
|
||||||
|
|
|
@ -18,53 +18,62 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
use Modules\DDT\Porto;
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
$predefined = post('predefined');
|
$predefined = post('predefined');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione).' AND `dt_porto`.`id`!='.prepare($id_record)) == 0)) {
|
if (isset($descrizione)) {
|
||||||
if (!empty($predefined)) {
|
$porto_new = Porto::where('id', '=', (new Porto())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
$dbo->query('UPDATE `dt_porto` SET `predefined` = 0');
|
if (empty($porto_new)) {
|
||||||
|
$porto->setTranslation('title', $descrizione);
|
||||||
|
if (!empty($predefined)) {
|
||||||
|
$dbo->query('UPDATE `dt_porto` SET `predefined` = 0');
|
||||||
|
}
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$porto->name = $descrizione;
|
||||||
|
}
|
||||||
|
$porto->predefined = $predefined;
|
||||||
|
$porto->save();
|
||||||
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente un porto con questo nome."));
|
||||||
}
|
}
|
||||||
|
|
||||||
$dbo->update('dt_porto', [
|
|
||||||
'predefined' => $predefined,
|
|
||||||
], ['id' => $id_record]);
|
|
||||||
|
|
||||||
$dbo->update('dt_porto_lang', [
|
|
||||||
'name' => $descrizione,
|
|
||||||
], ['id_record' => $id_record, 'id_lang' => Models\Locale::getDefault()->id]);
|
|
||||||
|
|
||||||
flash()->info(tr('Salvataggio completato!'));
|
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente un Porto con questa descrizione"));
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT `dt_porto`.`id` FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = '.Models\Locale::getDefault()->id.') WHERE `title`='.prepare($descrizione)))) {
|
if (isset($descrizione)) {
|
||||||
$dbo->insert('dt_porto', [
|
if (empty(Porto::where('id', '=', (new Porto())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
'created_at' => 'NOW()',
|
$porto = Porto::build();
|
||||||
]);
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
$id_record = $dbo->lastInsertedID();
|
$porto->name = $descrizione;
|
||||||
|
}
|
||||||
|
$porto->save();
|
||||||
|
|
||||||
|
$id_record = $dbo->lastInsertedID();
|
||||||
|
$porto->setTranslation('title', $descrizione);
|
||||||
|
$porto->save();
|
||||||
|
|
||||||
$dbo->insert('dt_porto_lang', [
|
if (isAjaxRequest()) {
|
||||||
'name' => $descrizione,
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
'id_record' => $id_record,
|
}
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
|
||||||
]);
|
|
||||||
|
|
||||||
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [
|
flash()->info(tr('Aggiunta nuova porto _NAME_', [
|
||||||
'_TYPE_' => 'porto',
|
'_NAME_' => $descrizione,
|
||||||
]));
|
]));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente un porto con questo nome."));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stessa descrizione", [
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
'_TYPE_' => 'porto',
|
|
||||||
]));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -17,8 +17,12 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\DDT\Porto;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `dt_porto`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `dt_porto`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$porto = Porto::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,15 +19,22 @@
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
|
use Modules\Anagrafiche\Provenienza;
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
$colore = filter('colore');
|
$colore = filter('colore');
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
if (empty($dbo->fetchArray('SELECT `an_provenienze`.`id` FROM `an_provenienze` LEFT JOIN `an_provenienze_lang` ON (`an_provenienze`.`id` = `an_provenienze_lang`.`id_record` AND `an_provenienze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione).' AND `an_provenienze`.`id`!='.prepare($id_record)))) {
|
$provenienza_new = Provenienza::where('id', '=', (new Provenienza())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
$dbo->query('UPDATE `an_provenienze_lang` SET `title`='.prepare($descrizione).' WHERE `id_record` = '.prepare($id_record));
|
if (empty($provenienza_new)) {
|
||||||
$dbo->query('UPDATE `an_provenienze` SET `colore`='.prepare($colore).' WHERE `id`='.prepare($id_record));
|
$provenienza->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$provenienza->name = $descrizione;
|
||||||
|
}
|
||||||
|
$provenienza->colore = $colore;
|
||||||
|
$provenienza->save();
|
||||||
flash()->info(tr('Salvataggio completato.'));
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una provenienza _NAME_.", [
|
flash()->error(tr("E' già presente una provenienza _NAME_.", [
|
||||||
|
@ -45,10 +52,17 @@ switch (filter('op')) {
|
||||||
$colore = filter('colore');
|
$colore = filter('colore');
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
if (empty($dbo->fetchArray('SELECT `an_provenienze`.`id` FROM `an_provenienze` LEFT JOIN `an_provenienze_lang` ON (`an_provenienze`.`id` = `an_provenienze_lang`.`id_record` AND `an_provenienze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione)))) {
|
if (empty(Provenienza::where('id', '=', (new Provenienza())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
$dbo->query('INSERT INTO `an_provenienze` (`colore`) VALUES ('.prepare($colore).')');
|
$provenienza = Provenienza::build();
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$provenienza->name = $descrizione;
|
||||||
|
}
|
||||||
|
$provenienza->colore = $colore;
|
||||||
|
$provenienza->save();
|
||||||
|
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$dbo->query('INSERT INTO `an_provenienze_lang` (`title`, `id_record`, `id_lang`) VALUES ('.prepare($descrizione).', '.prepare($id_record).', '.prepare(Models\Locale::getDefault()->id).')');
|
$provenienza->setTranslation('title', $descrizione);
|
||||||
|
$provenienza->save();
|
||||||
|
|
||||||
if (isAjaxRequest()) {
|
if (isAjaxRequest()) {
|
||||||
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -17,8 +17,12 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\Anagrafiche\Provenienza;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `an_provenienze` LEFT JOIN `an_provenienze_lang` ON (`an_provenienze`.`id`=`an_provenienze_lang`.`id_record` AND `an_provenienze_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_provenienze`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `an_provenienze` LEFT JOIN `an_provenienze_lang` ON (`an_provenienze`.`id`=`an_provenienze_lang`.`id_record` AND `an_provenienze_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_provenienze`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$provenienza = Provenienza::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,6 +17,8 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\Anagrafiche\Relazione;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
|
@ -26,20 +28,24 @@ switch (filter('op')) {
|
||||||
$is_bloccata = filter('is_bloccata');
|
$is_bloccata = filter('is_bloccata');
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
$esistente = $dbo->fetchArray('SELECT `an_relazioni`.`id` FROM `an_relazioni` LEFT JOIN `an_relazioni_lang` ON (`an_relazioni`.`id`=`an_relazioni_lang`.`id_record` AND `an_relazioni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_relazioni_lang`.`title`='.prepare($descrizione).' AND `an_relazioni`.`id` != '.prepare($id_record));
|
$relazione_new = Relazione::where('id', '=', (new Relazione())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
if (empty($esistente)) {
|
if (empty($relazione_new)) {
|
||||||
$dbo->query('UPDATE `an_relazioni` SET `colore`='.prepare($colore).', `is_bloccata`='.prepare($is_bloccata).' WHERE `id`='.prepare($id_record));
|
$relazione->setTranslation('title', $descrizione);
|
||||||
$dbo->query('UPDATE `an_relazioni_lang` SET `title`='.prepare($descrizione).' WHERE `id_record`='.prepare($id_record));
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$relazione->name = $descrizione;
|
||||||
|
}
|
||||||
|
$relazione->colore = $colore;
|
||||||
|
$relazione->is_bloccata = $is_bloccata;
|
||||||
|
$relazione->save();
|
||||||
flash()->info(tr('Salvataggio completato.'));
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una relazione '_NAME_'.", [
|
flash()->error(tr("E' già presente una relazione _NAME_.", [
|
||||||
'_NAME_' => $descrizione,
|
'_NAME_' => $descrizione,
|
||||||
]));
|
]));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
|
@ -48,11 +54,17 @@ switch (filter('op')) {
|
||||||
$is_bloccata = filter('is_bloccata');
|
$is_bloccata = filter('is_bloccata');
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
$esistente = $dbo->fetchArray('SELECT `an_relazioni`.`id` FROM `an_relazioni` LEFT JOIN `an_relazioni_lang` ON (`an_relazioni`.`id`=`an_relazioni_lang`.`id_record` AND `an_relazioni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_relazioni_lang`.`title`='.prepare($descrizione));
|
if (empty(Relazione::where('id', '=', (new Relazione())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
if (empty($esistente)) {
|
$relazione = Relazione::build();
|
||||||
$dbo->query('INSERT INTO `an_relazioni` (`colore`, `is_bloccata`) VALUES ('.prepare($colore).', '.prepare($is_bloccata).' )');
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$relazione->name = $descrizione;
|
||||||
|
}
|
||||||
|
$relazione->colore = $colore;
|
||||||
|
$relazione->is_bloccata = $is_bloccata;
|
||||||
|
$relazione->save();
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$dbo->query('INSERT INTO `an_relazioni_lang` (`title`, `id_record`, `id_lang`) VALUES ('.prepare($descrizione).', '.prepare($id_record).', '.prepare(Models\Locale::getDefault()->id).')');
|
$relazione->setTranslation('title', $descrizione);
|
||||||
|
$relazione->save();
|
||||||
|
|
||||||
if (isAjaxRequest()) {
|
if (isAjaxRequest()) {
|
||||||
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -16,9 +16,12 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
use Modules\Anagrafiche\Relazione;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `an_relazioni` LEFT JOIN `an_relazioni_lang` ON (`an_relazioni`.`id`=`an_relazioni_lang`.`id_record` AND `an_relazioni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_relazioni`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `an_relazioni` LEFT JOIN `an_relazioni_lang` ON (`an_relazioni`.`id`=`an_relazioni_lang`.`id_record` AND `an_relazioni_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_relazioni`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$relazione = Relazione::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\Scadenzario;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class Tipo extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
|
||||||
|
protected $table = 'co_tipi_scadenze';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function anagrafiche()
|
||||||
|
{
|
||||||
|
return $this->hasMany(Scadenza::class, 'tipo');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Tipi scadenze';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -25,7 +25,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
|
|
|
@ -35,7 +35,7 @@ use Models\Module;
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "name", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -17,19 +17,25 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\Anagrafiche\Settore;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
$colore = filter('colore');
|
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
if (empty($dbo->fetchArray('SELECT `an_settori`.`id` FROM `an_settori` LEFT JOIN `an_settori_lang` ON (`an_settori`.`id` = `an_settori_lang`.`id_record` AND `an_settori_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione).' AND `an_settori`.`id`!='.prepare($id_record)))) {
|
$settore_new = Settore::where('id', '=', (new Settore())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
$dbo->query('UPDATE `an_settori_lang` SET `title`='.prepare($descrizione).' WHERE `id_record`='.prepare($id_record));
|
if (empty($settore_new)) {
|
||||||
|
$settore->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$settore->name = $descrizione;
|
||||||
|
}
|
||||||
|
$settore->save();
|
||||||
flash()->info(tr('Salvataggio completato.'));
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente il settore merceologico _NAME_.", [
|
flash()->error(tr("E' già presente una settore _NAME_.", [
|
||||||
'_NAME_' => $descrizione,
|
'_NAME_' => $descrizione,
|
||||||
]));
|
]));
|
||||||
}
|
}
|
||||||
|
@ -38,17 +44,21 @@ switch (filter('op')) {
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
$colore = filter('colore');
|
|
||||||
|
|
||||||
if (isset($descrizione)) {
|
if (isset($descrizione)) {
|
||||||
if (empty($dbo->fetchNum('SELECT `an_settori`.`id` FROM `an_settori` LEFT JOIN `an_settori_lang` ON (`an_settori`.`id` = `an_settori_lang`.`id_record` AND `an_settori_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione)))) {
|
if (empty(Settore::where('id', '=', (new Settore())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
$dbo->query('INSERT INTO `an_settori` (`id`, `created_at`, `updated_at`) VALUES (NULL, NOW(), NOW())');
|
$settore = Settore::build();
|
||||||
$id_record = $dbo->lastInsertedID();
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
$dbo->query('INSERT INTO `an_settori_lang` (`title`, `id_record`, `id_lang`) VALUES ('.prepare($descrizione).', '.prepare($id_record).', '.prepare(Models\Locale::getDefault()->id).')');
|
$settore->name = $descrizione;
|
||||||
|
}
|
||||||
|
$settore->save();
|
||||||
|
|
||||||
|
$id_record = $dbo->lastInsertedID();
|
||||||
|
$settore->setTranslation('title', $descrizione);
|
||||||
|
$settore->save();
|
||||||
|
|
||||||
if (isAjaxRequest()) {
|
if (isAjaxRequest()) {
|
||||||
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -16,9 +16,12 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
use Modules\Anagrafiche\Settore;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT * FROM `an_settori` LEFT JOIN `an_settori_lang` ON (`an_settori`.`id`=`an_settori_lang`.`id_record` AND `an_settori_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_settori`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT * FROM `an_settori` LEFT JOIN `an_settori_lang` ON (`an_settori`.`id`=`an_settori_lang`.`id_record` AND `an_settori_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `an_settori`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$settore = Settore::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ echo '
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "'.tr('Nome account').'", "name": "name", "value": "$name$", "required": 1 ]}
|
{[ "type": "text", "label": "'.tr('Nome account').'", "name": "name", "value": "$title$", "required": 1 ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -19,55 +19,63 @@
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
|
use Modules\DDT\Spedizione;
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
$vettore = post('esterno');
|
$vettore = post('esterno');
|
||||||
$predefined = post('predefined');
|
$predefined = post('predefined');
|
||||||
|
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id`=`dt_spedizione_lang`.`id_record` AND `dt_spedizione_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($descrizione).' AND `dt_spedizione`.`id`!='.prepare($id_record)))) {
|
if (isset($descrizione)) {
|
||||||
if (!empty($predefined)) {
|
$spedizione_new = Spedizione::where('id', '=', (new Spedizione())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
$dbo->query('UPDATE `dt_spedizione` SET `predefined` = 0');
|
if (empty($spedizione_new)) {
|
||||||
|
$spedizione->setTranslation('title', $descrizione);
|
||||||
|
if (!empty($predefined)) {
|
||||||
|
$dbo->query('UPDATE `dt_spedizione` SET `predefined` = 0');
|
||||||
|
}
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$spedizione->name = $descrizione;
|
||||||
|
}
|
||||||
|
$spedizione->predefined = $predefined;
|
||||||
|
$spedizione->esterno = $vettore;
|
||||||
|
$spedizione->save();
|
||||||
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente una spedizione con questo nome."));
|
||||||
}
|
}
|
||||||
$dbo->update('dt_spedizione', [
|
|
||||||
'predefined' => $predefined,
|
|
||||||
'esterno' => $vettore,
|
|
||||||
], ['id' => $id_record]);
|
|
||||||
|
|
||||||
$dbo->update('dt_spedizione_lang', [
|
|
||||||
'name' => $descrizione,
|
|
||||||
], ['id_record' => $id_record, 'id_lang' => Models\Locale::getDefault()->id]);
|
|
||||||
|
|
||||||
flash()->info(tr('Salvataggio completato!'));
|
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stessa descrizione", [
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
'_TYPE_' => 'spedizione',
|
|
||||||
]));
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
$descrizione = filter('descrizione');
|
$descrizione = filter('descrizione');
|
||||||
|
|
||||||
if ($dbo->fetchNum('SELECT * FROM `dt_spedizione_lang` WHERE `title`='.prepare($descrizione)) == 0) {
|
if (isset($descrizione)) {
|
||||||
$dbo->insert('dt_spedizione', [
|
if (empty(Spedizione::where('id', '=', (new Spedizione())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
'predefined' => 0,
|
$spedizione = Spedizione::build();
|
||||||
]);
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
$id_record = $dbo->lastInsertedID();
|
$spedizione->name = $descrizione;
|
||||||
|
}
|
||||||
|
$spedizione->save();
|
||||||
|
|
||||||
|
$id_record = $dbo->lastInsertedID();
|
||||||
|
$spedizione->setTranslation('title', $descrizione);
|
||||||
|
$spedizione->save();
|
||||||
|
|
||||||
$dbo->insert('dt_spedizione_lang', [
|
if (isAjaxRequest()) {
|
||||||
'id_record' => $id_record,
|
echo json_encode(['id' => $id_record, 'text' => $descrizione]);
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
}
|
||||||
'name' => $descrizione,
|
|
||||||
]);
|
|
||||||
|
|
||||||
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [
|
flash()->info(tr('Aggiunta nuova spedizione _NAME_', [
|
||||||
'_TYPE_' => 'spedizione',
|
'_NAME_' => $descrizione,
|
||||||
]));
|
]));
|
||||||
|
} else {
|
||||||
|
flash()->error(tr("E' già presente un spedizione con questo nome."));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stessa descrizione", [
|
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio'));
|
||||||
'_TYPE_' => 'spedizione',
|
|
||||||
]));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
@ -83,7 +91,7 @@ switch (filter('op')) {
|
||||||
'_TYPE_' => 'spedizione',
|
'_TYPE_' => 'spedizione',
|
||||||
]));
|
]));
|
||||||
} else {
|
} else {
|
||||||
flash()->error(tr('Sono presenti dei documenti collegati a questo porto.'));
|
flash()->error(tr('Sono presenti dei documenti collegati a questo spedizione.'));
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -17,8 +17,12 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\DDT\Spedizione;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT *, `dt_spedizione`.`id` FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id`=`dt_spedizione_lang`.`id_record` AND `dt_spedizione_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `dt_spedizione`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT *, `dt_spedizione`.`id` FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id`=`dt_spedizione_lang`.`id_record` AND `dt_spedizione_lang`.`id_lang`='.prepare(Models\Locale::getDefault()->id).') WHERE `dt_spedizione`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$spedizione = Spedizione::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,6 +29,9 @@ switch (post('op')) {
|
||||||
if ($stato_new) {
|
if ($stato_new) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei contratti.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei contratti.'));
|
||||||
} else {
|
} else {
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$stato->icona = post('icona');
|
$stato->icona = post('icona');
|
||||||
$stato->colore = post('colore');
|
$stato->colore = post('colore');
|
||||||
$stato->is_completato = post('is_completato');
|
$stato->is_completato = post('is_completato');
|
||||||
|
@ -56,6 +59,9 @@ switch (post('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei contratti.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei contratti.'));
|
||||||
} else {
|
} else {
|
||||||
$stato = Stato::build($icona, $colore, $is_completato, $is_fatturabile, $is_pianificabile);
|
$stato = Stato::build($icona, $colore, $is_completato, $is_fatturabile, $is_pianificabile);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$stato->setTranslation('title', $descrizione);
|
$stato->setTranslation('title', $descrizione);
|
||||||
$stato->save();
|
$stato->save();
|
||||||
|
|
|
@ -34,7 +34,7 @@ if ($record['can_delete']) {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$", "extra": "<?php echo $attr; ?>" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$", "extra": "<?php echo $attr; ?>" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -28,6 +28,9 @@ switch (post('op')) {
|
||||||
if (!empty($stato_new) && $stato_new != $id_record) {
|
if (!empty($stato_new) && $stato_new != $id_record) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato.'));
|
||||||
} else {
|
} else {
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$stato->icona = post('icona');
|
$stato->icona = post('icona');
|
||||||
$stato->colore = post('colore');
|
$stato->colore = post('colore');
|
||||||
$stato->setTranslation('title', $descrizione);
|
$stato->setTranslation('title', $descrizione);
|
||||||
|
|
|
@ -27,7 +27,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$", "extra": "readonly" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$", "extra": "readonly" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -28,6 +28,9 @@ switch (post('op')) {
|
||||||
if (!empty($stato_new) && $stato_new != $id_record) {
|
if (!empty($stato_new) && $stato_new != $id_record) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato attività.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato attività.'));
|
||||||
} else {
|
} else {
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$stato->codice = post('codice');
|
$stato->codice = post('codice');
|
||||||
$stato->colore = post('colore');
|
$stato->colore = post('colore');
|
||||||
$stato->is_completato = post('is_completato');
|
$stato->is_completato = post('is_completato');
|
||||||
|
@ -58,6 +61,9 @@ switch (post('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato attività.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato attività.'));
|
||||||
} else {
|
} else {
|
||||||
$stato = Stato::build($codice, $colore);
|
$stato = Stato::build($codice, $colore);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$stato->setTranslation('title', $descrizione);
|
$stato->setTranslation('title', $descrizione);
|
||||||
$stato->save();
|
$stato->save();
|
||||||
|
|
|
@ -43,7 +43,7 @@ if ($record['can_delete']) {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
@ -62,7 +62,7 @@ if ($record['can_delete']) {
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "select", "label": "<?php echo tr('Template email'); ?>", "name": "email", "value": "$id_email$", "values": "query=SELECT `em_templates`.`id`, `em_templates_lang`.`title` AS descrizione FROM `em_templates` LEFT JOIN `em_templates_lang` ON (`em_templates`.`id` = `em_templates_lang`.`id_record` AND `em_templates_lang`.`id_lang` = <?php echo prepare(Models\Locale::getDefault()->id); ?>) WHERE `id_module` = <?php echo (new Module())->getByField('title', 'Interventi', Models\Locale::getPredefined()->id); ?> AND `deleted_at` IS NULL", "disabled": <?php echo intval(empty($record['notifica'])); ?>, "required":1 ]}
|
{[ "type": "select", "label": "<?php echo tr('Template email'); ?>", "name": "email", "value": "$id_email$", "values": "query=SELECT `em_templates`.`id`, `em_templates_lang`.`title` AS descrizione FROM `em_templates` LEFT JOIN `em_templates_lang` ON (`em_templates`.`id` = `em_templates_lang`.`id_record` AND `em_templates_lang`.`id_lang` = <?php echo prepare(Models\Locale::getDefault()->id); ?>) WHERE `id_module` = <?php echo (new Module())->getByField('title', 'Attività', Models\Locale::getPredefined()->id); ?> AND `deleted_at` IS NULL", "disabled": <?php echo intval(empty($record['notifica'])); ?>, "required":1 ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
|
|
|
@ -29,6 +29,9 @@ switch (post('op')) {
|
||||||
if (!empty($stato_new) && $stato_new != $id_record) {
|
if (!empty($stato_new) && $stato_new != $id_record) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato attività.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato attività.'));
|
||||||
} else {
|
} else {
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$stato->icona = post('icona');
|
$stato->icona = post('icona');
|
||||||
$stato->colore = post('colore');
|
$stato->colore = post('colore');
|
||||||
$stato->completato = post('completato');
|
$stato->completato = post('completato');
|
||||||
|
@ -56,6 +59,9 @@ switch (post('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato ordine.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato ordine.'));
|
||||||
} else {
|
} else {
|
||||||
$stato = Stato::build($icona, $colore, $completato, $is_fatturabile, $impegnato);
|
$stato = Stato::build($icona, $colore, $completato, $is_fatturabile, $impegnato);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$stato->setTranslation('title', $descrizione);
|
$stato->setTranslation('title', $descrizione);
|
||||||
$stato->save();
|
$stato->save();
|
||||||
|
|
|
@ -34,7 +34,7 @@ if ($record['can_delete']) {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$", "extra": "<?php echo $attr; ?>" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$", "extra": "<?php echo $attr; ?>" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -28,6 +28,9 @@ switch (post('op')) {
|
||||||
if (!empty($stato_new) && $stato_new != $id_record) {
|
if (!empty($stato_new) && $stato_new != $id_record) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei preventivi.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei preventivi.'));
|
||||||
} else {
|
} else {
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$stato->icona = post('icona');
|
$stato->icona = post('icona');
|
||||||
$stato->colore = post('colore');
|
$stato->colore = post('colore');
|
||||||
$stato->is_completato = post('is_completato');
|
$stato->is_completato = post('is_completato');
|
||||||
|
@ -53,6 +56,9 @@ switch (post('op')) {
|
||||||
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei preventivi.'));
|
flash()->error(tr('Questo nome è già stato utilizzato per un altro stato dei preventivi.'));
|
||||||
} else {
|
} else {
|
||||||
$stato = Stato::build($icona, $colore, $is_completato, $is_fatturabile, $is_pianificabile);
|
$stato = Stato::build($icona, $colore, $is_completato, $is_fatturabile, $is_pianificabile);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$stato->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$stato->setTranslation('title', $descrizione);
|
$stato->setTranslation('title', $descrizione);
|
||||||
$stato->save();
|
$stato->save();
|
||||||
|
|
|
@ -34,7 +34,7 @@ if ($record['can_delete']) {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$", "extra": "<?php echo $attr; ?>" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$", "extra": "<?php echo $attr; ?>" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -30,6 +30,9 @@ switch (post('op')) {
|
||||||
|
|
||||||
if (!in_array($descrizione, $block)) {
|
if (!in_array($descrizione, $block)) {
|
||||||
$tipo->setTranslation('title', $descrizione);
|
$tipo->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$tipo->name = $descrizione;
|
||||||
|
}
|
||||||
$tipo->save();
|
$tipo->save();
|
||||||
flash()->info(tr('Informazioni salvate correttamente!'));
|
flash()->info(tr('Informazioni salvate correttamente!'));
|
||||||
} else {
|
} else {
|
||||||
|
@ -50,6 +53,9 @@ switch (post('op')) {
|
||||||
flash()->error(tr('Nome già esistente!'));
|
flash()->error(tr('Nome già esistente!'));
|
||||||
} else {
|
} else {
|
||||||
$tipo = Tipo::build($descrizione);
|
$tipo = Tipo::build($descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$tipo->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$tipo->setTranslation('title', $descrizione);
|
$tipo->setTranslation('title', $descrizione);
|
||||||
$tipo->save();
|
$tipo->save();
|
||||||
|
|
|
@ -51,7 +51,7 @@ if (!empty($record['default'])) {
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$", "extra": "<?php echo $attr; ?>" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$", "extra": "<?php echo $attr; ?>" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -35,6 +35,9 @@ switch (filter('op')) {
|
||||||
if (!empty($predefined)) {
|
if (!empty($predefined)) {
|
||||||
$dbo->query('UPDATE `co_tipidocumento` SET `predefined` = 0 WHERE `dir` = '.prepare($dir));
|
$dbo->query('UPDATE `co_tipidocumento` SET `predefined` = 0 WHERE `dir` = '.prepare($dir));
|
||||||
}
|
}
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$tipo->name = $descrizione;
|
||||||
|
}
|
||||||
$tipo->dir = $dir;
|
$tipo->dir = $dir;
|
||||||
$tipo->codice_tipo_documento_fe = $codice_tipo_documento_fe;
|
$tipo->codice_tipo_documento_fe = $codice_tipo_documento_fe;
|
||||||
$tipo->help = filter('help');
|
$tipo->help = filter('help');
|
||||||
|
@ -61,6 +64,9 @@ switch (filter('op')) {
|
||||||
flash()->error(tr('Questa combinazione di nome, codice e direzione è già stata utilizzata per un altro tipo di documento.'));
|
flash()->error(tr('Questa combinazione di nome, codice e direzione è già stata utilizzata per un altro tipo di documento.'));
|
||||||
} else {
|
} else {
|
||||||
$tipo = Tipo::build($dir, $codice_tipo_documento_fe);
|
$tipo = Tipo::build($dir, $codice_tipo_documento_fe);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$tipo->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$tipo->setTranslation('title', $descrizione);
|
$tipo->setTranslation('title', $descrizione);
|
||||||
$tipo->save();
|
$tipo->save();
|
||||||
|
|
|
@ -27,7 +27,7 @@ use Models\Module;
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
|
|
|
@ -23,6 +23,9 @@ include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
switch (post('op')) {
|
switch (post('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$tipo->name = $descrizione;
|
||||||
|
}
|
||||||
$tipo->calcola_km = post('calcola_km');
|
$tipo->calcola_km = post('calcola_km');
|
||||||
$tipo->tempo_standard = post('tempo_standard');
|
$tipo->tempo_standard = post('tempo_standard');
|
||||||
$tipo->costo_orario = post('costo_orario');
|
$tipo->costo_orario = post('costo_orario');
|
||||||
|
@ -70,6 +73,9 @@ switch (post('op')) {
|
||||||
$costo_diritto_chiamata_tecnico = post('costo_diritto_chiamata_tecnico');
|
$costo_diritto_chiamata_tecnico = post('costo_diritto_chiamata_tecnico');
|
||||||
|
|
||||||
$tipo = Tipo::build($codice, $calcola_km, $tempo_standard, $costo_orario, $costo_km, $costo_diritto_chiamata, $costo_orario_tecnico, $costo_km_tecnico, $costo_diritto_chiamata_tecnico);
|
$tipo = Tipo::build($codice, $calcola_km, $tempo_standard, $costo_orario, $costo_km, $costo_diritto_chiamata, $costo_orario_tecnico, $costo_km_tecnico, $costo_diritto_chiamata_tecnico);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
|
$tipo->name = $descrizione;
|
||||||
|
}
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$tipo->setTranslation('title', post('descrizione'));
|
$tipo->setTranslation('title', post('descrizione'));
|
||||||
$tipo->save();
|
$tipo->save();
|
||||||
|
|
|
@ -30,7 +30,7 @@ include_once __DIR__.'/../../core.php';
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
|
||||||
|
* Copyright (C) DevCode s.r.l.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Modules\TipiIntervento;
|
||||||
|
|
||||||
|
use Common\SimpleModelTrait;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Traits\RecordTrait;
|
||||||
|
|
||||||
|
class FasciaOraria extends Model
|
||||||
|
{
|
||||||
|
use SimpleModelTrait;
|
||||||
|
use RecordTrait;
|
||||||
|
protected $table = 'in_fasceorarie';
|
||||||
|
|
||||||
|
protected static $translated_fields = [
|
||||||
|
'title',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function getModuleAttribute()
|
||||||
|
{
|
||||||
|
return 'Fasce orarie';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getTranslatedFields()
|
||||||
|
{
|
||||||
|
return self::$translated_fields;
|
||||||
|
}
|
||||||
|
}
|
|
@ -19,6 +19,7 @@
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
use Models\Module;
|
use Models\Module;
|
||||||
|
use Modules\Scadenzario\Tipo;
|
||||||
|
|
||||||
switch (filter('op')) {
|
switch (filter('op')) {
|
||||||
case 'update':
|
case 'update':
|
||||||
|
@ -27,15 +28,16 @@ switch (filter('op')) {
|
||||||
|
|
||||||
if (isset($nome)) {
|
if (isset($nome)) {
|
||||||
// Se non esiste già una tipo di scadenza con lo stesso nome
|
// Se non esiste già una tipo di scadenza con lo stesso nome
|
||||||
$nome_new = $dbo->fetchOne('SELECT * FROM `co_tipi_scadenze` LEFT JOIN `co_tipi_scadenze_lang` ON (`co_tipi_scadenze_lang`.`id_record` = `co_tipi_scadenze`.`id` AND `co_tipi_scadenze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title` = '.prepare($nome).' AND `co_tipi_scadenze_lang`.`id_record` != '.prepare($id_record));
|
$nome_new = Tipo::where('id', '=', (new Tipo())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
|
||||||
|
$nome_prev = $tipo->getTranslation('title');
|
||||||
if (empty($nome_new)) {
|
if (empty($nome_new)) {
|
||||||
// nome_prev
|
// nome_prev
|
||||||
$nome_prev = $dbo->fetchOne('SELECT `title` AS nome_prev FROM `co_tipi_scadenze` LEFT JOIN `co_tipi_scadenze_lang` ON (`co_tipi_scadenze_lang`.`id_record` = `co_tipi_scadenze`.`id` AND `co_tipi_scadenze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `co_tipi_scadenze`.`id`='.prepare($id_record))['nome_prev'];
|
$tipo->setTranslation('title', $descrizione);
|
||||||
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
$dbo->update('co_tipi_scadenze_lang', [
|
$tipo->name = $nome;
|
||||||
'name' => $nome,
|
}
|
||||||
'description' => $descrizione,
|
$tipo->save();
|
||||||
], ['id_record' => $id_record, 'id_lang' => Models\Locale::getDefault()->id]);
|
flash()->info(tr('Salvataggio completato.'));
|
||||||
|
|
||||||
$segmento = $dbo->fetchOne('SELECT `zz_segments`.`id` FROM `zz_segments` LEFT JOIN `zz_segments_lang` ON (`zz_segments_lang`.`id_record` = `zz_segments`.`id` AND `zz_segments_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `id_module` = '.prepare((new Module())->getByField('title', 'Scadenzario', Models\Locale::getPredefined()->id)).' AND `clause` = "co_scadenziario.tipo=\''.$nome_prev.'\'" AND `zz_segments_lang`.`title` = "Scadenzario '.$nome_prev.'"')['id'];
|
$segmento = $dbo->fetchOne('SELECT `zz_segments`.`id` FROM `zz_segments` LEFT JOIN `zz_segments_lang` ON (`zz_segments_lang`.`id_record` = `zz_segments`.`id` AND `zz_segments_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `id_module` = '.prepare((new Module())->getByField('title', 'Scadenzario', Models\Locale::getPredefined()->id)).' AND `clause` = "co_scadenziario.tipo=\''.$nome_prev.'\'" AND `zz_segments_lang`.`title` = "Scadenzario '.$nome_prev.'"')['id'];
|
||||||
|
|
||||||
|
@ -47,7 +49,7 @@ switch (filter('op')) {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$dbo->update('zz_segments_lang', [
|
$dbo->update('zz_segments_lang', [
|
||||||
'name' => 'Scadenzario '.$nome,
|
'title' => 'Scadenzario '.$nome,
|
||||||
], [
|
], [
|
||||||
'id_record' => $segmento,
|
'id_record' => $segmento,
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
'id_lang' => Models\Locale::getDefault()->id,
|
||||||
|
@ -72,17 +74,16 @@ switch (filter('op')) {
|
||||||
|
|
||||||
if (isset($nome)) {
|
if (isset($nome)) {
|
||||||
// Se non esiste già un tipo di scadenza con lo stesso nome
|
// Se non esiste già un tipo di scadenza con lo stesso nome
|
||||||
if (empty($dbo->fetchArray('SELECT * FROM `co_tipi_scadenze` LEFT JOIN `co_tipi_scadenze_lang` ON (`co_tipi_scadenze_lang`.`id_record` = `co_tipi_scadenze`.`id` AND `co_tipi_scadenze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `title`='.prepare($nome)))) {
|
if (empty(Tipo::where('id', '=', (new Tipo())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
|
||||||
$dbo->insert('co_tipi_scadenze', [
|
$tipo = tipo::build();
|
||||||
'created_at' => 'NOW()',
|
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
|
||||||
]);
|
$tipo->name = $nome;
|
||||||
|
}
|
||||||
|
$tipo->save();
|
||||||
|
|
||||||
$id_record = $dbo->lastInsertedID();
|
$id_record = $dbo->lastInsertedID();
|
||||||
$dbo->insert('co_tipi_scadenze_lang', [
|
$tipo->setTranslation('title', $descrizione);
|
||||||
'name' => $nome,
|
$tipo->save();
|
||||||
'description' => $descrizione,
|
|
||||||
'id_record' => $id_record,
|
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
|
||||||
]);
|
|
||||||
|
|
||||||
// Aggiungo anche il segmento
|
// Aggiungo anche il segmento
|
||||||
$dbo->insert('zz_segments', [
|
$dbo->insert('zz_segments', [
|
||||||
|
@ -92,7 +93,7 @@ switch (filter('op')) {
|
||||||
]);
|
]);
|
||||||
$id_segment = $dbo->lastInsertedID();
|
$id_segment = $dbo->lastInsertedID();
|
||||||
$dbo->insert('zz_segments_lang', [
|
$dbo->insert('zz_segments_lang', [
|
||||||
'name' => 'Scadenzario '.$nome,
|
'title' => 'Scadenzario '.$nome,
|
||||||
'id_record' => $id_segment,
|
'id_record' => $id_segment,
|
||||||
'id_lang' => Models\Locale::getDefault()->id,
|
'id_lang' => Models\Locale::getDefault()->id,
|
||||||
]);
|
]);
|
||||||
|
|
|
@ -47,7 +47,7 @@ if ($record['can_delete'] and empty($scadenze)) {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$description$" ]}
|
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$title$" ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -17,8 +17,12 @@
|
||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use Modules\Scadenzario\Tipo;
|
||||||
|
|
||||||
include_once __DIR__.'/../../core.php';
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
if (!empty($id_record)) {
|
if (!empty($id_record)) {
|
||||||
$record = $dbo->fetchOne('SELECT *, `co_tipi_scadenze`.`id` as id FROM `co_tipi_scadenze` LEFT JOIN `co_tipi_scadenze_lang` ON (`co_tipi_scadenze_lang`.`id_record` = `co_tipi_scadenze`.`id` AND `co_tipi_scadenze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `co_tipi_scadenze`.`id`='.prepare($id_record));
|
$record = $dbo->fetchOne('SELECT *, `co_tipi_scadenze`.`id` as id FROM `co_tipi_scadenze` LEFT JOIN `co_tipi_scadenze_lang` ON (`co_tipi_scadenze_lang`.`id_record` = `co_tipi_scadenze`.`id` AND `co_tipi_scadenze_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `co_tipi_scadenze`.`id`='.prepare($id_record));
|
||||||
|
|
||||||
|
$tipo = Tipo::find($id_record);
|
||||||
}
|
}
|
||||||
|
|
|
@ -126,10 +126,10 @@ class ButtonManager implements ManagerInterface
|
||||||
$results = \Prints::getModulePrints($options['id_module']);
|
$results = \Prints::getModulePrints($options['id_module']);
|
||||||
} elseif ($options['type'] == 'email') {
|
} elseif ($options['type'] == 'email') {
|
||||||
$results = TemplateEmail::where('id_module', $options['id_module'])->with(['translations' => function ($query) {
|
$results = TemplateEmail::where('id_module', $options['id_module'])->with(['translations' => function ($query) {
|
||||||
$query->orderBy('name');
|
$query->orderBy('title');
|
||||||
}])->get()->toArray();
|
}])->get()->toArray();
|
||||||
} elseif ($options['type'] == 'sms') {
|
} elseif ($options['type'] == 'sms') {
|
||||||
$results = TemplateSMS::where('id_module', $options['id_module'])->orderBy('name')->get()->toArray();
|
$results = TemplateSMS::where('id_module', $options['id_module'])->orderBy('title')->get()->toArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
return $results;
|
return $results;
|
||||||
|
|
|
@ -224,8 +224,6 @@ HAVING
|
||||||
2=2" WHERE `name` = 'Tipi di anagrafiche';
|
2=2" WHERE `name` = 'Tipi di anagrafiche';
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`an_tipianagrafiche`.`id`' WHERE `zz_modules`.`name` = 'Tipi di anagrafiche' AND `zz_views`.`name` = 'id';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`an_tipianagrafiche`.`id`' WHERE `zz_modules`.`name` = 'Tipi di anagrafiche' AND `zz_views`.`name` = 'id';
|
||||||
|
|
||||||
UPDATE `zz_settings` SET `tipo` = 'query=SELECT `an_anagrafiche`.`idanagrafica` AS id, `ragione_sociale` AS descrizione FROM `an_anagrafiche` INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_anagrafiche`.`idanagrafica` = `an_tipianagrafiche_anagrafiche`.`idanagrafica` WHERE `idtipoanagrafica` = (SELECT `an_tipianagrafiche`.`id` FROM `an_tipianagrafiche` LEFT JOIN `an_tipianagrafiche_lang` ON(`an_tipianagrafiche`.`id` = `an_tipianagrafiche_lang`.`id_record`) WHERE `name` = \'Azienda\') AND `deleted_at` IS NULL' WHERE `zz_settings`.`nome` = 'Azienda predefinita';
|
|
||||||
|
|
||||||
-- Aggiunta tabella co_iva_lang
|
-- Aggiunta tabella co_iva_lang
|
||||||
CREATE TABLE IF NOT EXISTS `co_iva_lang` (
|
CREATE TABLE IF NOT EXISTS `co_iva_lang` (
|
||||||
`id` int NOT NULL,
|
`id` int NOT NULL,
|
||||||
|
@ -1639,7 +1637,6 @@ WHERE
|
||||||
HAVING
|
HAVING
|
||||||
2=2" WHERE `zz_modules`.`id` = (SELECT `id_record` FROM `zz_modules_lang` WHERE `name` = 'Tipi scadenze');
|
2=2" WHERE `zz_modules`.`id` = (SELECT `id_record` FROM `zz_modules_lang` WHERE `name` = 'Tipi scadenze');
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` LEFT JOIN `zz_modules_lang` ON (`zz_modules_lang`.`id_record` = `zz_modules`.`id` AND `zz_modules_lang`.`id_lang` = (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua")) SET `zz_views`.`query` = '`co_tipi_scadenze`.`id`' WHERE `zz_modules_lang`.`name` = 'Tipi scadenze' AND `zz_views`.`name` = 'id';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` LEFT JOIN `zz_modules_lang` ON (`zz_modules_lang`.`id_record` = `zz_modules`.`id` AND `zz_modules_lang`.`id_lang` = (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua")) SET `zz_views`.`query` = '`co_tipi_scadenze`.`id`' WHERE `zz_modules_lang`.`name` = 'Tipi scadenze' AND `zz_views`.`name` = 'id';
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` LEFT JOIN `zz_modules_lang` ON (`zz_modules_lang`.`id_record` = `zz_modules`.`id` AND `zz_modules_lang`.`id_lang` = (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua")) SET `zz_views`.`query` = '`co_tipi_scadenze_lang`.`description`' WHERE `zz_modules_lang`.`name` = 'Tipi scadenze' AND `zz_views`.`name` = 'Descrizione';
|
|
||||||
|
|
||||||
-- Aggiunta tabella zz_segments_lang
|
-- Aggiunta tabella zz_segments_lang
|
||||||
CREATE TABLE IF NOT EXISTS `zz_segments_lang` (
|
CREATE TABLE IF NOT EXISTS `zz_segments_lang` (
|
||||||
|
|
|
@ -138,6 +138,9 @@ if (!$has_name) {
|
||||||
if (database()->columnExists('co_tipi_scadenze_lang', 'name')) {
|
if (database()->columnExists('co_tipi_scadenze_lang', 'name')) {
|
||||||
$database->query('ALTER TABLE `co_tipi_scadenze_lang` DROP `name`');
|
$database->query('ALTER TABLE `co_tipi_scadenze_lang` DROP `name`');
|
||||||
}
|
}
|
||||||
|
if (database()->columnExists('co_tipi_scadenze_lang', 'description')) {
|
||||||
|
$database->query('ALTER TABLE `co_tipi_scadenze_lang` CHANGE `description` `title` VARCHAR(255) NOT NULL');
|
||||||
|
}
|
||||||
|
|
||||||
// Controllo se è presente il campo name in do_categorie
|
// Controllo se è presente il campo name in do_categorie
|
||||||
$has_name = database()->columnExists('do_categorie', 'name');
|
$has_name = database()->columnExists('do_categorie', 'name');
|
||||||
|
|
|
@ -378,9 +378,6 @@ ALTER TABLE `zz_settings_lang` CHANGE `help` `help` VARCHAR(500) NULL;
|
||||||
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`) VALUES (NULL, 'Visualizza numero ordine cliente', '1', 'boolean', '1', 'Ordini', NULL);
|
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`) VALUES (NULL, 'Visualizza numero ordine cliente', '1', 'boolean', '1', 'Ordini', NULL);
|
||||||
INSERT INTO `zz_settings_lang` (`id_record`, `id_lang`, `title`, `help`) VALUES ((SELECT `id` FROM `zz_settings` WHERE `nome` = 'Visualizza numero ordine cliente'), (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua"), 'Visualizza numero ordine cliente', 'Se abilitata, utilizza nei documenti il numero d\'ordine del cliente al posto del numero interno dell\'ordine');
|
INSERT INTO `zz_settings_lang` (`id_record`, `id_lang`, `title`, `help`) VALUES ((SELECT `id` FROM `zz_settings` WHERE `nome` = 'Visualizza numero ordine cliente'), (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua"), 'Visualizza numero ordine cliente', 'Se abilitata, utilizza nei documenti il numero d\'ordine del cliente al posto del numero interno dell\'ordine');
|
||||||
|
|
||||||
-- Allineamento impostazioni
|
|
||||||
UPDATE `zz_settings` SET `tipo` = 'query=SELECT `zz_prints`.`id`, `zz_prints_lang`.`name` AS descrizione FROM `zz_prints` LEFT JOIN `zz_prints_lang` ON (`zz_prints_lang`.`id_record` = `zz_prints`.`id` AND `zz_prints_lang`.`id_lang` = (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua")) WHERE `id_module` = (SELECT `zz_modules`.`id` FROM `zz_modules` LEFT JOIN `zz_modules_lang` ON (`zz_modules_lang`.`id_record` = `zz_modules`.`id` AND `zz_modules_lang`.`id_lang` = (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua")) WHERE `name` = "Interventi") AND `is_record` = 1' WHERE `zz_settings`.`nome` = 'Stampa per anteprima e firma';
|
|
||||||
|
|
||||||
-- Allineamento vista Gestione documentale
|
-- Allineamento vista Gestione documentale
|
||||||
UPDATE `zz_modules` SET `options` = "
|
UPDATE `zz_modules` SET `options` = "
|
||||||
SELECT
|
SELECT
|
||||||
|
@ -922,7 +919,7 @@ UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_module
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`zz_segments_lang`.`title`' WHERE `zz_modules`.`name` = 'Tipi documento' AND `zz_views`.`name` = 'Sezionale';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`zz_segments_lang`.`title`' WHERE `zz_modules`.`name` = 'Tipi documento' AND `zz_views`.`name` = 'Sezionale';
|
||||||
|
|
||||||
-- Allineamento vista Tipi scadenze
|
-- Allineamento vista Tipi scadenze
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`co_tipi_scadenze_lang`.`title`' WHERE `zz_modules`.`name` = 'Tipi scadenze' AND `zz_views`.`name` = 'Nome';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`co_tipi_scadenze`.`name`' WHERE `zz_modules`.`name` = 'Tipi scadenze' AND `zz_views`.`name` = 'Nome';
|
||||||
|
|
||||||
UPDATE `zz_widgets` SET `query` = "SELECT\n CONCAT_WS(\' \', REPLACE(REPLACE(REPLACE(FORMAT((\n SELECT SUM(\n (`co_righe_documenti`.`subtotale` - `co_righe_documenti`.`sconto`) * IF(`co_tipidocumento`.`reversed`, -1, 1)\n )\n ), 2), \',\', \'#\'), \'.\', \',\'), \'#\', \'.\'), \'€\') AS dato\nFROM \n `co_righe_documenti`\n INNER JOIN `co_documenti` ON `co_righe_documenti`.`iddocumento` = `co_documenti`.`id`\n INNER JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento` = `co_tipidocumento`.`id`\n INNER JOIN `co_statidocumento` ON `co_documenti`.`idstatodocumento` = `co_statidocumento`.`id`\n LEFT JOIN `co_statidocumento_lang` ON (`co_statidocumento`.`id` = `co_statidocumento_lang`.`id_record` AND `co_statidocumento_lang`.|lang|)\nWHERE \n `co_statidocumento_lang`.`title`!=\'Bozza\' AND `co_tipidocumento`.`dir`=\'entrata\' |segment(`co_documenti`.`id_segment`)| AND `data` >= \'|period_start|\' AND `data` <= \'|period_end|\' AND 1=1" WHERE `zz_widgets`.`name` = 'Fatturato';
|
UPDATE `zz_widgets` SET `query` = "SELECT\n CONCAT_WS(\' \', REPLACE(REPLACE(REPLACE(FORMAT((\n SELECT SUM(\n (`co_righe_documenti`.`subtotale` - `co_righe_documenti`.`sconto`) * IF(`co_tipidocumento`.`reversed`, -1, 1)\n )\n ), 2), \',\', \'#\'), \'.\', \',\'), \'#\', \'.\'), \'€\') AS dato\nFROM \n `co_righe_documenti`\n INNER JOIN `co_documenti` ON `co_righe_documenti`.`iddocumento` = `co_documenti`.`id`\n INNER JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento` = `co_tipidocumento`.`id`\n INNER JOIN `co_statidocumento` ON `co_documenti`.`idstatodocumento` = `co_statidocumento`.`id`\n LEFT JOIN `co_statidocumento_lang` ON (`co_statidocumento`.`id` = `co_statidocumento_lang`.`id_record` AND `co_statidocumento_lang`.|lang|)\nWHERE \n `co_statidocumento_lang`.`title`!=\'Bozza\' AND `co_tipidocumento`.`dir`=\'entrata\' |segment(`co_documenti`.`id_segment`)| AND `data` >= \'|period_start|\' AND `data` <= \'|period_end|\' AND 1=1" WHERE `zz_widgets`.`name` = 'Fatturato';
|
||||||
|
|
||||||
|
@ -944,4 +941,13 @@ UPDATE `zz_widgets` SET `query` = 'SELECT COUNT(`dati`.`id`) AS dato FROM (SELEC
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`zz_plugins_lang`.`title`' WHERE `zz_modules`.`name` = 'Campi personalizzati' AND `zz_views`.`name` = 'Plugin';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`zz_plugins_lang`.`title`' WHERE `zz_modules`.`name` = 'Campi personalizzati' AND `zz_views`.`name` = 'Plugin';
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`zz_plugins_lang`.`title`' WHERE `zz_modules`.`name` = 'Checklists' AND `zz_views`.`name` = 'Plugin';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`zz_plugins_lang`.`title`' WHERE `zz_modules`.`name` = 'Checklists' AND `zz_views`.`name` = 'Plugin';
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`categoria_lang`.`title`' WHERE `zz_modules`.`name` = 'Giacenze sedi' AND `zz_views`.`name` = 'Categoria';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`categoria_lang`.`title`' WHERE `zz_modules`.`name` = 'Giacenze sedi' AND `zz_views`.`name` = 'Categoria';
|
||||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`sottocategoria_lang`.`title`' WHERE `zz_modules`.`name` = 'Giacenze sedi' AND `zz_views`.`name` = 'Sottocategoria';
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`sottocategoria_lang`.`title`' WHERE `zz_modules`.`name` = 'Giacenze sedi' AND `zz_views`.`name` = 'Sottocategoria';
|
||||||
|
|
||||||
|
|
||||||
|
-- Allineamento impostazioni
|
||||||
|
UPDATE `zz_settings` SET `tipo` = 'query=SELECT `zz_prints`.`id`, `zz_prints_lang`.`title` AS descrizione FROM `zz_prints` LEFT JOIN `zz_prints_lang` ON (`zz_prints_lang`.`id_record` = `zz_prints`.`id` AND `zz_prints_lang`.`id_lang` = (SELECT `valore` FROM `zz_settings` WHERE `nome` = "Lingua")) WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = "Interventi") AND `is_record` = 1' WHERE `zz_settings`.`nome` = 'Stampa per anteprima e firma';
|
||||||
|
|
||||||
|
UPDATE `zz_settings` SET `tipo` = 'query=SELECT `an_anagrafiche`.`idanagrafica` AS id, `ragione_sociale` AS descrizione FROM `an_anagrafiche` INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_anagrafiche`.`idanagrafica` = `an_tipianagrafiche_anagrafiche`.`idanagrafica` WHERE `idtipoanagrafica` = (SELECT `an_tipianagrafiche`.`id` FROM `an_tipianagrafiche` LEFT JOIN `an_tipianagrafiche_lang` ON(`an_tipianagrafiche`.`id` = `an_tipianagrafiche_lang`.`id_record`) WHERE `title` = \'Azienda\') AND `deleted_at` IS NULL' WHERE `zz_settings`.`nome` = 'Azienda predefinita';
|
||||||
|
|
||||||
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`co_tipi_scadenze_lang`.`title`' WHERE `zz_modules`.`name` = 'Tipi scadenze' AND `zz_views`.`name` = 'Descrizione';
|
||||||
|
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet_lang`.`title`' WHERE `zz_modules`.`name` = 'Causali' AND `zz_views`.`name` = 'Descrizione';
|
Loading…
Reference in New Issue