feat: add automatic item pickup slip printing via HP ePrint

This commit is contained in:
2026-05-12 15:44:40 -04:00
parent 23f944b808
commit eff3707268
10 changed files with 291 additions and 1 deletions
+58
View File
@@ -0,0 +1,58 @@
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Mail\Mailables\Attachment;
use Illuminate\Mail\Mailables\Content;
use Illuminate\Mail\Mailables\Envelope;
use Illuminate\Queue\SerializesModels;
class PickupSlipMail extends Mailable
{
use Queueable, SerializesModels;
protected $pdfOutput;
/**
* Create a new message instance.
*/
public function __construct($pdfOutput)
{
$this->pdfOutput = $pdfOutput;
}
/**
* Get the message envelope.
*/
public function envelope(): Envelope
{
return new Envelope(
subject: 'Item Pickup Slip',
);
}
/**
* Get the message content definition.
*/
public function content(): Content
{
return new Content(
view: 'emails.pickup_slip',
);
}
/**
* Get the attachments for the message.
*
* @return array<int, Attachment>
*/
public function attachments(): array
{
return [
Attachment::fromData(fn () => $this->pdfOutput, 'pickup_slip.pdf')
->withMime('application/pdf'),
];
}
}