adrema/app/Contribution/Documents/ContributionDocument.php

32 lines
668 B
PHP
Raw Normal View History

2022-11-17 21:47:45 +01:00
<?php
namespace App\Contribution\Documents;
use Zoomyboy\Tex\Document;
abstract class ContributionDocument extends Document
{
abstract public static function getName(): string;
2023-03-14 22:40:46 +01:00
/**
2023-03-14 23:28:42 +01:00
* @param array<string, mixed> $request
2023-03-14 22:40:46 +01:00
*/
2023-03-14 22:42:12 +01:00
abstract public static function fromRequest(array $request): self;
2023-03-14 22:40:46 +01:00
/**
* @return array<string, mixed>
*/
abstract public static function rules(): array;
/**
* @return array<string, mixed>
*/
public static function globalRules(): array
{
return [
'members' => 'present|array|min:1',
'members.*' => 'integer|exists:members,id',
];
}
2022-11-17 21:47:45 +01:00
}