diff --git a/src/DataGroup/EmptyElement/EmptyLine.php b/src/DataGroup/EmptyElement/EmptyLine.php new file mode 100644 index 00000000..5a8f9dda --- /dev/null +++ b/src/DataGroup/EmptyElement/EmptyLine.php @@ -0,0 +1,18 @@ +getUltimateDebtor() ?: new EmptyAddress(), $this->getPaymentReference(), $this->getAdditionalInformation() ?: new EmptyAdditionalInformation(), + $this->getPossibleEmptyLine(), $this->getAlternativeSchemes() ]; @@ -197,6 +199,17 @@ private function getQrCodeContent(): string return implode("\n", $qrCodeStringElements); } + private function getPossibleEmptyLine(): ?EmptyLine + { + if ($this->getAlternativeSchemes()) { + if (null === $this->getAdditionalInformation()?->getBillInformation()) { + return new EmptyLine(); + } + } + + return null; + } + /** * @param list> $elements * @return list diff --git a/tests/TestData/FpdfOutput/qr-alternative-schemes.pdf b/tests/TestData/FpdfOutput/qr-alternative-schemes.pdf index 0e0f6308..57ab3ff5 100644 Binary files a/tests/TestData/FpdfOutput/qr-alternative-schemes.pdf and b/tests/TestData/FpdfOutput/qr-alternative-schemes.pdf differ diff --git a/tests/TestData/FpdfOutput/qr-alternative-schemes.print.pdf b/tests/TestData/FpdfOutput/qr-alternative-schemes.print.pdf index fe404c66..1d6a90b5 100644 Binary files a/tests/TestData/FpdfOutput/qr-alternative-schemes.print.pdf and b/tests/TestData/FpdfOutput/qr-alternative-schemes.print.pdf differ diff --git a/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.html b/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.html index ffd21feb..19e54f72 100644 --- a/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.html +++ b/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.html @@ -204,7 +204,7 @@

Acceptance point

Payment part

- +

Currency

CHF

diff --git a/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.print.html b/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.print.html index a082b555..45fbae5a 100644 --- a/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.print.html +++ b/tests/TestData/HtmlOutput/qr-alternative-schemes.svg.print.html @@ -214,7 +214,7 @@

Acceptance point

Payment part

- +

Currency

CHF

diff --git a/tests/TestData/QrCodes/TestDataTest.php b/tests/TestData/QrCodes/TestDataTest.php index 179085ea..0df88bc7 100644 --- a/tests/TestData/QrCodes/TestDataTest.php +++ b/tests/TestData/QrCodes/TestDataTest.php @@ -24,7 +24,7 @@ public function qrFileProvider(): array { return [ [__DIR__ . '/qr-additional-information.png', '5089db74d380d6ece97d02c86cb35e2d'], - [__DIR__ . '/qr-alternative-schemes.png', 'd34aeb0d10da0663a5dfd9df54503e71'], + [__DIR__ . '/qr-alternative-schemes.png', '0ac1061daa0114ba49708a5593471da0'], [__DIR__ . '/qr-full-set.png', 'b52be79babcc58485ee68fb4f722657c'], [__DIR__ . '/qr-international-ultimate-debtor.png', 'c56676e8c98f3ba54fac959c450a0995'], [__DIR__ . '/qr-minimal-setup.png', '72911d0c7d23298aeb14e4960204d6e0'], @@ -37,7 +37,7 @@ public function qrFileProvider(): array [__DIR__ . '/qr-payment-reference-scor.png', '7abd60316b137fa472165faff8e4a28c'], [__DIR__ . '/qr-ultimate-debtor.png', 'ed279b73f429a8d9960b8dcb94c2c429'], - [__DIR__ . '/proof-of-validation.png', 'a50bc5625703d22da79b46880ff3aef4'], + [__DIR__ . '/proof-of-validation.png', 'f40119eaf7bf58159f9da521e51f9278'], ]; } } diff --git a/tests/TestData/QrCodes/proof-of-validation.png b/tests/TestData/QrCodes/proof-of-validation.png index 2bb3b60e..e13b3102 100644 Binary files a/tests/TestData/QrCodes/proof-of-validation.png and b/tests/TestData/QrCodes/proof-of-validation.png differ diff --git a/tests/TestData/QrCodes/qr-alternative-schemes.png b/tests/TestData/QrCodes/qr-alternative-schemes.png index c7356387..ff87dc0c 100644 Binary files a/tests/TestData/QrCodes/qr-alternative-schemes.png and b/tests/TestData/QrCodes/qr-alternative-schemes.png differ diff --git a/tests/TestData/QrCodes/qr-alternative-schemes.txt b/tests/TestData/QrCodes/qr-alternative-schemes.txt index 1dbbe2c8..0d729fe3 100644 --- a/tests/TestData/QrCodes/qr-alternative-schemes.txt +++ b/tests/TestData/QrCodes/qr-alternative-schemes.txt @@ -29,5 +29,6 @@ QRR 123456789012345678901234567 EPD + CC/XRPL/10/bUuK6fwHtfZ3HGAgKvEV7Y5TzHEu8ChUj9 CC/XRPL/10/bUuK6fwHtfZ3HGAgKvEV7Y5TzHEu8ChUj9 \ No newline at end of file diff --git a/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.pdf b/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.pdf index 6c2e5016..48eafbce 100644 Binary files a/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.pdf and b/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.pdf differ diff --git a/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.print.pdf b/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.print.pdf index f56c51a2..13293d10 100644 Binary files a/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.print.pdf and b/tests/TestData/TcPdfOutput/qr-alternative-schemes.svg.print.pdf differ