diff --git a/app/DataMapper/EDoc/FatturaPA/Allegati.php b/app/DataMapper/EDoc/FatturaPA/Allegati.php new file mode 100644 index 000000000000..76e3825a65e3 --- /dev/null +++ b/app/DataMapper/EDoc/FatturaPA/Allegati.php @@ -0,0 +1,35 @@ + + // + // + // 0-100 + public float $AliquotaIVA; + + //string 2 char options + public string|Optional $TipoCessionePrestazione; + + public CodiceArticolo|Optional $CodiceArticolo; + + // + // + public float|Optional $Quantita; + + //String10Type + public string|Optional $UnitaMisura; + + //date + #[WithTransformer(DateTimeInterfaceTransformer::class, format: 'Y-m-d')] + public \DateTime|Optional $DataInizioPeriodo; + + //date + #[WithTransformer(DateTimeInterfaceTransformer::class, format: 'Y-m-d')] + public \DateTime|Optional $DataFinePeriodo; + + public ScontoMaggiorazione|Optional $ScontoMaggiorazione; + + //4 char options + public string|Optional $Ritenuta; + + //string options + public string|Optional $Natura; + + //string 20 char + public string|Optional $RiferimentoAmministrazione; + + public AltriDatiGestionali|Optional $AltriDatiGestionali; + + +} + diff --git a/app/DataMapper/EDoc/FatturaPA/DettaglioPagamento.php b/app/DataMapper/EDoc/FatturaPA/DettaglioPagamento.php new file mode 100644 index 000000000000..34acfa31fe70 --- /dev/null +++ b/app/DataMapper/EDoc/FatturaPA/DettaglioPagamento.php @@ -0,0 +1,92 @@ + + // + // + public int|Optional $GiorniTerminiPagamento; + + //date + #[WithTransformer(DateTimeInterfaceTransformer::class, format: 'Y-m-d')] + public \Datetime|Optional $DataScadenzaPagamento; + + //String20Type + public string|Optional $CodUfficioPostale; + + //String60LatinType + public string|Optional $CognomeQuietanzante; + + //String60LatinType + public string|Optional $NomeQuietanzante; + + //string [A-Z0-9]{16} + public string|Optional $CFQuietanzante; + + //string {IsBasicLatin}{2,10} + public string|Optional $TitoloQuietanzante; + + //string String80LatinType + public string|Optional $IstitutoFinanziario; + + //[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{11,30} + public string|Optional $IBAN; + + // string [0-9][0-9][0-9][0-9][0-9] + public string|Optional $ABI; + + //[0-9][0-9][0-9][0-9][0-9] + public string|Optional $CAB; + + //[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3}){0,1} + public string|Optional $BIC; + + //Amount2DecimalType + public float|Optional $ScontoPagamentoAnticipato; + + //Date + #[WithTransformer(DateTimeInterfaceTransformer::class, format: 'Y-m-d')] + public string|Optional $DataLimitePagamentoAnticipato; + + //Amount2DecimalType + public float|Optional $PenalitaPagamentiRitardati; + + //date + #[WithTransformer(DateTimeInterfaceTransformer::class, format: 'Y-m-d')] + public \DateTime|Optional $DataDecorrenzaPenale; + + //String60Type + public string|Optional $CodicePagamento; + +} \ No newline at end of file diff --git a/app/DataMapper/EDoc/FatturaPA/FatturaElettronicaBody.php b/app/DataMapper/EDoc/FatturaPA/FatturaElettronicaBody.php index 03eb4229515c..90603edb6aa4 100644 --- a/app/DataMapper/EDoc/FatturaPA/FatturaElettronicaBody.php +++ b/app/DataMapper/EDoc/FatturaPA/FatturaElettronicaBody.php @@ -13,6 +13,9 @@ namespace App\DataMapper\EDoc\FatturaPA; use Spatie\LaravelData\Data; use Spatie\LaravelData\Optional; +use App\DataMapper\EDoc\FatturaPA\DatiVeicoli; +use App\DataMapper\EDoc\FatturaPA\DatiBeniServizi; +use App\DataMapper\EDoc\FatturaPA\Body\DatiGenerali; class FatturaElettronicaBody extends Data { diff --git a/app/DataMapper/EDoc/FatturaPA/Generics/CodiceArticolo.php b/app/DataMapper/EDoc/FatturaPA/Generics/CodiceArticolo.php new file mode 100644 index 000000000000..97d0d0fa1a7d --- /dev/null +++ b/app/DataMapper/EDoc/FatturaPA/Generics/CodiceArticolo.php @@ -0,0 +1,24 @@ +setLegalMonetaryTotal((new LegalMonetaryTotal()) //->setLineExtensionAmount() + ->setTaxInclusiveAmount($taxtotal->getTaxAmount()) ->setTaxExclusiveAmount($taxable) ->setPayableAmount($invoice->balance));