|
- <?php
-
- namespace App\Http\Controllers\Web\Custom\HelloTechno;
-
- use App\Http\Controllers\Web\IParam;
- use App\Http\Controllers\Web\WebController;
- use App\Logic\ReceiptIssuingOrder\Custom\HelloTechno\PDFDownLoadManagerHelloTechno;
- use App\Logic\ReceiptIssuingOrder\UpdateManager;
- use App\Util\DateUtil;
- use Illuminate\Http\Request;
- use Illuminate\Http\Response;
-
- class DownloadLetterController extends WebController
- {
- public function name(): string
- {
- return "領収証PDFダウンロード";
- }
-
- public function description(): string
- {
- return "領収証PDFダウンロードする";
- }
-
- public function __construct(
- protected DownloadLetterParam $param,
- private UpdateManager $updateManager,
- private PDFDownLoadManagerHelloTechno $pdfManager,
- ) {
- parent::__construct();
- }
-
- protected function getParam(): IParam
- {
- return $this->param;
- }
-
- protected function run(Request $request): Response
- {
- $param = $this->param;
-
- // 投函日の登録
- $today = DateUtil::now();
- $this->updateManager->initById($param->id)
- ->mailPosted($today)
- ->update();
-
- return $this->pdfManager->initById($param->id)->downlaodLetter();
- }
- }
|