Enhance InvoiceDataMail to accept a dynamic subject and update SendInvoiceDataReport command accordingly

This commit is contained in:
dhanabalan
2025-11-11 09:32:46 +05:30
parent 26ad8b2ed8
commit 9eaf86d347
3 changed files with 14 additions and 8 deletions

View File

@@ -201,7 +201,9 @@ class SendInvoiceDataReport extends Command
})
->toArray();
$mail = new InvoiceDataMail($scheduleType, $tableData);
$mailSubject = "Invoice Data Report ({$plant->name})";
$mail = new InvoiceDataMail($scheduleType, $tableData, $mailSubject);
$contentVars = $mail->content()->with;
$this->info($contentVars['greeting'] ?? 'Invoice Data Report');

View File

@@ -14,16 +14,20 @@ class InvoiceDataMail extends Mailable
{
use Queueable, SerializesModels;
public $tableData;
public $scheduleType;
public $tableData;
public $mailSubject;
/**
* Create a new message instance.
*/
public function __construct($scheduleType,$tableData = [])
public function __construct($scheduleType, $tableData = [], $mailSubject)
{
$this->scheduleType = $scheduleType;
$this->tableData = $tableData ?? [];
$this->mailSubject = $mailSubject ?? 'Invoice Data Report';
}
/**
@@ -32,7 +36,7 @@ class InvoiceDataMail extends Mailable
public function envelope(): Envelope
{
return new Envelope(
subject: 'Invoice Data Report',
subject: $this->mailSubject,
);
}