| @@ -0,0 +1,38 @@ | |||||
| <?php | |||||
| namespace App\Http\Controllers\Web\Receipt; | |||||
| use App\Http\Controllers\Web\FromKintoneController; | |||||
| use App\Logic\ReceiptManager; | |||||
| use Illuminate\Http\JsonResponse; | |||||
| use Illuminate\Http\Request; | |||||
| class ReceiptSaveController extends FromKintoneController | |||||
| { | |||||
| public function name(): string | |||||
| { | |||||
| return "領収証PDF保存"; | |||||
| } | |||||
| public function description(): string | |||||
| { | |||||
| return "領収証PDFを保存する"; | |||||
| } | |||||
| public function __construct(protected ReceiptSaveParam $param) | |||||
| { | |||||
| parent::__construct(); | |||||
| } | |||||
| protected function run(Request $request): JsonResponse | |||||
| { | |||||
| $param = $this->param; | |||||
| $manager = new ReceiptManager($param->receiptRecordNo); | |||||
| $manager->savePdf(); | |||||
| return $this->successResponse(); | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,18 @@ | |||||
| <?php | |||||
| namespace App\Http\Controllers\Web\Receipt; | |||||
| use App\Http\Controllers\Web\BaseParam; | |||||
| /** | |||||
| * @property int receiptRecordNo | |||||
| */ | |||||
| class ReceiptSaveParam extends BaseParam | |||||
| { | |||||
| function rules(): array | |||||
| { | |||||
| return [ | |||||
| 'receipt_record_no' => $this->numeric(), | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -191,7 +191,7 @@ class ReceiptManager | |||||
| return $file; | return $file; | ||||
| } | } | ||||
| private function savePdf() | |||||
| public function savePdf() | |||||
| { | { | ||||
| if ($this->receipt === null) { | if ($this->receipt === null) { | ||||
| throw new Exception("領収証不正"); | throw new Exception("領収証不正"); | ||||
| @@ -17,6 +17,7 @@ RouteHelper::post('/email/send', App\Http\Controllers\Web\Email\EmailSendControl | |||||
| RouteHelper::post('/season-ticket-contract-selection/notice-to-candidates', App\Http\Controllers\Web\SeasonTicketContract\Selection\NoticeToCandidatesController::class); | RouteHelper::post('/season-ticket-contract-selection/notice-to-candidates', App\Http\Controllers\Web\SeasonTicketContract\Selection\NoticeToCandidatesController::class); | ||||
| RouteHelper::post('/season-ticket-contract-selection/fill-candidates', App\Http\Controllers\Web\SeasonTicketContract\Selection\FillCandidatesController::class); | RouteHelper::post('/season-ticket-contract-selection/fill-candidates', App\Http\Controllers\Web\SeasonTicketContract\Selection\FillCandidatesController::class); | ||||
| RouteHelper::post('/receipt/create', App\Http\Controllers\Web\Receipt\ReceiptCreateController::class); | RouteHelper::post('/receipt/create', App\Http\Controllers\Web\Receipt\ReceiptCreateController::class); | ||||
| RouteHelper::post('/receipt/save', App\Http\Controllers\Web\Receipt\ReceiptSaveController::class); | |||||
| // ------FOR WEBHOOK------------------- | // ------FOR WEBHOOK------------------- | ||||