mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-06-23 20:00:33 -04:00
Updates for e-invoicing
This commit is contained in:
parent
8b8a5e3148
commit
f85e96c3a6
@ -307,7 +307,7 @@ class Peppol extends AbstractService
|
|||||||
|
|
||||||
if($this->invoice->e_invoice) {
|
if($this->invoice->e_invoice) {
|
||||||
|
|
||||||
$this->p_invoice = $this->e->decode('Peppol', json_encode($this->invoice->e_invoice), 'json');
|
$this->p_invoice = $this->e->decode('Peppol', json_encode($this->invoice->e_invoice->Invoice), 'json');
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
|
|
||||||
@ -402,7 +402,7 @@ class Peppol extends AbstractService
|
|||||||
*/
|
*/
|
||||||
public function toArray(): array
|
public function toArray(): array
|
||||||
{
|
{
|
||||||
return json_decode($this->toJson(), true);
|
return ['Invoice' => json_decode($this->toJson(), true)];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1046,32 +1046,50 @@ class Peppol extends AbstractService
|
|||||||
*/
|
*/
|
||||||
public function setInvoiceDefaults(): self
|
public function setInvoiceDefaults(): self
|
||||||
{
|
{
|
||||||
$settings = [
|
|
||||||
'AccountingCostCode' => 7,
|
|
||||||
'AccountingCost' => 7,
|
|
||||||
'BuyerReference' => 6,
|
|
||||||
'AccountingSupplierParty' => 1,
|
|
||||||
'AccountingCustomerParty' => 2,
|
|
||||||
'PayeeParty' => 1,
|
|
||||||
'BuyerCustomerParty' => 2,
|
|
||||||
'SellerSupplierParty' => 1,
|
|
||||||
'TaxRepresentativeParty' => 1,
|
|
||||||
'Delivery' => 1,
|
|
||||||
'DeliveryTerms' => 7,
|
|
||||||
'PaymentMeans' => 7,
|
|
||||||
'PaymentTerms' => 7,
|
|
||||||
];
|
|
||||||
|
|
||||||
//only scans for top level props
|
// Stub new invoice with company settings.
|
||||||
foreach($settings as $prop => $visibility) {
|
if($this->_company_settings)
|
||||||
|
{
|
||||||
if($prop_value = $this->getSetting($prop)) {
|
foreach(get_object_vars($this->_company_settings) as $prop => $value){
|
||||||
$this->p_invoice->{$prop} = $prop_value;
|
$this->p_invoice->{$prop} = $value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
// Overwrite with any client level settings
|
||||||
|
if($this->_client_settings)
|
||||||
|
{
|
||||||
|
foreach (get_object_vars($this->_client_settings) as $prop => $value) {
|
||||||
|
$this->p_invoice->{$prop} = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return $this;
|
// Plucks special overriding properties scanning the correct settings level
|
||||||
|
$settings = [
|
||||||
|
'AccountingCostCode' => 7,
|
||||||
|
'AccountingCost' => 7,
|
||||||
|
'BuyerReference' => 6,
|
||||||
|
'AccountingSupplierParty' => 1,
|
||||||
|
'AccountingCustomerParty' => 2,
|
||||||
|
'PayeeParty' => 1,
|
||||||
|
'BuyerCustomerParty' => 2,
|
||||||
|
'SellerSupplierParty' => 1,
|
||||||
|
'TaxRepresentativeParty' => 1,
|
||||||
|
'Delivery' => 1,
|
||||||
|
'DeliveryTerms' => 7,
|
||||||
|
'PaymentMeans' => 7,
|
||||||
|
'PaymentTerms' => 7,
|
||||||
|
];
|
||||||
|
|
||||||
|
//only scans for top level props
|
||||||
|
foreach($settings as $prop => $visibility) {
|
||||||
|
|
||||||
|
if($prop_value = $this->getSetting($prop)) {
|
||||||
|
$this->p_invoice->{$prop} = $prop_value;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user