Compare commits
6 Commits
15c4edd9ed
...
ec2b704eb3
Author | SHA1 | Date |
---|---|---|
valentina | ec2b704eb3 | |
Luca | bf7f4131de | |
valentina | 3ab91923be | |
valentina | 24616fa7b3 | |
valentina | 8f9becdac1 | |
valentina | 9b7f4b4c3b |
|
@ -457,9 +457,10 @@ if (Auth::check()) {
|
|||
|
||||
<!-- Main Sidebar Container -->
|
||||
<aside class="main-sidebar '.$theme.' elevation-4">
|
||||
<a href="'.tr('https://www.openstamanager.com').'" class="brand-link" title="'.tr("Il gestionale open source per l'assistenza tecnica e la fatturazione").'" target="_blank">
|
||||
<img src="'.$rootdir.'/assets/dist/img/logo_completo.png" alt="'.tr("Il gestionale open source per l'assistenza tecnica e la fatturazione").'" class="img-fluid">
|
||||
<a href="'.tr('https://www.openstamanager.com').'" class="brand-link" title="'.tr("Il gestionale open source per l'assistenza tecnica e la fatturazione elettronica"). '" target="_blank">
|
||||
<img src="'. $rootdir . '/assets/dist/img/logo_completo.png" class="brand-image" alt="'.tr("Il gestionale open source per l'assistenza tecnica e la fatturazione elettronica"). '">
|
||||
<span class="brand-text font-weight-light"> </span>
|
||||
|
||||
</a>
|
||||
|
||||
<!-- Sidebar -->
|
||||
|
|
|
@ -21,7 +21,7 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
// Schermata di caricamento delle informazioni
|
||||
echo '
|
||||
<button class="btn btn-lg btn-block" onclick="avviaControlli(this);">
|
||||
<button class="btn btn-lg btn-block btn-primary" onclick="avviaControlli(this);">
|
||||
<i class="fa fa-cog"></i> '.tr('Avvia controlli').'
|
||||
</button>
|
||||
|
||||
|
|
|
@ -213,9 +213,12 @@ class Fattura extends Document
|
|||
$model->note = implode("\n", $notes);
|
||||
|
||||
if ($tipo_documento->getTranslation('title') == 'Fattura accompagnatoria di vendita') {
|
||||
$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'];
|
||||
$porto = database()->fetchOne('SELECT `id` FROM `dt_porto` WHERE `predefined` = 1')['id'];
|
||||
$model->idporto = $porto ?: '';
|
||||
$causalet = database()->fetchOne('SELECT `id` FROM `dt_causalet` WHERE `predefined` = 1')['id'];
|
||||
$model->idcausalet = $causalet ?: '';
|
||||
$spedizione = database()->fetchOne('SELECT `id` FROM `dt_spedizione` WHERE `predefined` = 1')['id'];
|
||||
$model->idspedizione = $spedizione ?: '';
|
||||
}
|
||||
|
||||
$model->save();
|
||||
|
|
|
@ -24,21 +24,21 @@ use Plugins\ImportFE\Interaction;
|
|||
|
||||
if (!empty($id_record)) {
|
||||
$files = Interaction::getFileList();
|
||||
$record = $files[$id_record - 1];
|
||||
$record = $files[$id_record - 1] ?? null;
|
||||
|
||||
$has_next = isset($files[$id_record]);
|
||||
|
||||
try {
|
||||
$fattura_pa = FatturaElettronica::manage($record['name']);
|
||||
$fattura_pa = FatturaElettronica::manage($record['name'] ?? '');
|
||||
$anagrafica = $fattura_pa->findAnagrafica();
|
||||
} catch (UnexpectedValueException) {
|
||||
} catch (UnexpectedValueException $e) {
|
||||
$imported = true;
|
||||
} catch (Exception) {
|
||||
} catch (Exception $e) {
|
||||
$error = true;
|
||||
}
|
||||
|
||||
// Rimozione .p7m dal nome del file (causa eventuale estrazione da ZIP)
|
||||
$record['name'] = preg_replace('/(.+)\.p7m$/i', '{1}', $record['name']);
|
||||
$record['name'] = preg_replace('/(.+)\.p7m$/i', '$1', $record['name'] ?? '');
|
||||
|
||||
if (empty($record)) {
|
||||
flash()->warning(tr('Nessuna fattura da importare!'));
|
||||
|
|
|
@ -202,48 +202,27 @@ class FatturaElettronica
|
|||
]));
|
||||
}
|
||||
|
||||
public function findAnagrafica($type = 'Fornitore')
|
||||
public function findAnagrafica()
|
||||
{
|
||||
$info = $this->getAnagrafe();
|
||||
|
||||
$anagrafica = Anagrafica::where('tipo', $type);
|
||||
|
||||
if (!empty($info['partita_iva']) && !empty($info['codice_fiscale'])) {
|
||||
$anagrafica->where('piva', $info['partita_iva'])
|
||||
->orWhere('codice_fiscale', $info['codice_fiscale'])
|
||||
->orWhere('piva', 'like', '__'.$info['partita_iva'])
|
||||
->orwhere('codice_fiscale', 'like', '__'.$info['codice_fiscale']);
|
||||
$anagrafica = Anagrafica::where('piva', $info['partita_iva'])
|
||||
->orWhere('codice_fiscale', $info['codice_fiscale']);
|
||||
} elseif (!empty($info['codice_fiscale'])) {
|
||||
$anagrafica->where('codice_fiscale', $info['codice_fiscale'])
|
||||
->orWhere('codice_fiscale', 'like', '__'.$info['codice_fiscale']);
|
||||
$anagrafica = Anagrafica::where('codice_fiscale', $info['codice_fiscale']);
|
||||
} elseif (!empty($info['partita_iva'])) {
|
||||
$anagrafica->where('piva', $info['partita_iva'])
|
||||
->orWhere('piva', 'like', '__'.$info['partita_iva']);
|
||||
$anagrafica = Anagrafica::where('piva', '=', $info['partita_iva']);
|
||||
}
|
||||
|
||||
$anagrafica = $anagrafica->get();
|
||||
$anagrafica = $anagrafica->get()->first();
|
||||
|
||||
// Se non trovo l'anagrafica tra i fornitori, provo a ricercarla anche tra i clienti
|
||||
if (empty($anagrafica)) {
|
||||
$type = 'Cliente';
|
||||
$is_fornitore = $anagrafica->isTipo('Fornitore');
|
||||
$is_cliente = $anagrafica->isTipo('Cliente');
|
||||
|
||||
$anagrafica = Anagrafica::where('tipo', $type);
|
||||
|
||||
if (!empty($info['partita_iva']) && !empty($info['codice_fiscale'])) {
|
||||
$anagrafica->where('piva', $info['partita_iva'])
|
||||
->orWhere('codice_fiscale', $info['codice_fiscale'])
|
||||
->orWhere('piva', 'like', '__'.$info['partita_iva'])
|
||||
->orwhere('codice_fiscale', 'like', '__'.$info['codice_fiscale']);
|
||||
} elseif (!empty($info['codice_fiscale'])) {
|
||||
$anagrafica->where('codice_fiscale', $info['codice_fiscale'])
|
||||
->orWhere('codice_fiscale', 'like', '__'.$info['codice_fiscale']);
|
||||
} elseif (!empty($info['partita_iva'])) {
|
||||
$anagrafica->where('piva', $info['partita_iva'])
|
||||
->orWhere('piva', 'like', '__'.$info['partita_iva']);
|
||||
}
|
||||
}
|
||||
|
||||
return $anagrafica->first();
|
||||
if ($is_fornitore || $is_cliente) {
|
||||
return $anagrafica;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
*/
|
||||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
use Plugins\ImportFE\FatturaElettronica;
|
||||
|
||||
$directory = FatturaElettronica::getImportDirectory();
|
||||
$filename = get('filename');
|
||||
|
|
|
@ -106,7 +106,7 @@ foreach ($righe as $riga) {
|
|||
}
|
||||
$r['descrizione'] = str_replace('Rif. '.strtolower((string) $key), '', $r['descrizione']);
|
||||
preg_match("/Rif\.(.*)/s", $r['descrizione'], $rif2);
|
||||
$r['descrizione'] = str_replace('Rif.'.strtolower($rif2[1]), '', $r['descrizione']);
|
||||
$r['descrizione'] = str_replace('Rif.'.strtolower($rif2[1]?:''), '', $r['descrizione']);
|
||||
if (!empty($rif2)) {
|
||||
$text .= '<b>'.$rif2[0].'</b>';
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue