Add create and delete member

This commit is contained in:
philipp lang 2021-06-24 00:12:47 +02:00
parent f07d4bb5b5
commit fbd397e1df
3 changed files with 54 additions and 1 deletions

46
app/Member/DeleteJob.php Normal file
View File

@ -0,0 +1,46 @@
<?php
namespace App\Member;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
use Zoomyboy\LaravelNami\Nami;
use App\Confession;
class DeleteJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $memberId;
public $member;
public $user;
public function __construct(Member $member, $user)
{
$this->memberId = $member->id;
$this->user = $user;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
$this->member = Member::find($this->memberId);
if (!$this->member->hasNami) {
return false;
}
Nami::login($this->user->mglnr)->deleteMember($this->member->nami_id);
Member::withoutEvents(function() {
$this->member->update(['nami_id' => null]);
});
}
}

View File

@ -59,7 +59,10 @@ class MemberRequest extends FormRequest
public function persistCreate() {
$this->merge(['group_id' => Group::where('nami_id', auth()->user()->getNamiGroupId())->firstOrFail()->id]);
$m = Member::create($this->input());
$member = Member::create($this->input());
if($this->input('has_nami')) {
CreateJob::dispatch($member, auth()->user());
}
}
public function persistUpdate(Member $member) {
@ -71,5 +74,8 @@ class MemberRequest extends FormRequest
if($this->input('has_nami') && $member->nami_id !== null) {
UpdateJob::dispatch($member, auth()->user());
}
if(!$this->input('has_nami') && $member->nami_id !== null) {
DeleteJob::dispatch($member, auth()->user());
}
}
}

View File

@ -187,5 +187,6 @@ return [
'nationality_id' => 'Staatsangehörigkeit',
'first_group_id' => 'Erste Untertätigkeit',
'first_activity_id' => 'Erste Tätigkeit',
'fee_id' => 'Beitragsart',
],
];