@extends('layouts.app') @section('title','My workspace') @section('content') @if(!$employee)
Your account is not linked to an employee record yet. Ask HR to link it in Employee 360.
@else @php($employees=collect([$employee])) @if(\App\Support\ModulePages::page()==='leave-create')@include('operations.leave-request')@endif @if(\App\Support\ModulePages::page()==='requests-create')@include('operations.request-form')@endif @if(\App\Support\ModulePages::page()==='index')
Employee{{ $employee->employee_number }}{{ $employee->full_name }}
My profileOpen Employee 360Documents, acknowledgements and career history
Approvals@can('manager.approve')Review team requests@elseDecisions are recorded by your manager and HR/finance@endcan
@endif @if(app(\App\Domain\Platform\Entitlements::class)->enabled('attendance'))@if(in_array(\App\Support\ModulePages::page(),['attendance']))

My attendance

Open my attendance & breaks

Punch time comes from the server and requires HR verification. Reported browser location supports a configured geofence; it does not prove physical presence.

@php($uiRows1=\App\Support\ListView::rows($attendance,'attendance_entries'))
@foreach($uiRows1 as $a)@endforeach
Work dateIn / outStatus
{{ $a->work_date->toDateString() }}{{ $a->clock_in?->timezone(\App\Domain\Operations\Operations::timezone())->format('H:i') }} / {{ $a->clock_out?->timezone(\App\Domain\Operations\Operations::timezone())->format('H:i') }}{{ $a->status }}
@endif@endif @if(app(\App\Domain\Platform\Entitlements::class)->enabled('leave'))@if(in_array(\App\Support\ModulePages::page(),['leave']))

My leave

@foreach($types as $type){{ $type->name }}: {{ !$type->paid && !$type->annual_units?'Uncapped':\App\Domain\Payroll\Money::format(app(\App\Domain\Operations\LeaveService::class)->balance($employee->id,$type->id,\App\Domain\Operations\Operations::today())) }} days@endforeach
Apply for leave@php($listleave=\App\Support\ListView::rows($leave,'leave_requests'))@foreach($listleave as $l)

{{ $l->type->name }} · {{ $l->status }}

{{ $l->starts_on->toDateString() }}–{{ $l->ends_on->toDateString() }}

@if(in_array($l->status,['pending_manager','pending_hr']))
@csrf
@endif
@endforeach
@endif@endif @if(in_array(\App\Support\ModulePages::page(),['requests']))

My requests & letters

Create request@php($listrequests=\App\Support\ListView::rows($requests,'hr_requests'))@foreach($listrequests as $request)

#{{ $request->id }} · {{ str_replace('_',' ',$request->kind) }} · {{ $request->status }}

{{ $request->data['reason'] }}

@if($request->status==='approved' && isset($request->data['issued_text']))

{{ $request->data['issued_text'] }}

@endif
@endforeach
@endif @if(app(\App\Domain\Platform\Entitlements::class)->enabled('documents'))@if(in_array(\App\Support\ModulePages::page(),['receipt']))

Upload expense evidence securely

@csrf

The result provides the document ID for a reimbursement request. Quarantined evidence cannot be submitted until the real scanner marks it ready.

@endif@endif @if(app(\App\Domain\Platform\Entitlements::class)->enabled('payroll'))@if(in_array(\App\Support\ModulePages::page(),['payslips']))

My released payslips

@php($listpayslips=\App\Support\ListView::rows($payslips,'payroll_items'))@forelse($listpayslips as $p)

{{ $p->run->period }} · {{ $p->run->currency }} {{ \App\Domain\Payroll\Money::format($p->net_cents) }}

@empty

No released payslips yet.

@endforelse
@endif@endif @endif
@endsection