@php $user_role = auth()->user()->role; $admin = 1; $staff = 0; $auth_branch = 3; $auth_client = 4; $auth_driver = 5; $count = (Modules\Cargo\Entities\ShipmentSetting::getVal('latest_shipment_count') ? Modules\Cargo\Entities\ShipmentSetting::getVal('latest_shipment_count') : 10 ); if($user_role == $admin || $user_role == $staff){ if($user_role == $admin || auth()->user()->can('manage-shipments')){ $shipments = Modules\Cargo\Entities\Shipment::limit($count)->orderBy('id','desc')->get(); } if($user_role == $admin || auth()->user()->can('manage-drivers')){ $captains = Modules\Cargo\Entities\Driver::withCount(['transaction AS wallet' => function ($query) { $query->select(DB::raw("SUM(value)")); }])->get(); } }elseif($user_role == $auth_branch){ $branch_id = Modules\Cargo\Entities\Branch::where('user_id',auth()->user()->id)->pluck('id')->first(); $shipments = Modules\Cargo\Entities\Shipment::where('branch_id', $branch_id)->limit($count)->orderBy('id','desc')->get(); $captains = Modules\Cargo\Entities\Driver::where('branch_id', $branch_id)->withCount(['transaction AS wallet' => function ($query) { $query->select(DB::raw("SUM(value)")); }])->get(); }elseif($user_role == $auth_client){ $client_id = Modules\Cargo\Entities\Client::where('user_id',auth()->user()->id)->pluck('id')->first(); $shipments = Modules\Cargo\Entities\Shipment::limit($count)->orderBy('id','desc')->where('client_id',$client_id)->get(); }elseif($user_role == $auth_driver){ $driver_id = Modules\Cargo\Entities\Driver::where('user_id',auth()->user()->id)->pluck('id')->first(); } @endphp @if(in_array($user_role ,[$admin,$auth_branch,$auth_client]) || auth()->user()->can('manage-shipments') )

{{ __('cargo::view.latest_shipments') }}

@if($user_role != $auth_branch) @endif @foreach($shipments as $key=>$shipment) @if($user_role != $auth_branch) @if( in_array($user_role ,[$admin]) || auth()->user()->can('manage-branches') ) @else @endif @endif @endforeach
{{ __('cargo::view.table.code') }} {{ __('cargo::view.status') }} {{ __('cargo::view.table.type') }} {{ __('cargo::view.client') }}{{ __('cargo::view.table.branch') }}{{ __('cargo::view.shipping_cost') }} {{ __('cargo::view.payment_method') }} {{ __('cargo::view.shipping_date') }}
{{$shipment->code}} {{$shipment->getStatus()}} {{$shipment->type}} @if(in_array($user_role ,[$admin,$auth_branch]) || auth()->user()->can('manage-customers') ) {{$shipment->client->name}} @else {{$shipment->client->name}} @endif {{$shipment->branch->name}}{{$shipment->branch->name}}{{format_price($shipment->tax + $shipment->shipping_cost + $shipment->insurance) }} {{$shipment->payment_method_id}} {{$shipment->shipping_date}}
@endif @if(in_array($user_role ,[$admin,$auth_branch]) || auth()->user()->can('manage-drivers') )

{{ __('cargo::view.drivers_wallet') }}

@foreach($captains as $key=>$captain) @php $captain->wallet = abs($captain->wallet); @endphp @if($captain->wallet > 0 ?? 0) @endif @endforeach
{{ __('cargo::view.table.code') }} {{ __('cargo::view.table.name') }} {{ __('cargo::view.wallet') }}
{{$captain->code}} {{$captain->name}} {{format_price($captain->wallet)}}

{{ __('cargo::view.drivers_custody') }}

@if($user_role != $auth_branch) @endif @foreach($captains as $key=>$captain) @php $count = (Modules\Cargo\Entities\ShipmentSetting::getVal('latest_shipment_count') ? Modules\Cargo\Entities\ShipmentSetting::getVal('latest_shipment_count') : 10 ); $shipments = Modules\Cargo\Entities\Shipment::where('captain_id', $captain->id)->limit($count)->orderBy('id','desc')->get(); @endphp @foreach($shipments as $key=>$shipment) @if($user_role != $auth_branch) @if( in_array($user_role ,[$admin]) || auth()->user()->can('manage-branches') ) @else @endif @endif @endforeach @endforeach
{{ __('cargo::view.table.code') }} {{ __('cargo::view.status') }} {{ __('cargo::view.table.type') }} {{ __('cargo::view.client') }}{{ __('cargo::view.table.branch') }}{{ __('cargo::view.shipping_cost') }} {{ __('cargo::view.payment_method') }} {{ __('cargo::view.shipping_date') }}
{{$shipment->code}} {{$shipment->getStatus()}} {{$shipment->type}} @if(in_array($user_role ,[$admin,$auth_branch]) || auth()->user()->can('manage-customers') ) {{$shipment->client->name}} @else {{$shipment->client->name}} @endif {{$shipment->branch->name}}{{$shipment->branch->name}}{{format_price($shipment->tax + $shipment->shipping_cost + $shipment->insurance) }} {{$shipment->payment_method_id}} {{$shipment->shipping_date}}
@endif @if($user_role == $auth_driver)

{{ __('cargo::view.current_manifest') }}

@php $missions = Modules\Cargo\Entities\Mission::where('captain_id',$driver_id)->whereNotIn('status_id', [\Modules\Cargo\Entities\Mission::DONE_STATUS, \Modules\Cargo\Entities\Mission::CLOSED_STATUS])->where('due_date',Carbon\Carbon::today()->format('Y-m-d'))->get(); @endphp
@foreach($missions as $key=>$mission) @php $helper = new Modules\Cargo\Http\Helpers\TransactionHelper(); $mission_cost = $helper->calcMissionShipmentsAmount($mission->getRawOriginal('type'),$mission->id); @endphp @endforeach
{{ __('cargo::view.table.code') }} {{ __('cargo::view.table.type') }} {{ __('cargo::view.amount') }} {{ __('cargo::view.table.address') }} {{ __('cargo::view.arrived') }}
{{$mission->code}} {{$mission->type}}{{format_price($mission_cost)}} {{$mission->address}}

{{ __('cargo::view.active_missions') }}

@php $count = (Modules\Cargo\Entities\ShipmentSetting::getVal('latest_shipment_count') ? Modules\Cargo\Entities\ShipmentSetting::getVal('latest_shipment_count') : 10 ); $missions = Modules\Cargo\Entities\Mission::limit($count)->orderBy('id','desc')->where('captain_id',$driver_id)->whereNotIn('status_id', [\Modules\Cargo\Entities\Mission::DONE_STATUS, \Modules\Cargo\Entities\Mission::CLOSED_STATUS])->where('due_date', \Carbon\Carbon::today()->format('Y-m-d'))->get(); @endphp @foreach($missions as $key=>$mission) @php $helper = new Modules\Cargo\Http\Helpers\TransactionHelper(); $mission_cost = $helper->calcMissionShipmentsAmount($mission->getRawOriginal('type'),$mission->id); @endphp @endforeach
{{ __('cargo::view.table.code') }} {{ __('cargo::view.status') }} {{ __('cargo::view.table.type') }} {{ __('cargo::view.amount') }}
{{$mission->code}} {{$mission->getStatus()}} {{$mission->type}}{{format_price($mission_cost)}}
@endif