mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-23 23:07:46 +01:00
Aggiunta tabella dt_porto_lang
This commit is contained in:
parent
1b3ba587e4
commit
2bde2db940
@ -374,7 +374,7 @@ echo '
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "<?php echo tr('Porto'); ?>", "name": "idporto", "placeholder": "-", "help": "<?php echo tr('<ul><li>Franco: pagamento del trasporto a carico del mittente</li> <li>Assegnato: pagamento del trasporto a carico del destinatario</li> </ul>'); ?>", "values": "query=SELECT id, descrizione FROM dt_porto ORDER BY descrizione ASC", "value": "$idporto$" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Porto'); ?>", "name": "idporto", "placeholder": "-", "help": "<?php echo tr('<ul><li>Franco: pagamento del trasporto a carico del mittente</li> <li>Assegnato: pagamento del trasporto a carico del destinatario</li> </ul>'); ?>", "values": "query=SELECT `dt_porto`.`id`, `dt_porto_lang`.`name` as descrizione FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto`.`id` = `dt_porto_lang`.`id_record` AND `dt_porto_lang`.`id_lang` = <?php echo prepare(setting('Lingua')); ?>) ORDER BY `name` ASC", "value": "$idporto$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
|
@ -46,9 +46,9 @@ if (isset($id_record)) {
|
||||
WHERE dt_ddt.id='.prepare($id_record));
|
||||
|
||||
if (!empty($record)) {
|
||||
$record['idporto'] = $record['idporto'] ?: $dbo->fetchOne('SELECT id FROM dt_porto WHERE predefined = 1')['id'];
|
||||
$record['idporto'] = $record['idporto'] ?: $dbo->fetchOne('SELECT `id` FROM `dt_porto` WHERE `predefined` = 1')['id'];
|
||||
$record['idcausalet'] = $record['idcausalet'] ?: $dbo->fetchOne('SELECT `id` FROM `dt_causalet` WHERE `predefined` = 1')['id'];
|
||||
$record['idspedizione'] = $record['idspedizione'] ?: $dbo->fetchOne('SELECT id FROM dt_spedizione WHERE predefined = 1')['id'];
|
||||
$record['idspedizione'] = $record['idspedizione'] ?: $dbo->fetchOne('SELECT `id` FROM `dt_spedizione` WHERE `predefined` = 1')['id'];
|
||||
}
|
||||
|
||||
// Se la sede del ddt non è di mia competenza, blocco il ddt in modifica
|
||||
|
@ -573,7 +573,7 @@ if ($record['descrizione_tipo'] == 'Fattura accompagnatoria di vendita') {
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "'.tr('Porto').'", "name": "idporto", "placeholder": "", "values": "query=SELECT id, descrizione FROM dt_porto ORDER BY descrizione ASC", "value": "$idporto$" ]}
|
||||
{[ "type": "select", "label": "'.tr('Porto').'", "name": "idporto", "placeholder": "", "values": "query=SELECT `dt_porto`.`id`, `dt_porto_lang`.`name` as descrizione FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto`.`id` = `dt_porto_lang`.`id_record` AND `dt_porto_lang`.`id_lang` = '.prepare(setting('Lingua')).') ORDER BY `name` ASC", "value": "$idporto$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
@ -694,8 +694,7 @@ if ($record['descrizione_tipo'] == 'Fattura accompagnatoria di vendita') {
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "'.tr('Tipo Resa').'", "name": "tipo_resa", "value": "$tipo_resa$", "values": '.json_encode($tipo_resa).', "readonly": '.intval($record['causale_desc'] != 'Reso').' ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>';
|
||||
</div>';
|
||||
|
||||
echo '
|
||||
<div class="row">
|
||||
|
@ -218,7 +218,7 @@ class Fattura extends Document
|
||||
$model->note = implode("\n", $notes);
|
||||
|
||||
if ($tipo_documento->descrizione == 'Fattura accompagnatoria di vendita') {
|
||||
$model->idporto = database()->fetchOne('SELECT id FROM dt_porto WHERE predefined = 1')['id'];
|
||||
$model->idporto = database()->fetchOne('SELECT `id` FROM `dt_porto` WHERE `predefined` = 1')['id'];
|
||||
$model->idcausalet = database()->fetchOne('SELECT `id` FROM `dt_causalet` WHERE `predefined` = 1')['id'];
|
||||
$model->idspedizione = database()->fetchOne('SELECT id FROM dt_spedizione WHERE predefined = 1')['id'];
|
||||
}
|
||||
|
@ -22,35 +22,42 @@ include_once __DIR__.'/../../core.php';
|
||||
switch (filter('op')) {
|
||||
case 'update':
|
||||
$descrizione = filter('descrizione');
|
||||
$predefined = post('predefined');
|
||||
|
||||
if ($dbo->fetchNum('SELECT * FROM `dt_porto` WHERE `descrizione`='.prepare($descrizione).' AND `id`!='.prepare($id_record)) == 0) {
|
||||
$predefined = post('predefined');
|
||||
if ($dbo->fetchNum('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(setting('Lingua')).') WHERE `name`='.prepare($descrizione).' AND `dt_porto`.`id`!='.prepare($id_record)) == 0) {
|
||||
if (!empty($predefined)) {
|
||||
$dbo->query('UPDATE dt_porto SET predefined = 0');
|
||||
$dbo->query('UPDATE `dt_porto` SET `predefined` = 0');
|
||||
}
|
||||
|
||||
$dbo->update('dt_porto', [
|
||||
'descrizione' => $descrizione,
|
||||
'predefined' => $predefined,
|
||||
], ['id' => $id_record]);
|
||||
|
||||
$dbo->update('dt_porto_lang', [
|
||||
'name' => $descrizione,
|
||||
], ['id_record' => $id_record, 'id_lang' => setting('Lingua')]);
|
||||
|
||||
flash()->info(tr('Salvataggio completato!'));
|
||||
} else {
|
||||
flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stessa descrizione", [
|
||||
'_TYPE_' => 'porto',
|
||||
]));
|
||||
flash()->error(tr("E' già presente un Porto con questa descrizione"));
|
||||
}
|
||||
break;
|
||||
|
||||
case 'add':
|
||||
$descrizione = filter('descrizione');
|
||||
|
||||
if ($dbo->fetchNum('SELECT * FROM `dt_porto` WHERE `descrizione`='.prepare($descrizione)) == 0) {
|
||||
if ($dbo->fetchNum('SELECT * FROM `dt_porto` LEFT JOIN `dt_porto_lang` 0N (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = '.prepare(setting('Lingua')).') WHERE `name`='.prepare($descrizione)) == 0) {
|
||||
$dbo->insert('dt_porto', [
|
||||
'descrizione' => $descrizione,
|
||||
'created_at' => 'NOW()',
|
||||
]);
|
||||
$id_record = $dbo->lastInsertedID();
|
||||
|
||||
$dbo->insert('dt_porto_lang', [
|
||||
'name' => $descrizione,
|
||||
'id_record' => $id_record,
|
||||
'id_lang' => setting('Lingua'),
|
||||
]);
|
||||
|
||||
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [
|
||||
'_TYPE_' => 'porto',
|
||||
]));
|
||||
@ -63,9 +70,9 @@ switch (filter('op')) {
|
||||
break;
|
||||
|
||||
case 'delete':
|
||||
$documenti = $dbo->fetchNum('SELECT id FROM dt_ddt WHERE idporto='.prepare($id_record).'
|
||||
UNION SELECT id FROM co_documenti WHERE idporto='.prepare($id_record).'
|
||||
UNION SELECT id FROM co_preventivi WHERE idporto='.prepare($id_record));
|
||||
$documenti = $dbo->fetchNum('SELECT `id` FROM `dt_ddt` WHERE `idporto`='.prepare($id_record).'
|
||||
UNION SELECT `id` FROM `co_documenti` WHERE `idporto`='.prepare($id_record).'
|
||||
UNION SELECT `id` FROM `co_preventivi` WHERE `idporto`='.prepare($id_record));
|
||||
|
||||
if (isset($id_record) && empty($documenti)) {
|
||||
$dbo->query('DELETE FROM `dt_porto` WHERE `id`='.prepare($id_record));
|
||||
|
@ -32,7 +32,7 @@ include_once __DIR__.'/../../core.php';
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-9">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$name$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
|
@ -20,5 +20,5 @@
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
if (isset($id_record)) {
|
||||
$record = $dbo->fetchOne('SELECT * FROM `dt_porto` WHERE 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(setting('Lingua')).') WHERE `dt_porto`.`id`='.prepare($id_record));
|
||||
}
|
||||
|
@ -129,11 +129,6 @@ echo '
|
||||
{[ "type": "select", "label": "<?php echo tr('Tipo di attività'); ?>", "name": "idtipointervento", "required": 1, "ajax-source": "tipiintervento", "value": "$idtipointervento$" ]}
|
||||
</div>
|
||||
|
||||
<!--div class="col-md-3">
|
||||
{[ "type": "select", "label": "<?php echo tr('Resa materiale'); ?>", "name": "idporto", "values": "query=SELECT id, descrizione FROM dt_porto ORDER BY descrizione", "value": "$idporto$" ]}
|
||||
</div-->
|
||||
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "text", "label": "<?php echo tr('Tempi di consegna'); ?>", "name": "tempi_consegna", "value": "$tempi_consegna$" ]}
|
||||
</div>
|
||||
|
@ -34,7 +34,7 @@ $id_azienda = setting('Azienda predefinita');
|
||||
|
||||
$pagamento = Pagamento::find($documento['idpagamento']);
|
||||
$causale = $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(setting('Lingua')).') WHERE `dt_causalet`.`id` = '.prepare($documento['idcausalet']));
|
||||
$porto = $dbo->fetchOne('SELECT * FROM dt_porto WHERE id = '.prepare($documento['idporto']));
|
||||
$porto = $dbo->fetchOne('SELECT * FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto`.`id` = `dt_porto_lang`.`id_record` AND `dt_porto_lang`.`id_lang` ='.prepare(setting('Lingua')).') WHERE `dt_porto`.`id` = '.prepare($documento['idporto']));
|
||||
$aspetto_beni = $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(setting('Lingua')).') WHERE `dt_aspettobeni`.`id` = '.prepare($documento['idaspettobeni']));
|
||||
$spedizione = $dbo->fetchOne('SELECT * FROM dt_spedizione WHERE id = '.prepare($documento['idspedizione']));
|
||||
|
||||
|
@ -35,7 +35,7 @@ $record = $dbo->fetchOne('SELECT *,
|
||||
`co_tipidocumento`.`dir` AS dir,
|
||||
`co_pagamenti_lang`.`name` AS pagamento,
|
||||
`dt_causalet_lang`.`name` AS causalet,
|
||||
`dt_porto`.`descrizione` AS porto,
|
||||
`dt_porto_lang`.`name` AS porto,
|
||||
`dt_aspettobeni_lang`.`name` AS aspettobeni,
|
||||
`dt_spedizione`.`descrizione` AS spedizione,
|
||||
`vettore`.`ragione_sociale` AS vettore,
|
||||
@ -57,6 +57,7 @@ FROM
|
||||
LEFT JOIN `dt_causalet` ON `dt_causalet`.`id` = `co_documenti`.`idcausalet`
|
||||
LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.`id_lang` = '.prepare(setting('Lingua')).')
|
||||
LEFT JOIN `dt_porto` ON `dt_porto`.`id` = `co_documenti`.`idporto`
|
||||
LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = '.prepare(setting('Lingua')).')
|
||||
LEFT JOIN `dt_aspettobeni` ON `dt_aspettobeni`.`id` = `co_documenti`.`idaspettobeni`
|
||||
LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni_lang`.`id_record` = `dt_aspettobeni`.`id` AND `dt_aspettobeni_lang`.`id_lang` = '.prepare(setting('Lingua')).')
|
||||
LEFT JOIN `dt_spedizione` ON `dt_spedizione`.`id` = `co_documenti`.`idspedizione`
|
||||
|
@ -926,4 +926,40 @@ ORDER BY
|
||||
`data` DESC,
|
||||
CAST(`numero_esterno` AS UNSIGNED) DESC,
|
||||
`dt_ddt`.`created_at` DESC" WHERE `name` = 'Ddt di acquisto';
|
||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet_lang`.`name`' WHERE `zz_modules`.`name` = 'Ddt di acquisto' AND `zz_views`.`name` = 'Causale';
|
||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet_lang`.`name`' WHERE `zz_modules`.`name` = 'Ddt di acquisto' AND `zz_views`.`name` = 'Causale';
|
||||
|
||||
-- Aggiunta tabella dt_porto_lang
|
||||
CREATE TABLE IF NOT EXISTS `dt_porto_lang` (
|
||||
`id` int NOT NULL,
|
||||
`id_lang` int NOT NULL,
|
||||
`id_record` int NOT NULL,
|
||||
`name` VARCHAR(255) NOT NULL
|
||||
);
|
||||
ALTER TABLE `dt_porto_lang`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
ALTER TABLE `dt_porto_lang`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
INSERT INTO `dt_porto_lang` (`id`, `id_lang`, `id_record`, `name`) SELECT NULL, (SELECT `id` FROM `zz_langs` WHERE `iso_code` = 'it'), `id`, `descrizione` FROM `dt_porto`;
|
||||
|
||||
ALTER TABLE `dt_porto`
|
||||
DROP `descrizione`;
|
||||
|
||||
ALTER TABLE `dt_porto` CHANGE `id` `id` INT NOT NULL AUTO_INCREMENT;
|
||||
|
||||
ALTER TABLE `dt_porto_lang` ADD CONSTRAINT `dt_porto_lang_ibfk_1` FOREIGN KEY (`id_record`) REFERENCES `dt_porto`(`id`) ON DELETE CASCADE ON UPDATE RESTRICT;
|
||||
|
||||
-- Allineamento vista Porto
|
||||
UPDATE `zz_modules` SET `options` = "
|
||||
SELECT
|
||||
|select|
|
||||
FROM
|
||||
`dt_porto`
|
||||
LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = |lang|)
|
||||
WHERE
|
||||
1=1
|
||||
HAVING
|
||||
2=2" WHERE `name` = 'Porto';
|
||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_porto_lang`.`name`' WHERE `zz_modules`.`name` = 'Porto' 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_porto`.`id`' WHERE `zz_modules`.`name` = 'Porto' AND `zz_views`.`name` = 'id';
|
@ -68,6 +68,7 @@ return [
|
||||
'dt_causalet_lang',
|
||||
'dt_ddt',
|
||||
'dt_porto',
|
||||
'dt_porto_lang',
|
||||
'dt_righe_ddt',
|
||||
'dt_spedizione',
|
||||
'dt_statiddt',
|
||||
|
Loading…
x
Reference in New Issue
Block a user