cr fix
This commit is contained in:
@@ -8,6 +8,7 @@ use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Notifications\Messages\MailMessage;
|
||||
use Illuminate\Notifications\Notification;
|
||||
use InvalidArgumentException;
|
||||
use Toby\Domain\States\VacationRequest\WaitingForTechnical;
|
||||
use Toby\Eloquent\Models\User;
|
||||
use Toby\Eloquent\Models\VacationRequest;
|
||||
|
||||
@@ -43,8 +44,6 @@ class VacationRequestWaitsForApprovalNotification extends Notification
|
||||
protected function buildMailMessage(string $url): MailMessage
|
||||
{
|
||||
$user = $this->user->first_name;
|
||||
$requester = $this->vacationRequest->user->fullName;
|
||||
$title = $this->vacationRequest->name;
|
||||
$type = $this->vacationRequest->type->label();
|
||||
$from = $this->vacationRequest->from->toDisplayString();
|
||||
$to = $this->vacationRequest->to->toDisplayString();
|
||||
@@ -54,13 +53,8 @@ class VacationRequestWaitsForApprovalNotification extends Notification
|
||||
->greeting(__("Hi :user!", [
|
||||
"user" => $user,
|
||||
]))
|
||||
->subject(__("Vacation request :title is waiting for your approval", [
|
||||
"title" => $title,
|
||||
]))
|
||||
->line(__("The vacation request :title from user: :requester is waiting for your approval.", [
|
||||
"title" => $title,
|
||||
"requester" => $requester,
|
||||
]))
|
||||
->subject($this->buildSubject())
|
||||
->line($this->buildDescription())
|
||||
->line(__("Vacation type: :type", [
|
||||
"type" => $type,
|
||||
]))
|
||||
@@ -71,4 +65,37 @@ class VacationRequestWaitsForApprovalNotification extends Notification
|
||||
]))
|
||||
->action(__("Click here for details"), $url);
|
||||
}
|
||||
|
||||
protected function buildSubject(): string
|
||||
{
|
||||
$title = $this->vacationRequest->name;
|
||||
|
||||
if ($this->vacationRequest->state->equals(WaitingForTechnical::class)) {
|
||||
return __("Vacation request :title is waiting for your technical approval", [
|
||||
"title" => $title,
|
||||
]);
|
||||
}
|
||||
|
||||
return __("Vacation request :title is waiting for your administrative approval", [
|
||||
"title" => $title,
|
||||
]);
|
||||
}
|
||||
|
||||
protected function buildDescription(): string
|
||||
{
|
||||
$title = $this->vacationRequest->name;
|
||||
$requester = $this->vacationRequest->user->name;
|
||||
|
||||
if ($this->vacationRequest->state->equals(WaitingForTechnical::class)) {
|
||||
return __("The vacation request :title from user: :requester is waiting for your technical approval.", [
|
||||
"title" => $title,
|
||||
"requester" => $requester,
|
||||
]);
|
||||
}
|
||||
|
||||
return __("The vacation request :title from user: :requester is waiting for your administrative approval.", [
|
||||
"title" => $title,
|
||||
"requester" => $requester,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
@@ -187,7 +187,7 @@ class TimesheetPerUserSheet implements WithTitle, WithHeadings, WithEvents, With
|
||||
{
|
||||
return $user->vacations()
|
||||
->with("vacationRequest")
|
||||
->whereRelation("vacationRequest", fn(Builder $query) => $query->whereIn("type", $this->types))
|
||||
->whereRelation("vacationRequest", fn(Builder $query): Builder => $query->whereIn("type", $this->types))
|
||||
->whereBetween("date", [$period->start, $period->end])
|
||||
->approved()
|
||||
->get()
|
||||
|
@@ -24,7 +24,7 @@ class UserVacationStatsRetriever
|
||||
->whereBelongsTo($yearPeriod)
|
||||
->whereRelation(
|
||||
"vacationRequest",
|
||||
fn(Builder $query) => $query
|
||||
fn(Builder $query): Builder => $query
|
||||
->whereIn("type", $this->getLimitableVacationTypes())
|
||||
->states(VacationRequestStatesRetriever::successStates()),
|
||||
)
|
||||
@@ -36,7 +36,7 @@ class UserVacationStatsRetriever
|
||||
return $user->vacations()
|
||||
->whereRelation(
|
||||
"vacationRequest",
|
||||
fn(Builder $query) => $query
|
||||
fn(Builder $query): Builder => $query
|
||||
->whereBelongsTo($yearPeriod)
|
||||
->whereIn("type", $this->getLimitableVacationTypes())
|
||||
->states(VacationRequestStatesRetriever::successStates()),
|
||||
@@ -53,7 +53,7 @@ class UserVacationStatsRetriever
|
||||
->whereBelongsTo($yearPeriod)
|
||||
->whereRelation(
|
||||
"vacationRequest",
|
||||
fn(Builder $query) => $query
|
||||
fn(Builder $query): Builder => $query
|
||||
->whereIn("type", $this->getLimitableVacationTypes())
|
||||
->states(VacationRequestStatesRetriever::pendingStates()),
|
||||
)
|
||||
@@ -67,7 +67,7 @@ class UserVacationStatsRetriever
|
||||
->whereBelongsTo($yearPeriod)
|
||||
->whereRelation(
|
||||
"vacationRequest",
|
||||
fn(Builder $query) => $query
|
||||
fn(Builder $query): Builder => $query
|
||||
->whereIn("type", $this->getNotLimitableVacationTypes())
|
||||
->states(VacationRequestStatesRetriever::successStates()),
|
||||
)
|
||||
|
@@ -44,7 +44,7 @@ class DoesNotExceedLimitRule implements VacationRequestRule
|
||||
return $user->vacationLimits()
|
||||
->whereBelongsTo($yearPeriod)
|
||||
->first()
|
||||
->days ?? 0;
|
||||
?->days ?? 0;
|
||||
}
|
||||
|
||||
protected function getVacationDaysWithLimit(User $user, YearPeriod $yearPeriod): int
|
||||
@@ -53,7 +53,7 @@ class DoesNotExceedLimitRule implements VacationRequestRule
|
||||
->whereBelongsTo($yearPeriod)
|
||||
->whereRelation(
|
||||
"vacationRequest",
|
||||
fn(Builder $query) => $query
|
||||
fn(Builder $query): Builder => $query
|
||||
->whereIn("type", $this->getLimitableVacationTypes())
|
||||
->noStates(VacationRequestStatesRetriever::failedStates()),
|
||||
)
|
||||
|
Reference in New Issue
Block a user