Compare commits

...

3 Commits

Author SHA1 Message Date
MatteoPistorello 5f51c4af16 Fix stampa registro iva 2021-07-26 17:47:30 +02:00
MatteoPistorello 64571445da Merge branch 'master' of https://github.com/devcode-it/openstamanager 2021-07-26 17:32:10 +02:00
MatteoPistorello a6c3bab246 Aggiunto riquadro destinazione diversa nelle stampe documenti 2021-07-26 17:32:07 +02:00
10 changed files with 135 additions and 12 deletions

View File

@ -29,6 +29,7 @@ echo '
<div class="row">
<div class="col-xs-6">
<div class="text-center" style="height:5mm;">
<br><br>
<b>'.tr('Contratto num. _NUM_ del _DATE_', [
'_NUM_' => $documento['numero'],
'_DATE_' => Translator::dateToLocale($documento['data_bozza']),
@ -58,7 +59,8 @@ echo '
<td colspan=2 class="border-full" style="height:16mm;">
<p class="small-bold">'.tr('Spett.le', [], ['upper' => true]).'</p>
<p>$c_ragionesociale$</p>
<p>$c_indirizzo$ $c_citta_full$</p>
<p>$c_indirizzo$</p>
<p>$c_citta_full$</p>
</td>
</tr>
@ -78,7 +80,18 @@ echo '
<td class="border-right border-bottom text-right">
<small>$c_codicefiscale$</small>
</td>
</tr>
</tr>';
if (!empty($destinazione)) {
echo '
<tr>
<td colspan=2 class="border-full" style="height:16mm;">
<p class="small-bold">'.tr('Destinazione diversa', [], ['upper' => true]).'</p>
<small>'.$destinazione.'</small>
</td>
</tr>';
}
echo '
</table>
</div>
</div>';

View File

@ -24,4 +24,35 @@ use Modules\Contratti\Contratto;
$documento = Contratto::find($id_record);
$id_cliente = $documento['idanagrafica'];
$id_sede = $documento['idsede'];
// Leggo i dati della destinazione (se 0=sede legale, se!=altra sede da leggere da tabella an_sedi)
$destinazione = '';
if (!empty($documento->idsede)) {
$rsd = $dbo->fetchArray('SELECT (SELECT codice FROM an_anagrafiche WHERE idanagrafica=an_sedi.idanagrafica) AS codice, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=an_sedi.idanagrafica) AS ragione_sociale, nomesede, indirizzo, indirizzo2, cap, citta, provincia, piva, codice_fiscale, id_nazione FROM an_sedi WHERE idanagrafica='.prepare($id_cliente).' AND id='.prepare($documento->idsede));
if (!empty($rsd[0]['nomesede'])) {
$destinazione .= $rsd[0]['nomesede'].'<br/>';
}
if (!empty($rsd[0]['indirizzo'])) {
$destinazione .= $rsd[0]['indirizzo'].'<br/>';
}
if (!empty($rsd[0]['indirizzo2'])) {
$destinazione .= $rsd[0]['indirizzo2'].'<br/>';
}
if (!empty($rsd[0]['cap'])) {
$destinazione .= $rsd[0]['cap'].' ';
}
if (!empty($rsd[0]['citta'])) {
$destinazione .= $rsd[0]['citta'];
}
if (!empty($rsd[0]['provincia'])) {
$destinazione .= ' ('.$rsd[0]['provincia'].')';
}
if (!empty($rsd[0]['id_nazione'])) {
$nazione = $database->fetchOne('SELECT * FROM an_nazioni WHERE id = '.prepare($rsd[0]['id_nazione']));
if ($nazione['iso2'] != 'IT') {
$destinazione .= ' - '.$nazione['name'];
}
}
}

View File

@ -52,7 +52,6 @@ $module_name = ($record['dir'] == 'entrata') ? 'Fatture di vendita' : 'Fatture d
$id_cliente = $record['idanagrafica'];
$tipo_cliente = $record['tipo_cliente'];
$id_sede = $record['idsede_destinazione'];
$tipo_doc = $record['tipo_doc'];
$numero = !empty($record['numero_esterno']) ? $record['numero_esterno'] : $record['numero'];

View File

@ -70,7 +70,17 @@ $default_header$
<p>$c_indirizzo$<br> $c_citta_full$</p>
<p>$c_telefono$ $c_cellulare$</p>
</td>
</tr>
</tr>';
if (!empty($destinazione)) {
echo '
<tr>
<td class="border-full" style="height:16mm;">
<p class="small-bold">'.tr('Destinazione diversa', [], ['upper' => true]).'</p>
'.$destinazione.'
</td>
</tr>';
}
echo '
</table>
</div>

View File

@ -24,7 +24,37 @@ use Modules\Ordini\Ordine;
$documento = Ordine::find($id_record);
$id_cliente = $documento['idanagrafica'];
$id_sede = $documento['idsede'];
// Leggo i dati della destinazione (se 0=sede legale, se!=altra sede da leggere da tabella an_sedi)
$destinazione = '';
if (!empty($documento->idsede)) {
$rsd = $dbo->fetchArray('SELECT (SELECT codice FROM an_anagrafiche WHERE idanagrafica=an_sedi.idanagrafica) AS codice, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=an_sedi.idanagrafica) AS ragione_sociale, nomesede, indirizzo, indirizzo2, cap, citta, provincia, piva, codice_fiscale, id_nazione FROM an_sedi WHERE idanagrafica='.prepare($id_cliente).' AND id='.prepare($documento->idsede));
if (!empty($rsd[0]['nomesede'])) {
$destinazione .= $rsd[0]['nomesede'].'<br/>';
}
if (!empty($rsd[0]['indirizzo'])) {
$destinazione .= $rsd[0]['indirizzo'].'<br/>';
}
if (!empty($rsd[0]['indirizzo2'])) {
$destinazione .= $rsd[0]['indirizzo2'].'<br/>';
}
if (!empty($rsd[0]['cap'])) {
$destinazione .= $rsd[0]['cap'].' ';
}
if (!empty($rsd[0]['citta'])) {
$destinazione .= $rsd[0]['citta'];
}
if (!empty($rsd[0]['provincia'])) {
$destinazione .= ' ('.$rsd[0]['provincia'].')';
}
if (!empty($rsd[0]['id_nazione'])) {
$nazione = $database->fetchOne('SELECT * FROM an_nazioni WHERE id = '.prepare($rsd[0]['id_nazione']));
if ($nazione['iso2'] != 'IT') {
$destinazione .= ' - '.$nazione['name'];
}
}
}
$numero = !empty($documento['numero_esterno']) ? $documento['numero_esterno'] : $documento['numero'];
$pagamento = $dbo->fetchOne('SELECT * FROM co_pagamenti WHERE id = '.prepare($documento->idpagamento));

View File

@ -109,7 +109,17 @@ echo '
<td class="border-right border-bottom text-right">
<small>$c_codicefiscale$</small>
</td>
</tr>
</tr>';
if (!empty($destinazione)) {
echo '
<tr>
<td colspan="2" class="border-full" style="height:16mm;">
<p class="small-bold">'.tr('Destinazione diversa', [], ['upper' => true]).'</p>
<small>'.$destinazione.'</small>
</td>
</tr>';
}
echo '
</table>
</div>
</div>';

View File

@ -24,4 +24,34 @@ use Modules\Preventivi\Preventivo;
$documento = Preventivo::find($id_record);
$id_cliente = $documento['idanagrafica'];
$id_sede = $documento['idsede'];
// Leggo i dati della destinazione (se 0=sede legale, se!=altra sede da leggere da tabella an_sedi)
$destinazione = '';
if (!empty($documento->idsede)) {
$rsd = $dbo->fetchArray('SELECT (SELECT codice FROM an_anagrafiche WHERE idanagrafica=an_sedi.idanagrafica) AS codice, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=an_sedi.idanagrafica) AS ragione_sociale, nomesede, indirizzo, indirizzo2, cap, citta, provincia, piva, codice_fiscale, id_nazione FROM an_sedi WHERE idanagrafica='.prepare($id_cliente).' AND id='.prepare($documento->idsede));
if (!empty($rsd[0]['nomesede'])) {
$destinazione .= $rsd[0]['nomesede'].'<br/>';
}
if (!empty($rsd[0]['indirizzo'])) {
$destinazione .= $rsd[0]['indirizzo'].'<br/>';
}
if (!empty($rsd[0]['indirizzo2'])) {
$destinazione .= $rsd[0]['indirizzo2'].'<br/>';
}
if (!empty($rsd[0]['cap'])) {
$destinazione .= $rsd[0]['cap'].' ';
}
if (!empty($rsd[0]['citta'])) {
$destinazione .= $rsd[0]['citta'];
}
if (!empty($rsd[0]['provincia'])) {
$destinazione .= ' ('.$rsd[0]['provincia'].')';
}
if (!empty($rsd[0]['id_nazione'])) {
$nazione = $database->fetchOne('SELECT * FROM an_nazioni WHERE id = '.prepare($rsd[0]['id_nazione']));
if ($nazione['iso2'] != 'IT') {
$destinazione .= ' - '.$nazione['name'];
}
}
}

View File

@ -46,9 +46,9 @@ FROM co_movimenti
INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id
INNER JOIN co_iva ON co_righe_documenti.idiva=co_iva.id
INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = co_documenti.idanagrafica
WHERE dir = '.prepare($dir).' AND idstatodocumento NOT IN (SELECT id FROM co_statidocumento WHERE descrizione="Bozza" OR descrizione="Annullata") AND is_descrizione = 0 AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' AND '.((!empty($id_sezionale)) ? 'co_documenti.id_segment = '.prepare($id_sezionale).'' : '1=1').'
WHERE dir = '.prepare($dir).' AND idstatodocumento NOT IN (SELECT id FROM co_statidocumento WHERE descrizione="Bozza" OR descrizione="Annullata") AND is_descrizione = 0 AND co_documenti.data_registrazione >= '.prepare($date_start).' AND co_documenti.data_registrazione <= '.prepare($date_end).' AND '.((!empty($id_sezionale)) ? 'co_documenti.id_segment = '.prepare($id_sezionale).'' : '1=1').'
GROUP BY co_documenti.id, co_righe_documenti.idiva
ORDER BY CAST(co_documenti.'.(($dir == 'entrata') ? 'data' : 'numero').' AS '.(($dir == 'entrata') ? 'DATE' : 'UNSIGNED').'), co_documenti.'.(($dir == 'entrata') ? 'numero_esterno' : 'data_competenza');
ORDER BY CAST(co_documenti.'.(($dir == 'entrata') ? 'data' : 'numero').' AS '.(($dir == 'entrata') ? 'DATE' : 'UNSIGNED').'), co_documenti.'.(($dir == 'entrata') ? 'numero_esterno' : 'data_registrazione');
$records = $dbo->fetchArray($query);
// Sostituzioni specifiche

View File

@ -24,7 +24,7 @@ echo '
echo '
<td>'.str_pad($record['idmovimenti'], 8, '0', STR_PAD_LEFT).'</td>
<td>'.Translator::datetoLocale($record['data_competenza']).'</td>
<td>'.Translator::datetoLocale($record['data_registrazione']).'</td>
<td>'.$record['numero_esterno'].'</td>
<td>'.Translator::datetoLocale($record['data']).'</td>
<td>'.$record['codice_tipo_documento_fe'].'</td>

View File

@ -49,7 +49,7 @@ echo '<h4><b>'.$titolo.'</b></h4>
<thead>
<tr>
<th>'.tr('Prot.').'</th>
<th>'.tr('Data comp.').'</th>
<th>'.tr('Data reg.').'</th>
<th>'.tr('N<sup>o</sup>&nbsp;doc.').'</th>
<th>'.tr('Data doc.').'</th>
<th>'.tr('Tipo').'</th>