Lint
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
This commit is contained in:
parent
9598a44e13
commit
7072f07879
|
@ -38,8 +38,11 @@ class SubactivityUpdateAction
|
||||||
*/
|
*/
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
|
/** @var Subactivity */
|
||||||
|
$subactivity = request()->route('subactivity');
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'name' => ['required', 'string', 'max:255', Rule::unique('subactivities', 'name')->ignore(request()->route('subactivity')->id)],
|
'name' => ['required', 'string', 'max:255', Rule::unique('subactivities', 'name')->ignore($subactivity->id)],
|
||||||
'activities' => ['present', 'array', 'min:1'],
|
'activities' => ['present', 'array', 'min:1'],
|
||||||
'activities.*' => 'integer',
|
'activities.*' => 'integer',
|
||||||
'is_filterable' => 'present|boolean',
|
'is_filterable' => 'present|boolean',
|
||||||
|
@ -64,7 +67,7 @@ class SubactivityUpdateAction
|
||||||
|
|
||||||
$removingActivities = $subactivity->activities()->whereNotIn('id', $request->validated('activities'))->pluck('id');
|
$removingActivities = $subactivity->activities()->whereNotIn('id', $request->validated('activities'))->pluck('id');
|
||||||
|
|
||||||
if ($removingActivities->first(fn ($activity) => Membership::firstWhere(['activity_id' => $activity, 'subactivity_id' => $subactivity->id]))) {
|
if ($removingActivities->first(fn ($activity) => Membership::where(['activity_id' => $activity, 'subactivity_id' => $subactivity->id])->exists())) {
|
||||||
throw ValidationException::withMessages(['activities' => 'Tätigkeit hat noch Mitglieder.']);
|
throw ValidationException::withMessages(['activities' => 'Tätigkeit hat noch Mitglieder.']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -74,7 +77,7 @@ class SubactivityUpdateAction
|
||||||
/**
|
/**
|
||||||
* @todo handle this with a model event on the pivot model
|
* @todo handle this with a model event on the pivot model
|
||||||
*
|
*
|
||||||
* @param Payload $payload
|
* @param array{name: string, activities: array<int, int>} $payload
|
||||||
*/
|
*/
|
||||||
private function validateNami(Subactivity $subactivity, array $payload): void
|
private function validateNami(Subactivity $subactivity, array $payload): void
|
||||||
{
|
{
|
||||||
|
|
|
@ -25,6 +25,13 @@ trait HasMeta
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new anonymous resource collection without meta.
|
||||||
|
*
|
||||||
|
* @param mixed $resource
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection
|
||||||
|
*/
|
||||||
public static function collectionWithoutMeta($resource)
|
public static function collectionWithoutMeta($resource)
|
||||||
{
|
{
|
||||||
return parent::collection($resource);
|
return parent::collection($resource);
|
||||||
|
|
|
@ -5,6 +5,7 @@ namespace App\Resources;
|
||||||
use App\Activity;
|
use App\Activity;
|
||||||
use App\Activity\Resources\ActivityResource;
|
use App\Activity\Resources\ActivityResource;
|
||||||
use App\Lib\HasMeta;
|
use App\Lib\HasMeta;
|
||||||
|
use App\Subactivity;
|
||||||
use Illuminate\Http\Resources\Json\JsonResource;
|
use Illuminate\Http\Resources\Json\JsonResource;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -19,7 +20,7 @@ class SubactivityResource extends JsonResource
|
||||||
*
|
*
|
||||||
* @param \Illuminate\Http\Request $request
|
* @param \Illuminate\Http\Request $request
|
||||||
*
|
*
|
||||||
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
|
* @return array<string, mixed>
|
||||||
*/
|
*/
|
||||||
public function toArray($request)
|
public function toArray($request)
|
||||||
{
|
{
|
||||||
|
@ -35,6 +36,9 @@ class SubactivityResource extends JsonResource
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array<string, mixed>
|
||||||
|
*/
|
||||||
public static function meta(): array
|
public static function meta(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
|
|
Loading…
Reference in New Issue