#120 - wip
This commit is contained in:
parent
05002dbc33
commit
db70c3885f
@ -32,7 +32,10 @@ class CreateAction
|
|||||||
{
|
{
|
||||||
$vacationRequest = $this->createVacationRequest($data, $creator);
|
$vacationRequest = $this->createVacationRequest($data, $creator);
|
||||||
$this->handleCreatedVacationRequest($vacationRequest);
|
$this->handleCreatedVacationRequest($vacationRequest);
|
||||||
|
|
||||||
|
if ($this->configRetriever->isVacation($vacationRequest->type)) {
|
||||||
$this->notify($vacationRequest);
|
$this->notify($vacationRequest);
|
||||||
|
}
|
||||||
|
|
||||||
return $vacationRequest;
|
return $vacationRequest;
|
||||||
}
|
}
|
||||||
|
@ -23,10 +23,12 @@ class WaitForAdminApprovalAction
|
|||||||
{
|
{
|
||||||
$this->stateManager->waitForAdministrative($vacationRequest);
|
$this->stateManager->waitForAdministrative($vacationRequest);
|
||||||
|
|
||||||
$this->waitForAdminApprovers($vacationRequest);
|
if ($this->configRetriever->isVacation($vacationRequest->type)) {
|
||||||
|
$this->notifyAdminApprovers($vacationRequest);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function waitForAdminApprovers(VacationRequest $vacationRequest): void
|
protected function notifyAdminApprovers(VacationRequest $vacationRequest): void
|
||||||
{
|
{
|
||||||
$users = User::query()
|
$users = User::query()
|
||||||
->whereIn("role", [Role::AdministrativeApprover, Role::Administrator])
|
->whereIn("role", [Role::AdministrativeApprover, Role::Administrator])
|
||||||
|
@ -23,8 +23,10 @@ class WaitForTechApprovalAction
|
|||||||
{
|
{
|
||||||
$this->stateManager->waitForTechnical($vacationRequest);
|
$this->stateManager->waitForTechnical($vacationRequest);
|
||||||
|
|
||||||
|
if ($this->configRetriever->isVacation($vacationRequest->type)) {
|
||||||
$this->notifyTechApprovers($vacationRequest);
|
$this->notifyTechApprovers($vacationRequest);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected function notifyTechApprovers(VacationRequest $vacationRequest): void
|
protected function notifyTechApprovers(VacationRequest $vacationRequest): void
|
||||||
{
|
{
|
||||||
|
@ -116,5 +116,4 @@ class UserVacationStatsRetriever
|
|||||||
|
|
||||||
return $types->filter(fn(VacationType $type) => !$this->configRetriever->hasLimit($type));
|
return $types->filter(fn(VacationType $type) => !$this->configRetriever->hasLimit($type));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -152,7 +152,7 @@ class VacationRequestController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function download(
|
public function download(
|
||||||
VacationRequest $vacationRequest,
|
VacationRequest $vacationRequest,
|
||||||
VacationTypeConfigRetriever $configRetriever
|
VacationTypeConfigRetriever $configRetriever,
|
||||||
): LaravelResponse {
|
): LaravelResponse {
|
||||||
if (!$configRetriever->isVacation($vacationRequest->type)) {
|
if (!$configRetriever->isVacation($vacationRequest->type)) {
|
||||||
return abort(SymfonyResponse::HTTP_NOT_FOUND);
|
return abort(SymfonyResponse::HTTP_NOT_FOUND);
|
||||||
|
@ -8,7 +8,7 @@ import HandHeartOutlineIcon from 'vue-material-design-icons/HandHeartOutline.vue
|
|||||||
import CalendarCheckIcon from 'vue-material-design-icons/CalendarCheck.vue'
|
import CalendarCheckIcon from 'vue-material-design-icons/CalendarCheck.vue'
|
||||||
import MedicalBagIcon from 'vue-material-design-icons/MedicalBag.vue'
|
import MedicalBagIcon from 'vue-material-design-icons/MedicalBag.vue'
|
||||||
import CalendarRemoveIcon from 'vue-material-design-icons/CalendarRemove.vue'
|
import CalendarRemoveIcon from 'vue-material-design-icons/CalendarRemove.vue'
|
||||||
import LaptopIcon from 'vue-material-design-icons/Laptop.vue';
|
import LaptopIcon from 'vue-material-design-icons/Laptop.vue'
|
||||||
|
|
||||||
const types = [
|
const types = [
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user