Add Cc (Zusatzempfänger) recipient support for invoice emails

Lets an invoice carry an additional Cc recipient alongside the primary
SendToEmail, sent via the ProcessWeb mailer API. Honors the
Fuchs:Email:OverrideRecipient dev safety net: when the override is
active, Cc is dropped entirely (only the single override inbox is
ever reached), never leaked to it.

- IComService.SendEmailAsync / ProcessWebComService: new optional
  `cc` parameter, included in the mailer payload only when non-empty.
- FdsInvoiceData.RawInvoiceEmailCc + BuildInvoiceParams: reads
  `new.invoiceemailcc`, posts @SendToEmailCc.
- IntranetController.Requests: reads SendToEmailCc from the loaded
  invoice row and passes it through on send/resend.
- Fuchs_Database: SendToEmailCc column on fds__invoices, threaded
  through fds__createInvoice/fds__setInvoice/fds__getInvoice and the
  fds__tt__invoice_base/_core table types.
- fis.req_txt_de.js: "Zusatzempfänger (CC)" field label.
- Tests: ProcessWebComServiceTests (Cc included/omitted/dropped under
  override); SystemStatusServiceTests mocks updated for the new
  IComService.SendEmailAsync parameter.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-10 09:09:29 +02:00
co-authored by Claude Sonnet 5
parent ecc74cf3c6
commit 94aa7cbfe4
14 changed files with 82 additions and 18 deletions
@@ -14,7 +14,8 @@ CREATE PROCEDURE [dbo].[fds__createInvoice]
@CustomerId bigint,
@SendToAddress nvarchar(1000),
@SendToEmail nvarchar(255),
@ProvisionPeriod varchar(50),
@SendToEmailCc nvarchar(255) = NULL,
@ProvisionPeriod varchar(50),
@CustomValues nvarchar(max),
@authuser varchar(25),
@Id varchar(10) OUT,
@@ -56,6 +57,7 @@ BEGIN
[CustomerId] [bigint] NULL,
[SendToAddress] [nvarchar](1000) NULL,
[SendToEmail] [nvarchar](255) NULL,
[SendToEmailCc] [nvarchar](255) NULL,
[ProvisionPeriod] [varchar](50) NULL,
[ProvisionLocation] [nvarchar](1000) NULL,
[PaymentStatus] [char](1) NULL,
@@ -100,6 +102,7 @@ BEGIN
,[CustomerId]
,[SendToAddress]
,[SendToEmail]
,[SendToEmailCc]
,[ProvisionPeriod]
,[ProvisionLocation]
,[PaymentStatus]
@@ -140,6 +143,7 @@ BEGIN
,@CustomerId
,@SendToAddress
,@SendToEmail
,@SendToEmailCc
,@ProvisionPeriod
,NULL --[ProvisionLocation]
,NULL --[PaymentStatus]