diff --git a/plugins/importFE/generate.php b/plugins/importFE/generate.php
index d2bec2936..345352106 100755
--- a/plugins/importFE/generate.php
+++ b/plugins/importFE/generate.php
@@ -146,7 +146,7 @@ echo '
'.$ragione_sociale.'
- '.(empty($anagrafica) ? ''.tr('Nuova anagrafica').'' : ''.Modules::link('Anagrafiche', $anagrafica->id, '', null, '')).'
+ '.(empty($anagrafica) ? ''.tr('Nuova anagrafica').'' : ''.Modules::link('Anagrafiche', $anagrafica->id, '', null, '').'').'
'.(!empty($codice_fiscale) ? (tr('Codice Fiscale').': '.$codice_fiscale.'
') : '').'
diff --git a/plugins/importFE/src/FatturaElettronica.php b/plugins/importFE/src/FatturaElettronica.php
index 265f2c51b..49d065356 100755
--- a/plugins/importFE/src/FatturaElettronica.php
+++ b/plugins/importFE/src/FatturaElettronica.php
@@ -213,13 +213,44 @@ class FatturaElettronica
if (!empty($info['partita_iva']) && !empty($info['codice_fiscale'])) {
$anagrafica->where('piva', $info['partita_iva'])
- ->orWhere('codice_fiscale', $info['codice_fiscale']);
+ ->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']);
+ $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']);
+ $anagrafica->where('piva', $info['partita_iva'])
+ ->orWhere('piva', 'like', '__'.$info['partita_iva']);
}
+ //Se non trovo l'anagrafica tra i fornitori, provo a ricercarla anche tra i clienti
+ if (empty($anagrafica->first())){
+
+ $type = 'Cliente';
+
+ $tipologia = TipoAnagrafica::where('descrizione', $type)->first();
+
+ $anagrafica = Anagrafica::whereHas('tipi', function ($query) use ($tipologia) {
+ $query->where('an_tipianagrafiche.idtipoanagrafica', '=', $tipologia->id);
+ });
+
+ 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();
}