mirror of
https://github.com/devcode-it/openstamanager.git
synced 2024-12-22 21:28:08 +01:00
Bugfix
Bugfix nella gestione degli sconti per le fatture in stato di Emessa e aggiunta della conversione dei campi del database da DATETIME a DATE.
This commit is contained in:
parent
f17a64a1bd
commit
2d6d54d940
@ -73,9 +73,6 @@ switch (post('op')) {
|
|||||||
$totale_imponibile = get_imponibile_fattura($id_record);
|
$totale_imponibile = get_imponibile_fattura($id_record);
|
||||||
$totale_fattura = get_totale_fattura($id_record);
|
$totale_fattura = get_totale_fattura($id_record);
|
||||||
|
|
||||||
$tipo_sconto = $post['tipo_sconto_generico'];
|
|
||||||
$sconto = $post['sconto_generico'];
|
|
||||||
|
|
||||||
if ($dir == 'uscita') {
|
if ($dir == 'uscita') {
|
||||||
$idrivalsainps = post('idrivalsainps');
|
$idrivalsainps = post('idrivalsainps');
|
||||||
$idritenutaacconto = post('idritenutaacconto');
|
$idritenutaacconto = post('idritenutaacconto');
|
||||||
@ -107,8 +104,6 @@ switch (post('op')) {
|
|||||||
' n_colli='.prepare($n_colli).','.
|
' n_colli='.prepare($n_colli).','.
|
||||||
' idsede='.prepare($idsede).','.
|
' idsede='.prepare($idsede).','.
|
||||||
' numero_esterno='.prepare($numero_esterno).','.
|
' numero_esterno='.prepare($numero_esterno).','.
|
||||||
' tipo_sconto_globale='.prepare($tipo_sconto).','.
|
|
||||||
' sconto_globale='.prepare($sconto).','.
|
|
||||||
' note='.prepare($note).','.
|
' note='.prepare($note).','.
|
||||||
' note_aggiuntive='.prepare($note_aggiuntive).','.
|
' note_aggiuntive='.prepare($note_aggiuntive).','.
|
||||||
' idconto='.prepare($idconto).','.
|
' idconto='.prepare($idconto).','.
|
||||||
@ -121,13 +116,23 @@ switch (post('op')) {
|
|||||||
$query = 'SELECT descrizione FROM co_statidocumento WHERE id='.prepare($idstatodocumento);
|
$query = 'SELECT descrizione FROM co_statidocumento WHERE id='.prepare($idstatodocumento);
|
||||||
$rs = $dbo->fetchArray($query);
|
$rs = $dbo->fetchArray($query);
|
||||||
|
|
||||||
aggiorna_sconto([
|
if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa' && str_contains($r['descrizione'], 'SCONTO')) {
|
||||||
'parent' => 'co_documenti',
|
$tipo_sconto = $post['tipo_sconto_generico'];
|
||||||
'row' => 'co_righe_documenti',
|
$sconto = $post['sconto_generico'];
|
||||||
], [
|
|
||||||
'parent' => 'id',
|
$dbo->update('co_documenti', [
|
||||||
'row' => 'iddocumento',
|
'tipo_sconto_globale' => $tipo_sconto,
|
||||||
], $id_record);
|
'sconto_globale' => $sconto,
|
||||||
|
], ['id' => $id_record]);
|
||||||
|
|
||||||
|
aggiorna_sconto([
|
||||||
|
'parent' => 'co_documenti',
|
||||||
|
'row' => 'co_righe_documenti',
|
||||||
|
], [
|
||||||
|
'parent' => 'id',
|
||||||
|
'row' => 'iddocumento',
|
||||||
|
], $id_record);
|
||||||
|
}
|
||||||
|
|
||||||
// Ricalcolo inps, ritenuta e bollo (se la fattura non è stata pagata)
|
// Ricalcolo inps, ritenuta e bollo (se la fattura non è stata pagata)
|
||||||
if ($dir == 'entrata') {
|
if ($dir == 'entrata') {
|
||||||
|
@ -85,7 +85,7 @@ if ($dir == 'uscita') {
|
|||||||
} ?>
|
} ?>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if ($records[0]['stato'] == 'Emessa') {
|
if ($records[0]['stato'] != 'Bozza' && $records[0]['stato'] != 'Annullata') {
|
||||||
$scadenze = $dbo->fetchArray('SELECT * FROM co_scadenziario WHERE iddocumento = '.prepare($id_record));
|
$scadenze = $dbo->fetchArray('SELECT * FROM co_scadenziario WHERE iddocumento = '.prepare($id_record));
|
||||||
echo '
|
echo '
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
@ -192,7 +192,11 @@ if ($records[0]['stato'] == 'Pagato') {
|
|||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "number", "label": "<?php echo _('Sconto totale') ?>", "name": "sconto_generico", "value": "$sconto_globale$", "icon-after": "choice|untprc|$tipo_sconto_globale$" ]}
|
{[ "type": "number", "label": "<?php echo _('Sconto totale') ?>", "name": "sconto_generico", "value": "$sconto_globale$", "icon-after": "choice|untprc|$tipo_sconto_globale$"<?php
|
||||||
|
if ($records[0]['stato'] == 'Emessa') {
|
||||||
|
echo ', "disabled" : 1';
|
||||||
|
}
|
||||||
|
?> ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -42,7 +42,6 @@ $tables = [
|
|||||||
'co_tipidocumento',
|
'co_tipidocumento',
|
||||||
'dt_aspettobeni',
|
'dt_aspettobeni',
|
||||||
'dt_automezzi',
|
'dt_automezzi',
|
||||||
'dt_automezzi_tagliandi',
|
|
||||||
'dt_automezzi_tecnici',
|
'dt_automezzi_tecnici',
|
||||||
'dt_causalet',
|
'dt_causalet',
|
||||||
'dt_ddt',
|
'dt_ddt',
|
||||||
@ -95,9 +94,12 @@ $tables = [
|
|||||||
$latest_ver = version_compare($mysql_ver, '5.6.5') >= 0;
|
$latest_ver = version_compare($mysql_ver, '5.6.5') >= 0;
|
||||||
foreach ($tables as $table) {
|
foreach ($tables as $table) {
|
||||||
if ($latest_ver) {
|
if ($latest_ver) {
|
||||||
$database->query('ALTER TABLE `'.$table.'` ADD (`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)');
|
$database->query('ALTER TABLE `'.$table.'` ADD (`created_at` timestamp DEFAULT CURRENT_TIMESTAMP, `updated_at` timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)');
|
||||||
} else {
|
} else {
|
||||||
$database->query('ALTER TABLE `'.$table."` ADD (`created_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)");
|
$database->query('ALTER TABLE `'.$table.'` ADD (`created_at` timestamp DEFAULT NULL, `updated_at` timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)');
|
||||||
|
$database->query('UPDATE '.$table.' SET created_at = updated_at');
|
||||||
|
|
||||||
|
// Trigger per l'inizializzazione automatica di created_at
|
||||||
$database->query('CREATE TRIGGER '.$table.'_creation BEFORE INSERT ON '.$table.' FOR EACH ROW SET NEW.created_at = CURRENT_TIMESTAMP');
|
$database->query('CREATE TRIGGER '.$table.'_creation BEFORE INSERT ON '.$table.' FOR EACH ROW SET NEW.created_at = CURRENT_TIMESTAMP');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -145,7 +147,13 @@ if (!empty($array)) {
|
|||||||
$database->query("UPDATE mg_articoli SET contenuto = REPLACE(REPLACE(REPLACE(contenuto, '"', '\"'), '\n', ".prepare(PHP_EOL)."), '`', '\"')");
|
$database->query("UPDATE mg_articoli SET contenuto = REPLACE(REPLACE(REPLACE(contenuto, '"', '\"'), '\n', ".prepare(PHP_EOL)."), '`', '\"')");
|
||||||
$database->query("UPDATE my_impianto_componenti SET contenuto = REPLACE(REPLACE(REPLACE(contenuto, '"', '\"'), '\n', ".prepare(PHP_EOL)."), '`', '\"')");
|
$database->query("UPDATE my_impianto_componenti SET contenuto = REPLACE(REPLACE(REPLACE(contenuto, '"', '\"'), '\n', ".prepare(PHP_EOL)."), '`', '\"')");
|
||||||
|
|
||||||
// Fix dei timestamp delle tabelle zz_logs e zz_files
|
// Fix dei timestamp delle tabelle mg_prodotti, mg_movimenti, zz_logs e zz_files
|
||||||
|
$database->query('UPDATE `mg_prodotti` SET `created_at` = `data`, `updated_at` = `data`');
|
||||||
|
$database->query('ALTER TABLE `mg_prodotti` DROP `data`');
|
||||||
|
|
||||||
|
$database->query('UPDATE `mg_movimenti` SET `created_at` = `data`, `updated_at` = `data`');
|
||||||
|
$database->query('ALTER TABLE `mg_movimenti` DROP `data`');
|
||||||
|
|
||||||
$database->query('UPDATE `zz_logs` SET `created_at` = `timestamp`, `updated_at` = `timestamp`');
|
$database->query('UPDATE `zz_logs` SET `created_at` = `timestamp`, `updated_at` = `timestamp`');
|
||||||
$database->query('ALTER TABLE `zz_logs` DROP `timestamp`');
|
$database->query('ALTER TABLE `zz_logs` DROP `timestamp`');
|
||||||
|
|
||||||
|
@ -65,6 +65,7 @@ DROP TABLE `mk_attivita`;
|
|||||||
DROP TABLE `mk_email`;
|
DROP TABLE `mk_email`;
|
||||||
DROP TABLE `mk_statoattivita`;
|
DROP TABLE `mk_statoattivita`;
|
||||||
DROP TABLE `mk_tipoattivita`;
|
DROP TABLE `mk_tipoattivita`;
|
||||||
|
DROP TABLE `dt_automezzi_tagliandi`;
|
||||||
DROP TABLE `co_contratti_interventi`;
|
DROP TABLE `co_contratti_interventi`;
|
||||||
|
|
||||||
-- RELEASE 2.2.1 [NON UFFICIALE] --
|
-- RELEASE 2.2.1 [NON UFFICIALE] --
|
||||||
@ -682,9 +683,6 @@ ALTER TABLE `my_impianto_componenti` CHANGE `idsostituto` `idsostituto` int(11);
|
|||||||
UPDATE `my_impianto_componenti` SET `idsostituto` = NULL WHERE `idsostituto` = 0;
|
UPDATE `my_impianto_componenti` SET `idsostituto` = NULL WHERE `idsostituto` = 0;
|
||||||
ALTER TABLE `my_impianto_componenti` ADD FOREIGN KEY (`idsostituto`) REFERENCES `my_impianto_componenti`(`id`) ON DELETE CASCADE;
|
ALTER TABLE `my_impianto_componenti` ADD FOREIGN KEY (`idsostituto`) REFERENCES `my_impianto_componenti`(`id`) ON DELETE CASCADE;
|
||||||
|
|
||||||
-- Fix dei timestamp delle tabelle zz_logs
|
|
||||||
ALTER TABLE `zz_logs` CHANGE `timestamp` `timestamp` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00';
|
|
||||||
|
|
||||||
-- Adeguamento dei contenuti di zz_files
|
-- Adeguamento dei contenuti di zz_files
|
||||||
ALTER TABLE `zz_files` CHANGE `externalid` `id_record` int(11) NOT NULL, ADD `id_module` int(11) NOT NULL AFTER `filename`, ADD `original` varchar(255) NOT NULL AFTER `filename`;
|
ALTER TABLE `zz_files` CHANGE `externalid` `id_record` int(11) NOT NULL, ADD `id_module` int(11) NOT NULL AFTER `filename`, ADD `original` varchar(255) NOT NULL AFTER `filename`;
|
||||||
UPDATE `zz_files` SET `id_module` = (SELECT `id` FROM `zz_modules` WHERE `zz_modules`.`directory` = `zz_files`.`module`);
|
UPDATE `zz_files` SET `id_module` = (SELECT `id` FROM `zz_modules` WHERE `zz_modules`.`directory` = `zz_files`.`module`);
|
||||||
@ -873,13 +871,69 @@ OR (`id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Prima nota') AN
|
|||||||
-- Disabilitazione dei plugin instabili
|
-- Disabilitazione dei plugin instabili
|
||||||
UPDATE `zz_plugins` SET `enabled` = 0 WHERE `name` = 'Pianificazione fatturazione' OR `name` = 'Pianificazione ordini di servizio';
|
UPDATE `zz_plugins` SET `enabled` = 0 WHERE `name` = 'Pianificazione fatturazione' OR `name` = 'Pianificazione ordini di servizio';
|
||||||
|
|
||||||
-- Fix per le date delle tabelle dei documenti
|
|
||||||
ALTER TABLE `co_documenti` CHANGE `data` `data` date NOT NULL;
|
|
||||||
ALTER TABLE `or_ordini` CHANGE `data` `data` date NOT NULL;
|
|
||||||
ALTER TABLE `dt_ddt` CHANGE `data` `data` date NOT NULL;
|
|
||||||
|
|
||||||
ALTER TABLE `co_preventivi` CHANGE `data_bozza` `data_bozza` date NOT NULL, CHANGE `data_accettazione` `data_accettazione` date NOT NULL, CHANGE `data_rifiuto` `data_rifiuto` date NOT NULL, CHANGE `data_conclusione` `data_conclusione` date NOT NULL, CHANGE `data_pagamento` `data_pagamento` date NOT NULL;
|
|
||||||
ALTER TABLE `co_contratti` CHANGE `data_bozza` `data_bozza` date NOT NULL, CHANGE `data_accettazione` `data_accettazione` date NOT NULL, CHANGE `data_rifiuto` `data_rifiuto` date NOT NULL, CHANGE `data_conclusione` `data_conclusione` date NOT NULL;
|
|
||||||
|
|
||||||
-- Fix del tipo di alcune impostazioni
|
-- Fix del tipo di alcune impostazioni
|
||||||
UPDATE `zz_settings` SET `tipo` = 'decimal' WHERE `nome` = 'Soglia minima per l\'applicazione della marca da bollo' OR `nome` = 'Importo marca da bollo';
|
UPDATE `zz_settings` SET `tipo` = 'decimal' WHERE `nome` = 'Soglia minima per l\'applicazione della marca da bollo' OR `nome` = 'Importo marca da bollo';
|
||||||
|
|
||||||
|
-- Fix per le date in varie tabelle
|
||||||
|
ALTER TABLE `co_documenti` CHANGE `data` `data` datetime;
|
||||||
|
ALTER TABLE `or_ordini` CHANGE `data` `data` datetime;
|
||||||
|
ALTER TABLE `dt_ddt` CHANGE `data` `data` datetime;
|
||||||
|
|
||||||
|
ALTER TABLE `co_preventivi` CHANGE `data_bozza` `data_bozza` datetime, CHANGE `data_accettazione` `data_accettazione` datetime, CHANGE `data_rifiuto` `data_rifiuto` datetime, CHANGE `data_conclusione` `data_conclusione` datetime, CHANGE `data_pagamento` `data_pagamento` datetime;
|
||||||
|
ALTER TABLE `co_contratti` CHANGE `data_bozza` `data_bozza` datetime, CHANGE `data_accettazione` `data_accettazione` datetime, CHANGE `data_rifiuto` `data_rifiuto` datetime, CHANGE `data_conclusione` `data_conclusione` datetime;
|
||||||
|
|
||||||
|
ALTER TABLE `co_movimenti` CHANGE `data` `data` datetime, CHANGE `data_documento` `data_documento` datetime;
|
||||||
|
ALTER TABLE `co_ordiniservizio` CHANGE `data_scadenza` `data_scadenza` datetime;
|
||||||
|
ALTER TABLE `co_ordiniservizio_pianificazionefatture` CHANGE `data_scadenza` `data_scadenza` datetime;
|
||||||
|
ALTER TABLE `co_righe_contratti` CHANGE `data_richiesta` `data_richiesta` datetime;
|
||||||
|
ALTER TABLE `co_righe_preventivi` CHANGE `data_evasione` `data_evasione` datetime;
|
||||||
|
ALTER TABLE `co_scadenziario` CHANGE `data_emissione` `data_emissione` datetime, CHANGE `scadenza` `scadenza` datetime, CHANGE `data_pagamento` `data_pagamento` datetime;
|
||||||
|
ALTER TABLE `dt_automezzi_tecnici` CHANGE `data_inizio` `data_inizio` datetime, CHANGE `data_fine` `data_fine` datetime;
|
||||||
|
ALTER TABLE `my_impianto_componenti` CHANGE `data` `data` datetime, CHANGE `data_sostituzione` `data_sostituzione` datetime;
|
||||||
|
ALTER TABLE `or_righe_ordini` CHANGE `data_evasione` `data_evasione` datetime;
|
||||||
|
|
||||||
|
UPDATE `co_documenti` SET `data` = NULL WHERE `data` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `or_ordini` SET `data` = NULL WHERE `data` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `dt_ddt` SET `data` = NULL WHERE `data` = '0000-00-00 00:00:00';
|
||||||
|
|
||||||
|
UPDATE `co_preventivi` SET `data_bozza` = NULL WHERE `data_bozza` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_preventivi` SET `data_accettazione` = NULL WHERE `data_accettazione` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_preventivi` SET `data_rifiuto` = NULL WHERE `data_rifiuto` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_preventivi` SET `data_conclusione` = NULL WHERE `data_conclusione` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_preventivi` SET `data_pagamento` = NULL WHERE `data_pagamento` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_contratti` SET `data_bozza` = NULL WHERE `data_bozza` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_contratti` SET `data_accettazione` = NULL WHERE `data_accettazione` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_contratti` SET `data_rifiuto` = NULL WHERE `data_rifiuto` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_contratti` SET `data_conclusione` = NULL WHERE `data_conclusione` = '0000-00-00 00:00:00';
|
||||||
|
|
||||||
|
UPDATE `co_movimenti` SET `data` = NULL WHERE `data` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_movimenti` SET `data_documento` = NULL WHERE `data_documento` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_ordiniservizio` SET `data_scadenza` = NULL WHERE `data_scadenza` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_ordiniservizio_pianificazionefatture` SET `data_scadenza` = NULL WHERE `data_scadenza` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_righe_contratti` SET `data_richiesta` = NULL WHERE `data_richiesta` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_righe_preventivi` SET `data_evasione` = NULL WHERE `data_evasione` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_scadenziario` SET `data_emissione` = NULL WHERE `data_emissione` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_scadenziario` SET `scadenza` = NULL WHERE `scadenza` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `co_scadenziario` SET `data_pagamento` = NULL WHERE `data_pagamento` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `dt_automezzi_tecnici` SET `data_inizio` = NULL WHERE `data_inizio` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `dt_automezzi_tecnici` SET `data_fine` = NULL WHERE `data_fine` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `my_impianto_componenti` SET `data` = NULL WHERE `data` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `my_impianto_componenti` SET `data_sostituzione` = NULL WHERE `data_sostituzione` = '0000-00-00 00:00:00';
|
||||||
|
UPDATE `or_righe_ordini` SET `data_evasione` = NULL WHERE `data_evasione` = '0000-00-00 00:00:00';
|
||||||
|
|
||||||
|
ALTER TABLE `co_documenti` CHANGE `data` `data` date;
|
||||||
|
ALTER TABLE `or_ordini` CHANGE `data` `data` date;
|
||||||
|
ALTER TABLE `dt_ddt` CHANGE `data` `data` date;
|
||||||
|
|
||||||
|
ALTER TABLE `co_preventivi` CHANGE `data_bozza` `data_bozza` date, CHANGE `data_accettazione` `data_accettazione` date, CHANGE `data_rifiuto` `data_rifiuto` date, CHANGE `data_conclusione` `data_conclusione` date, CHANGE `data_pagamento` `data_pagamento` date;
|
||||||
|
ALTER TABLE `co_contratti` CHANGE `data_bozza` `data_bozza` date, CHANGE `data_accettazione` `data_accettazione` date, CHANGE `data_rifiuto` `data_rifiuto` date, CHANGE `data_conclusione` `data_conclusione` date;
|
||||||
|
|
||||||
|
ALTER TABLE `co_movimenti` CHANGE `data` `data` date, CHANGE `data_documento` `data_documento` date;
|
||||||
|
ALTER TABLE `co_ordiniservizio` CHANGE `data_scadenza` `data_scadenza` date;
|
||||||
|
ALTER TABLE `co_ordiniservizio_pianificazionefatture` CHANGE `data_scadenza` `data_scadenza` date;
|
||||||
|
ALTER TABLE `co_righe_contratti` CHANGE `data_richiesta` `data_richiesta` date;
|
||||||
|
ALTER TABLE `co_righe_preventivi` CHANGE `data_evasione` `data_evasione` date;
|
||||||
|
ALTER TABLE `co_scadenziario` CHANGE `data_emissione` `data_emissione` date, CHANGE `scadenza` `scadenza` date, CHANGE `data_pagamento` `data_pagamento` date;
|
||||||
|
ALTER TABLE `dt_automezzi_tecnici` CHANGE `data_inizio` `data_inizio` date, CHANGE `data_fine` `data_fine` date;
|
||||||
|
ALTER TABLE `my_impianto_componenti` CHANGE `data` `data` date, CHANGE `data_sostituzione` `data_sostituzione` date;
|
||||||
|
ALTER TABLE `or_righe_ordini` CHANGE `data_evasione` `data_evasione` date;
|
||||||
|
Loading…
Reference in New Issue
Block a user