Aggiunti pagamenti mancanti + Fix DatiPagamento import FE
This commit is contained in:
parent
12bd99531f
commit
1a0c9d7bde
|
@ -35,16 +35,16 @@ if ($dir == 'entrata') {
|
|||
<?php
|
||||
|
||||
if ($dir == 'entrata') {
|
||||
$rs2 = $dbo->fetchArray('SELECT piva, codice_fiscale, citta, indirizzo, cap, provincia, id_nazione FROM an_anagrafiche WHERE idanagrafica='.prepare($record['idanagrafica']));
|
||||
$rs2 = $dbo->fetchArray('SELECT piva, codice_fiscale, citta, indirizzo, cap, provincia, id_nazione, tipo FROM an_anagrafiche WHERE idanagrafica='.prepare($record['idanagrafica']));
|
||||
$campi_mancanti = [];
|
||||
|
||||
if ($rs2[0]['piva'] == '') {
|
||||
array_push($campi_mancanti, 'Partita IVA');
|
||||
}
|
||||
/*if ($rs2[0]['codice_fiscale'] == '') {
|
||||
|
||||
if ($rs2[0]['codice_fiscale'] == '' and ($rs2[0]['tipo'] == 'Privato' or $rs2[0]['tipo'] == 'Ente pubblico')) {
|
||||
array_push($campi_mancanti, 'Codice fiscale');
|
||||
}
|
||||
*/
|
||||
else if ($rs2[0]['piva'] == '') {
|
||||
array_push($campi_mancanti, 'Partita IVA');
|
||||
}
|
||||
|
||||
if ($rs2[0]['citta'] == '') {
|
||||
array_push($campi_mancanti, 'Città');
|
||||
}
|
||||
|
|
|
@ -967,15 +967,28 @@ class FatturaElettronica
|
|||
if (!empty($anagrafica['codice_fiscale'])) {
|
||||
$result['CodiceFiscale'] = $anagrafica['codice_fiscale'];
|
||||
}
|
||||
|
||||
$result['Anagrafica'] = [
|
||||
'Denominazione' => $anagrafica['ragione_sociale'],
|
||||
// TODO: 'Nome' => $azienda['ragione_sociale'],
|
||||
// TODO: 'Cognome' => $azienda['ragione_sociale'],
|
||||
// TODO: 'Titolo' => $azienda['ragione_sociale'],
|
||||
// TODO: CodEORI
|
||||
];
|
||||
|
||||
|
||||
if (!empty($anagrafica['nome']) or !empty($anagrafica['cognome'])){
|
||||
|
||||
$result['Anagrafica'] = [
|
||||
//'Denominazione' => $anagrafica['ragione_sociale'],
|
||||
'Nome' => $anagrafica['nome'],
|
||||
'Cognome' => $anagrafica['cognome'],
|
||||
// TODO: 'Titolo' => $anagrafica['ragione_sociale'],
|
||||
// TODO: CodEORI
|
||||
];
|
||||
|
||||
|
||||
}else{
|
||||
$result['Anagrafica'] = [
|
||||
'Denominazione' => $anagrafica['ragione_sociale'],
|
||||
//'Nome' => $anagrafica['nome'],
|
||||
//'Cognome' => $anagrafica['cognome'],
|
||||
// TODO: 'Titolo' => $anagrafica['ragione_sociale'],
|
||||
// TODO: CodEORI
|
||||
];
|
||||
}
|
||||
|
||||
// Informazioni specifiche azienda
|
||||
if ($azienda) {
|
||||
$result['RegimeFiscale'] = setting('Regime Fiscale');
|
||||
|
@ -1194,7 +1207,7 @@ class FatturaElettronica
|
|||
// Importo Totale Documento (2.1.1.9)
|
||||
// Importo totale del documento al netto dell'eventuale sconto e comprensivo di imposta a debito del cessionario / committente
|
||||
$fattura = Modules\Fatture\Fattura::find($documento['id']);
|
||||
$result['ImportoTotaleDocumento'] = $fattura->netto;
|
||||
$result['ImportoTotaleDocumento'] = abs($fattura->netto);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
@ -1477,8 +1490,8 @@ class FatturaElettronica
|
|||
foreach ($riepiloghi_percentuale as $riepilogo) {
|
||||
$iva = [
|
||||
'AliquotaIVA' => $riepilogo['percentuale'],
|
||||
'ImponibileImporto' => $riepilogo['totale'],
|
||||
'Imposta' => $riepilogo['iva'],
|
||||
'ImponibileImporto' => abs($riepilogo['totale']),
|
||||
'Imposta' => abs($riepilogo['iva']),
|
||||
'EsigibilitaIVA' => $riepilogo['esigibilita'],
|
||||
];
|
||||
|
||||
|
|
|
@ -36,37 +36,54 @@ echo '
|
|||
</small>
|
||||
</h4><br>';
|
||||
|
||||
// Pagamenti
|
||||
$pagamenti = $fattura_pa->getBody()['DatiPagamento'];
|
||||
// Se il blocco DatiPagamento è valorizzato (opzionale)
|
||||
if (!empty($fattura_pa->getBody()['DatiPagamento'])){
|
||||
|
||||
$pagamenti = $fattura_pa->getBody()['DatiPagamento'];
|
||||
|
||||
$metodi = $pagamenti['DettaglioPagamento'];
|
||||
$metodi = isset($metodi[0]) ? $metodi : [$metodi];
|
||||
$codice_modalita_pagamento = $metodi[0]['ModalitaPagamento'];
|
||||
|
||||
echo '
|
||||
<h4>'.tr('Pagamento').'</h4>
|
||||
|
||||
<p>'.tr('La fattura importata presenta _NUM_ rate di pagamento con le seguenti scadenze', [
|
||||
'_NUM_' => count($metodi),
|
||||
]).':</p>
|
||||
<ul>';
|
||||
|
||||
// Scadenze di pagamento
|
||||
foreach ($metodi as $metodo) {
|
||||
|
||||
echo '
|
||||
<li>';
|
||||
|
||||
//nodo opzionale per il blocco DatiPagamento
|
||||
if (!empty($metodo['DataScadenzaPagamento'])){
|
||||
echo Translator::dateToLocale($metodo['DataScadenzaPagamento']).' ';
|
||||
}
|
||||
|
||||
echo '('.((!empty($metodo['ModalitaPagamento'])) ? database()->fetchOne('SELECT descrizione FROM fe_modalita_pagamento WHERE codice = '.prepare($metodo['ModalitaPagamento']))['descrizione'] : '' ).')';
|
||||
|
||||
|
||||
echo '
|
||||
</li>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</ul>';
|
||||
|
||||
}
|
||||
|
||||
$metodi = $pagamenti['DettaglioPagamento'];
|
||||
$metodi = isset($metodi[0]) ? $metodi : [$metodi];
|
||||
$codice_modalita_pagamento = $metodi[0]['ModalitaPagamento'];
|
||||
|
||||
// prc '.($pagamenti['CondizioniPagamento'] == 'TP01' ? '!' : '').'= 100 AND
|
||||
$query = 'SELECT id, descrizione FROM co_pagamenti';
|
||||
$query = 'SELECT id, CONCAT (descrizione, IF((codice_modalita_pagamento_fe IS NULL), \"\", CONCAT( \" (\", codice_modalita_pagamento_fe, \")\" ) )) as descrizione FROM co_pagamenti';
|
||||
if (!empty($codice_modalita_pagamento)) {
|
||||
$query .= ' WHERE codice_modalita_pagamento_fe = '.prepare($codice_modalita_pagamento);
|
||||
$query .= ' WHERE codice_modalita_pagamento_fe = '.prepare($codice_modalita_pagamento);
|
||||
}
|
||||
$query .= ' GROUP BY descrizione ORDER BY descrizione ASC';
|
||||
|
||||
echo '
|
||||
<h4>'.tr('Pagamento').'</h4>
|
||||
|
||||
<p>'.tr('La fattura importata presenta _NUM_ rate di pagamento con le seguenti scadenze', [
|
||||
'_NUM_' => count($metodi),
|
||||
]).':</p>
|
||||
<ul>';
|
||||
|
||||
// Scadenze di pagamento
|
||||
foreach ($metodi as $metodo) {
|
||||
echo '
|
||||
<li>'.Translator::dateToLocale($metodo['DataScadenzaPagamento']).'</li>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</ul>';
|
||||
|
||||
|
||||
echo '
|
||||
{[ "type": "select", "label": "'.tr('Pagamento').'", "name": "pagamento", "required": 1, "values": "query='.$query.'" ]}';
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ $settings = [
|
|||
],
|
||||
'header-height' => 35,
|
||||
'footer-height' => 5,
|
||||
'header-font-size' => 12,
|
||||
'header-font-size' => 11,
|
||||
];
|
||||
|
||||
return $settings;
|
||||
|
|
|
@ -54,7 +54,7 @@ echo '
|
|||
</td>
|
||||
<td colspan="2" style="height:10mm;padding-top:2mm;">
|
||||
<p class="small-bold">'.tr('Banca di appoggio', [], ['upper' => true]).'</p>
|
||||
<p>$appoggiobancario$</p>
|
||||
<p><small>$appoggiobancario$</small></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
|
@ -117,7 +117,7 @@ $replaces = array_merge($replaces, [
|
|||
'rootdir' => ROOTDIR,
|
||||
'directory' => Prints::get($id_print)['full_directory'],
|
||||
'footer' => !empty($footer) ? $footer : '',
|
||||
'dicitura_fissa_fattura' => setting('Dicitura fissa fattura'),
|
||||
'dicitura_fissa_fattura' => setting('Dicitura fissa fattura').((!empty(setting('OSMCloud Services API Token'))) ? tr(' Documento privo di valenza fiscale dell\'art 21 dpr 633/72.'): ''),
|
||||
]);
|
||||
|
||||
unset($replace);
|
||||
|
|
|
@ -34,6 +34,7 @@ echo "
|
|||
// RIGHE PREVENTIVO CON ORDINAMENTO UNICO
|
||||
$righe = $dbo->fetchArray("SELECT *,
|
||||
IFNULL((SELECT `codice` FROM `mg_articoli` WHERE `id` = `or_righe_ordini`.`idarticolo`), '') AS codice_articolo,
|
||||
IFNULL((SELECT `immagine` FROM `mg_articoli` WHERE `id` = `or_righe_ordini`.`idarticolo`), '') AS immagine_articolo,
|
||||
(SELECT GROUP_CONCAT(`serial` SEPARATOR ', ') FROM `mg_prodotti` WHERE `id_riga_ordine` = `or_righe_ordini`.`id`) AS seriali,
|
||||
(SELECT `percentuale` FROM `co_iva` WHERE `id` = `or_righe_ordini`.`idiva`) AS perc_iva
|
||||
FROM `or_righe_ordini` WHERE idordine=".prepare($id_record).' ORDER BY `order`');
|
||||
|
@ -44,7 +45,13 @@ foreach ($righe as $r) {
|
|||
|
||||
echo '
|
||||
<tr>
|
||||
<td>
|
||||
<td>';
|
||||
|
||||
if (!empty($r['immagine_articolo'])) {
|
||||
//echo '<img src="files/articoli/'.$r['immagine_articolo'].'" height="120"></img><div class="clearfix" ></div>';
|
||||
}
|
||||
|
||||
echo '
|
||||
'.nl2br($r['descrizione']);
|
||||
|
||||
// Codice articolo
|
||||
|
|
|
@ -62,3 +62,22 @@ UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "field
|
|||
UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `dt_ddt` INNER JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` WHERE 1=1 AND `dir` = ''entrata'' AND `data` >= ''|period_start|'' AND `data` <= ''|period_end|'' HAVING 2=2 ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC,`dt_ddt`.created_at DESC' WHERE `zz_modules`.`name` = 'Ddt di vendita';
|
||||
|
||||
UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `dt_ddt` INNER JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` WHERE 1=1 AND `dir` = ''uscita'' AND `data` >= ''|period_start|'' AND `data` <= ''|period_end|'' HAVING 2=2 ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC, `dt_ddt`.created_at DESC' WHERE `zz_modules`.`id` = 'Ddt di acquisto';
|
||||
|
||||
-- Aggiunti pagamenti mancanti Assegno circolare,Contanti presso Tesoreria, Vaglia cambiario, Bollettino bancario, RID, RID utenze, RID veloce, MAV, Quietanza erario, Giroconto su conti di contabilità speciale, Domiciliazione bancaria, Domiciliazione postale, Bollettino di c/c postale, SEPA Direct Debit, SEPA Direct Debit CORE, SEPA Direct Debit B2B, Trattenuta su somme già riscosse
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Assegno circolare', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP03');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Contanti presso Tesoreria', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP04');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Vaglia cambiario', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP06');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Bollettino bancario', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP07');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'RID', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP09');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'RID utenze', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP10');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'RID veloce', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP11');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'MAV', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP13');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Quietanza erario', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP14');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Giroconto su conti di contabilità speciale', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP15');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Domiciliazione bancaria', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP16');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Domiciliazione postale', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP17');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Bollettino di c/c postale', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP18');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'SEPA Direct Debit', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP19');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'SEPA Direct Debit CORE', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP20');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'SEPA Direct Debit B2B', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP21');
|
||||
INSERT INTO `co_pagamenti` (`id`, `descrizione`, `giorno`, `num_giorni`, `prc`, `created_at`, `updated_at`, `idconto_vendite`, `idconto_acquisti`, `codice_modalita_pagamento_fe`) VALUES (NULL, 'Trattenuta su somme già riscosse', '0', '1', '100', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, 'MP22');
|
||||
|
|
Loading…
Reference in New Issue