Add ExtractSwissQrCode feature and update feature order

Updated PHASENPLAN.md and ROADMAP.md to reflect the new
feature order, making "ExtractSwissQrCode" Feature 2 and
renumbering previous Features 2-5 to 3-6. Added detailed
steps, endpoints, and acceptance criteria for the new
feature.

Implemented `ISwissQrCodeProcessor` interface with
`DevExpressSwissQrCodeProcessor` for extracting and parsing
Swiss QR Codes using DevExpress and Codecrete libraries.
Registered the new service in DependencyInjection.cs.

Introduced `SwissQrCodeData` value object and
`SwissQrCodeNotFoundException` for domain modeling and
error handling. Updated project dependencies to include
libraries for QR code processing.

Adjusted existing feature descriptions and steps to align
with the new feature order.
This commit is contained in:
OlgunR
2026-06-26 08:39:44 +02:00
parent 18e956c2cf
commit 47cba50d0f
8 changed files with 534 additions and 59 deletions

View File

@@ -0,0 +1,22 @@
namespace DocumentOperator.Domain.Exceptions;
/// <summary>
/// Exception thrown when a Swiss QR Code cannot be found in a PDF document.
/// </summary>
public sealed class SwissQrCodeNotFoundException : Exception
{
public SwissQrCodeNotFoundException()
: base("No Swiss QR Code found on the last page of the PDF document.")
{
}
public SwissQrCodeNotFoundException(string message)
: base(message)
{
}
public SwissQrCodeNotFoundException(string message, Exception innerException)
: base(message, innerException)
{
}
}