@php use App\Models\Attendance; use App\Models\Leave; use App\Models\LeaveType; use App\Models\SalarySetup; $isStaffViewer = auth()->user()->user_type === 'staff'; $defaultAvatar = asset('storage/uploads/user-icon.png'); $avatarUrl = $staff->user?->image ? asset('storage/'.$staff->user->image) : $defaultAvatar; $signin = Attendance::where('staff_id', $staff->id)->where('date', date('Y-m-d'))->first(); $salary = SalarySetup::where('staff_id', $staff->id)->value('gross_salary'); $weekendDays = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; @endphp @extends($isStaffViewer ? 'employee.layouts.app' : 'admin.layouts.app') @section('title', get_setting('site_name').' | '.__('Employee Profile')) @section('content') @include('admin.staff.partials.profile_styles')
@if(!$isStaffViewer)

{{ __('Employee Profile') }}

{{ __('Overview of employment, attendance, and leave.') }}

@endif
{{ $staff->user?->name ?? __('Employee') }}
{{ $staff->user?->name ?? __('Unknown') }}
{{ $staff->displaySid() }} @if($staff->designation || $staff->department) · {{ $staff->designation?->name ?? '—' }} @if($staff->department) ({{ $staff->department->name }}) @endif @endif
@if(!$isStaffViewer) @can('User-edit') {{ __('Edit') }} @endcan @endif {{ __('ID card') }} {{ __('Visiting card') }}
{{ services_length($staff->joing_date) }}
{{ __('Service length') }}
@if($signin?->signIn) {{ date('h:i A', strtotime($signin->signIn)) }} @else — @endif
{{ __('In time today') }}
@if($signin?->signOut) {{ date('h:i A', strtotime($signin->signOut)) }} @else — @endif
{{ __('Out time today') }}
@include('admin.staff.partials.employment_lifecycle', ['staff' => $staff])
{{ __('Profile details') }}
{{ __('Joining date') }} @if($staff->joing_date) {{ $staff->joing_date->format('d M Y') }} @else — @endif
{{ __('Date of birth') }} @if($staff->dob) {{ date('d F, Y', strtotime($staff->dob)) }} @else — @endif
{{ __('Branch') }} {{ $staff->warehouse?->name ?? '—' }}
{{ __('Phone') }} {{ $staff->user?->phone ?? ($staff->mobile_no ?: '—') }}
{{ __('Email') }} {{ $staff->user?->email ?? '—' }}
{{ __('Salary') }} @if($salary !== null) {{ $salary }} @elseif(!$isStaffViewer) @can('Salary-setup') {{ __('Not setup yet') }} {{ __('Setup') }} @else {{ __('Not setup') }} @endcan @else {{ __('Not setup') }} @endif
@if($isStaffViewer)
@csrf {{ __('Update photo') }}
{{ __('No file chosen') }}
@endif @include('admin.staff.partials.signature_seal_upload', ['isStaffViewer' => $isStaffViewer])
@include('admin.staff.partials.salary_growth_timeline')
{{ __('Leave summary') }} {{ date('Y') }}
@foreach(LeaveType::where('group_id', $staff->leave_group_id)->get() as $leave_type) @php $adjustment = \App\Models\LeaveAdjustment::where('staff_id', $staff->id) ->where('year', date('Y')) ->where('leave_type_id', $leave_type->id) ->sum('balance'); if (date('Y', strtotime($staff->joing_date)) == date('Y')) { $leave_have = app_round(($leave_type->day / 12) * (12 - date('m', strtotime($staff->joing_date)) + 1), 0); } else { $leave_have = $leave_type->day; } $taken = Leave::where('staff_id', $staff->id) ->where('leave_type_id', $leave_type->id) ->whereYear('apply_date', \Illuminate\Support\Carbon::now()->year) ->where('status', 1) ->sum('number_of_days'); $remaining = ($leave_have + $adjustment) - $taken; @endphp @endforeach
{{ __('Type') }} {{ __('Allowed') }} {{ __('Adjustment') }} {{ __('Taken') }} {{ __('Remaining') }}
{{ $leave_type->name }} {{ $leave_have }} {{ $adjustment }} {{ $taken }} {{ $remaining }}
{{ __('Attendance schedule') }}
{{ __('Shift name') }}
{{ $attendance_setup->shift_name }}
{{ __('Sign in') }}
{{ $attendance_setup->signIn }}
{{ __('Sign out') }}
{{ $attendance_setup->signOut }}
{{ __('Delay time') }}
{{ $attendance_setup->lateTime }}
{{ __('Extra delay') }}
{{ $attendance_setup->absentTime }}
{{ __('Weekend schedule') }} — {{ $weekend->name }}
@foreach($weekendDays as $day) @php $isWeekend = (int) $weekend->{$day} === 1; @endphp
{{ __(substr($day, 0, 3)) }}
{{ $isWeekend ? __('Off') : __('Work') }}
@endforeach
@endsection @section('script') @if($isStaffViewer) @endif @endsection