芝麻web文件管理V1.00
编辑当前文件:/home/sditechnicalteam/public_html/app/Listeners/LeaveListener.php
first(); $permissionUserIds = UserPermission::where('permission_id', $leaveApproveRejectPermission->id)->where('permission_type_id', PermissionType::ALL)->get()->pluck('user_id')->toArray(); $reportingTo = EmployeeDetails::where('user_id', user()->id)->pluck('reporting_to')->toArray(); $adminUserIds = User::allAdmins($event->leave->company->id)->pluck('id')->toArray(); $adminUserIds = array_merge($permissionUserIds, $adminUserIds); if ($reportingTo == null) { $adminUsers = User::whereIn('id', $adminUserIds)->get(); } else { $notificationTo = array_merge($reportingTo, $adminUserIds); $adminUsers = User::whereIn('id', $notificationTo)->get(); } if ($event->status == 'created') { if (!is_null($event->multiDates)) { Notification::send($event->leave->user, new MultipleLeaveApplication($event->leave, $event->multiDates)); Notification::send($adminUsers, new NewMultipleLeaveRequest($event->leave, $event->multiDates)); } else { Notification::send($event->leave->user, new LeaveApplication($event->leave)); Notification::send($adminUsers, new NewLeaveRequest($event->leave)); } } elseif ($event->status == 'statusUpdated') { if ($event->leave->status == 'approved') { Notification::send($event->leave->user, new LeaveStatusApprove($event->leave)); } else { Notification::send($event->leave->user, new LeaveStatusReject($event->leave)); } } elseif ($event->status == 'updated') { Notification::send($event->leave->user, new LeaveStatusUpdate($event->leave)); } } }