diff --git a/CHANGELOG.md b/CHANGELOG.md index 6fdb2bb5b..fca2f69ea 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,7 @@ Il formato utilizzato รจ basato sulle linee guida di [Keep a Changelog](http://k ### Aggiunto (Added) - Aggiunto modal in fase di **Stampa Bilancio** per visualizzare o meno l'elenco analitico dei clienti e fornitori + - Aggiunta scelta del tipo documento in fase di creazione fattura da un altro documento ### Modificato (Changed) ### Fixed diff --git a/include/common/importa.php b/include/common/importa.php index 8efbfd68a..7bc406a18 100755 --- a/include/common/importa.php +++ b/include/common/importa.php @@ -89,17 +89,37 @@ if (!empty($options['create_document'])) { $stato_predefinito = $database->fetchOne("SELECT id FROM co_statidocumento WHERE descrizione = 'Bozza'"); + if(!empty($options['reversed'])){ + $idtipodocumento = $dbo->selectOne('co_tipidocumento', ['id'], [ + 'dir' => $dir, + 'descrizione' => 'Nota di credito', + ])['id']; + } elseif(in_array($original_module['name'], ['Ddt di vendita', 'Ddt di acquisto'])){ + $idtipodocumento = $dbo->selectOne('co_tipidocumento', ['id'], [ + 'dir' => $dir, + 'descrizione' => ($dir=='uscita' ? 'Fattura differita di acquisto' : 'Fattura differita di vendita'), + ])['id']; + } else{ + $idtipodocumento = $dbo->selectOne('co_tipidocumento', ['id'], [ + 'predefined' => 1, + 'dir' => $dir, + ])['id']; + } + echo ' -
{[ "type": "select", "label": "'.tr('Stato').'", "name": "id_stato", "required": 1, "values": "query=SELECT * FROM co_statidocumento WHERE descrizione IN (\'Emessa\', \'Bozza\')", "value": "'.$stato_predefinito['id'].'"]}
-
+
+ {[ "type": "select", "label": "'.tr('Tipo documento').'", "name": "idtipodocumento", "required": 1, "values": "query=SELECT id, CONCAT(codice_tipo_documento_fe, \' - \', descrizione) AS descrizione FROM co_tipidocumento WHERE enabled = 1 AND dir = '.prepare($dir).' ORDER BY codice_tipo_documento_fe", "value": "'.$idtipodocumento.'" ]} +
+ +
{[ "type": "select", "label": "'.tr('Ritenuta contributi').'", "name": "id_ritenuta_contributi", "value": "$id_ritenuta_contributi$", "values": "query=SELECT * FROM co_ritenuta_contributi" ]}
-
+
{[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_segment", "required": 1, "values": "query=SELECT id, name AS descrizione FROM zz_segments WHERE id_module='.prepare($final_module['id']).' ORDER BY name", "value": "'.$id_segment.'" ]}
'; } diff --git a/modules/fatture/actions.php b/modules/fatture/actions.php index e06036c89..9a70e0fc1 100755 --- a/modules/fatture/actions.php +++ b/modules/fatture/actions.php @@ -687,7 +687,6 @@ switch (post('op')) { case 'add_documento': $class = post('class'); $id_documento = post('id_documento'); - $reversed = post('reversed'); // Individuazione del documento originale if (!is_subclass_of($class, \Common\Document::class)) { @@ -702,18 +701,7 @@ switch (post('op')) { // Creazione della fattura al volo if (post('create_document') == 'on') { - $descrizione = ($documento->direzione == 'entrata') ? 'Fattura immediata di vendita' : 'Fattura immediata di acquisto'; - - // Fattura differita in caso di importazione da DDT - if ($documento instanceof DDT) { - $descrizione = ($documento->direzione == 'entrata') ? 'Fattura differita di vendita' : 'Fattura differita di acquisto'; - } - - if ($reversed) { - $tipo = Tipo::where('descrizione', 'Nota di credito')->where('dir', '!=', $documento->direzione)->first(); - } else { - $tipo = Tipo::where('descrizione', $descrizione)->first(); - } + $tipo = Tipo::find(post('idtipodocumento')); $fattura = Fattura::build($documento->anagrafica, $tipo, post('data'), post('id_segment'));