@php $user = Auth::user(); $infoboxes = []; $role_group_leader = $user->roles->contains('name', 'Csoportvezető'); @endphp {{-- Ajánlatok, Megrendelések --}} @can('show-offer') @php $infoboxes['offers'] = [ 'title' => 'Ajánlatok', 'description' => '', 'total' => App\Models\Offer::all()->count(), 'open' => false, 'task' => false, 'task_text_visible' => false, 'delayed' => false, 'web_task' => App\Models\Offer::WebTask()->count(), 'prepare' => App\Models\Offer::Prepare()->count(), 'client_indicates' => App\Models\Offer::ClientIndicates()->count(), 'contacting_client' => App\Models\Offer::ContactingClient()->count(), // 'request_callback' => App\Models\Offer::RequestCallback()->count(), 'waiting_for_survey' => App\Models\Offer::WaitingForSurvey()->count(), // 'awaiting_inspection' => App\Models\Offer::AwaitingInspection()->count(), 'client_response' => App\Models\Offer::ClientResponse()->count(), 'organize' => false, 'report' => false, 'total_url' => route('offers.index'), 'open_url' => false, 'task_url' => false, 'delayed_url' => false, 'web_task_url' => route('offers.index', ['view' => 'WebTask']), 'prepare_url' => route('offers.index', ['view' => 'Prepare']), 'client_indicates_url' => route('offers.index', ['view' => 'ClientIndicates']), 'contacting_client_url' => route('offers.index', ['view' => 'ContactingClient']), // 'request_callback_url' => route('offers.index', ['view' => 'RequestCallback']), 'waiting_for_survey_url' => route('offers.index', ['view' => 'WaitingForSurvey']), // 'awaiting_inspection_url' => route('offers.index', ['view' => 'AwaitingInspection']), 'client_response_url' => route('offers.index', ['view' => 'ClientResponse']), 'organize_url' => false, 'report_url' => false, 'modal' => false, ]; $infoboxes['orders'] = [ 'title' => 'Megrendelések', 'description' => '', 'total' => App\Models\Order::all()->count(), 'open' => App\Models\Order::task()->count(), 'task' => false, 'task_text_visible' => false, 'delayed' => false, 'send_order' => App\Models\Order::SendOrder()->count(), 'waiting_for_signed_contract' => App\Models\Order::WaitingForSignedContract()->count(), 'approval' => App\Models\Order::executiveApproval()->count(), 'awaiting_advance_payment' => App\Models\Order::AwaitingAdvancePayment()->count(), 'waiting_for_survey' => App\Models\Order::WaitingForSurvey()->count(), 'awaiting_inspection' => App\Models\Order::AwaitingInspection()->count(), 'hiring_suppliers' => App\Models\Order::HiringSuppliers()->count(), 'additional_suppliers' => App\Models\Order::AdditionalSuppliers()->count(), 'on_going' => App\Models\Order::OnGoing()->count(), 'deadline_expired' => App\Models\Order::DeadlineExpired()->count(), 'organize' => false, 'report' => false, 'total_url' => route('orders.index'), 'open_url' => false, 'task_url' => false, 'delayed_url' => null, 'send_order_url' => route('orders.index', ['view' => 'SendOrder']), 'waiting_for_signed_contract_url' => route('orders.index', ['view' => 'WaitingForSignedContract']), 'approval_url' => route('orders.index', ['view' => 'executiveApproval']), 'awaiting_advance_payment_url' => route('orders.index', ['view' => 'AwaitingAdvancePayment']), 'waiting_for_survey_url' => route('orders.index', ['view' => 'WaitingForSurvey']), 'awaiting_inspection_url' => route('orders.index', ['view' => 'AwaitingInspection']), 'hiring_suppliers_url' => route('orders.index', ['view' => 'HiringSuppliers']), 'additional_suppliers_url' => route('orders.index', ['view' => 'AdditionalSuppliers']), 'on_going_url' => route('orders.index', ['view' => 'OnGoing']), 'deadline_expired_url' => route('orders.index', ['view' => 'DeadlineExpired']), 'organize_url' => false, 'report_url' => false, 'modal' => false, 'issue_organize' => App\Models\IssueTicket::organize()->count(), 'issue_organize_url' => route('issuetickets.index', ['view' => 'organize']), ]; @endphp @endcan {{-- Felmérések --}} @can('show-survey') @php $infoboxes['surveys'] = [ 'title' => 'Felmérések', 'description' => '', 'total' => App\Models\Survey::all()->count(), 'open' => false, 'task' => false, 'task_text_visible' => false, 'organize' => App\Models\Survey::organize()->count(), 'search_again' => App\Models\Survey::searchAgain()->count(), 'client_looking' => App\Models\Survey::clientLooking()->count(), 'delayed' => App\Models\Survey::delayed()->count(), 'organized' => App\Models\Survey::organized()->count(), 'report' => App\Models\Survey::report()->count(), 'total_url' => route('surveys.index'), 'open_url' => false, 'task_url' => false, 'organize_url' => route('surveys.index', ['view' => 'organize']), 'search_again_url' => route('surveys.index', ['view' => 'searchAgain']), 'client_looking_url' => route('surveys.index', ['view' => 'clientLooking']), 'delayed_url' => route('surveys.index', ['view' => 'delayed']), 'organized_url' => route('surveys.index', ['view' => 'organized']), 'report_url' => route('surveys.index', ['view' => 'report']), 'modal' => false, ]; @endphp @endcan {{-- Rendelés lemondása --}} @can('show-offer') @php $infoboxes['order_cancellation'] = [ 'title' => 'Lemondott megrendelések', 'description' => '', 'total' => App\Models\Order::whereNull('cancellation_status')->count(), 'total_url' => route('orders.index', ['view' => 'cancel']), 'open' => false, 'task' => false, 'task_text_visible' => false, 'awaiting_approval' => App\Models\Order::cancelAwaitingApproval()->count(), 'awaiting_approval_url' => route('orders.index', ['view' => 'cancelAwaitingApproval']), 'approved' => App\Models\Order::cancelApproved()->count(), 'approved_url' => route('orders.index', ['view' => 'cancelApproved']), 'canceled' => App\Models\Order::canceled()->count(), 'canceled_url' => route('orders.index', ['view' => 'canceled']), 'open_url' => false, 'task_url' => false, 'modal' => false, ]; @endphp @endcan {{-- Beszállítói ajánlatok, Beszállítói megrendelések --}} @can('show-supplier-offer') @php $infoboxes['supplier_offers'] = [ 'title' => 'Beszállítói ajánlatok', 'description' => '', 'total' => App\Models\SupplierOffer::OnlySupplierOffers()->get()->count(), 'open' => false, 'task' => false, 'task_text_visible' => false, 'delayed' => false, 'waiting_for_response' => App\Models\SupplierOffer::waitingForResponse()->count(), 'to_send' => App\Models\SupplierOffer::toSend()->count(), 'call_supplier' => App\Models\SupplierOffer::callSupplier()->count(), 'organize' => false, 'report' => false, 'total_url' => route('supplier_offers.index'), 'open_url' => false, 'task_url' => false, 'delayed_url' => null, 'waiting_for_response_url' => route('supplier_offers.index', ['view' => 'waitingForResponse']), 'to_send_url' => route('supplier_offers.index', ['view' => 'toSend']), 'call_supplier_url' => route('supplier_offers.index', ['view' => 'callSupplier']), 'organize_url' => false, 'report_url' => false, 'modal' => false, ]; $infoboxes['supplier_orders'] = [ 'title' => 'Beszállítói rendelések', 'description' => '', 'total' => App\Models\SupplierOrder::all()->count(), 'open' => false, 'task' => false, 'task_text_visible' => false, 'delayed' => false, 'to_order' => App\Models\SupplierOrder::ToOrder()->count(), 'to_order_url' => route('supplier_orders.index', ['view' => 'toOrder']), 'awaiting_confirmation' => App\Models\SupplierOrder::AwaitingConfirmation()->count(), 'awaiting_confirmation_url' => route('supplier_orders.index', ['view' => 'AwaitingConfirmation']), 'confirmation_delayed' => App\Models\SupplierOrder::ConfirmationDelayed()->count(), 'confirmation_delayed_url' => route('supplier_orders.index', ['view' => 'ConfirmationDelayed']), 'awaiting_approval' => App\Models\SupplierOrder::AwaitingApproval()->count(), 'awaiting_approval_url' => route('supplier_orders.index', ['view' => 'AwaitingApproval']), 'waiting_to_receive' => App\Models\SupplierOrder::WaitingToReceive()->count(), 'waiting_to_receive_url' => route('supplier_orders.index', ['view' => 'WaitingToReceive']), 'supplier_waybill_awaiting_upload' => App\Models\SupplierOrder::SupplierWaybillAwaitingUpload()->count(), 'supplier_waybill_awaiting_upload_url' => route('supplier_orders.index', ['view' => 'SupplierWaybillAwaitingUpload']), 'supplier_deadline_expired' => App\Models\SupplierOrder::SupplierDeadlineExpired()->count(), 'supplier_deadline_expired_url' => route('supplier_orders.index', ['view' => 'SupplierDeadlineExpired']), 'supplier_order_cancellation' => App\Models\SupplierOrder::SupplierOrderCancellation()->count(), 'supplier_order_cancellation_url' => route('supplier_orders.index', ['view' => 'SupplierOrderCancellation']), 'organize' => false, 'report' => false, 'total_url' => route('supplier_orders.index'), 'open_url' => false, 'task_url' => false, 'delayed_url' => null, 'organize_url' => false, 'report_url' => false, 'modal' => false, 'order_incomplete' => App\Models\Order::orderIncomplete()->count(), 'order_incomplete_url' => route('orders.index', ['view' => 'OrderIncomplete']), ]; @endphp @endcan {{-- Munkás munkája --}} @if(auth()->user()->can('show-worker-work')) {{-- sorrend fontos --}} @php $vehicles = $user->vehicles()->select('vehicles.id', 'plate_number')->distinct()->get(); if(!$role_group_leader) { foreach ($vehicles as $vehicle) { $infoboxes['works_'.$vehicle->id] = [ 'title' => 'Munkák ('.$vehicle->plate_number.')', 'description' => '', 'modal' => false, 'total' => (new App\Models\Work)->get_user_works()->current()->count(), //->assignedAfterJob() 'total_url' => route('works.index', ['vehicle_id' => $vehicle->id]), 'open' => false, 'open_url' => false, 'task' => false, 'task_url' => false, 'task_text_visible' => false, 'report' => (new App\Models\Work)->get_user_works()->report()->current()->vehicle($vehicle->id)->count(), 'report_url' => route('works.index', ['view' => 'report', 'vehicle_id' => $vehicle->id]), 'missed_report' => (new App\Models\Work)->get_user_works()->missedReport()->vehicle($vehicle->id)->count(), 'missed_report_url' => route('works.index', ['view' => 'missedReport', 'vehicle_id' => $vehicle->id]), ]; } } @endphp @endif {{-- Munkák --}} @can('show-work') @php $infoboxes['works'] = [ 'title' => 'Munkák', 'description' => '', 'modal' => false, 'open' => false, 'open_url' => false, 'task' => false, 'task_url' => false, 'task_text_visible' => false, 'total' => App\Models\Work::all()->count(), 'total_url' => route('works.index'), 'organize' => App\Models\Work::organize()->count(), 'organize_url' => route('works.index', ['view' => 'organize']), 'search_again' => App\Models\Work::searchAgain()->count(), 'search_again_url' => route('works.index', ['view' => 'searchAgain']), 'client_looking' => App\Models\Work::clientLooking()->count(), 'client_looking_url' => route('works.index', ['view' => 'clientLooking']), 'organized' => App\Models\Work::organized()->count(), 'organized_url' => route('works.index', ['view' => 'organized']), 'report' => App\Models\Work::report()->current()->count(), 'report_url' => route('works.index', ['view' => 'report']), 'missed_report' => (new App\Models\Work)->missedReport()->count(), 'missed_report_url' => route('works.index', ['view' => 'missedReport']), //'today_work' => App\Models\Work::report()->current()->count(), //'today_work_url' => route('works.index', ['view' => 'report']), ]; if($role_group_leader) { // Ha csoportvezető akkor rendszámonként írjuk ki a listákat $vehicles = App\Models\Vehicle::all(); foreach ($vehicles as $vehicle) { $infoboxes['works_'.$vehicle->id] = [ 'title' => 'Munkák ('.$vehicle->plate_number.')', 'description' => '', 'modal' => false, 'open' => false, 'open_url' => false, 'task' => false, 'task_url' => false, 'task_text_visible' => false, 'total' => App\Models\Work::all()->count(), 'total_url' => route('works.index', ['vehicle_id' => $vehicle->id]), //'organize' => App\Models\Work::organize()->vehicle($vehicle->id)->count(), //'organize_url' => route('works.index', ['view' => 'organize', 'vehicle_id' => $vehicle->id]), //'search_again' => App\Models\Work::searchAgain()->vehicle($vehicle->id)->count(), //'search_again_url' => route('works.index', ['view' => 'searchAgain', 'vehicle_id' => $vehicle->id]), //'client_looking' => App\Models\Work::clientLooking()->vehicle($vehicle->id)->count(), //'client_looking_url' => route('works.index', ['view' => 'clientLooking', 'vehicle_id' => $vehicle->id]), //'organized' => App\Models\Work::organized()->vehicle($vehicle->id)->count(), //'organized_url' => route('works.index', ['view' => 'organized', 'vehicle_id' => $vehicle->id]), 'report' => App\Models\Work::report()->vehicle($vehicle->id)->current()->count(), 'report_url' => route('works.index', ['view' => 'report', 'vehicle_id' => $vehicle->id]), //'all_report' => App\Models\Work::allReport()->vehicle($vehicle->id)->count(), //'all_report_url' => route('works.index', ['view' => 'allReport', 'vehicle_id' => $vehicle->id]), 'missed_report' => (new App\Models\Work)->missedReport()->vehicle($vehicle->id)->count(), 'missed_report_url' => route('works.index', ['view' => 'missedReport', 'vehicle_id' => $vehicle->id]), //'today_work' => App\Models\Work::report()->vehicle($vehicle->id)->current()->count(), //'today_work_url' => route('works.index', ['view' => 'report', 'vehicle_id' => $vehicle->id]), //'all_missed_report' => (new App\Models\Work)->allMissedReport()->vehicle($vehicle->id)->count(), //'all_missed_report_url' => route('works.index', ['view' => 'allMissedReport', 'vehicle_id' => $vehicle->id]), ]; } } @endphp @endcan @can('show-work') @php $roles = ['Iroda', 'Ügyvezető', 'Admin']; if ($user->roles->whereIn('name', $roles)->isNotEmpty()) { $infoboxes['works'] = [ 'title' => 'Munkák', 'description' => '', 'modal' => false, 'open' => false, 'open_url' => false, 'task' => false, 'task_url' => false, 'task_text_visible' => false, 'total' => App\Models\Work::all()->count(), 'total_url' => route('works.index'), 'organize' => App\Models\Work::organize()->count(), 'organize_url' => route('works.index', ['view' => 'organize']), 'search_again' => App\Models\Work::searchAgain()->count(), 'search_again_url' => route('works.index', ['view' => 'searchAgain']), 'client_looking' => App\Models\Work::clientLooking()->count(), 'client_looking_url' => route('works.index', ['view' => 'clientLooking']), 'organized' => App\Models\Work::organized()->count(), 'organized_url' => route('works.index', ['view' => 'organized']), 'today_work' => App\Models\Work::report()->current()->count(), 'today_work_url' => route('works.index', ['view' => 'report']), 'missed_report' => (new App\Models\Work)->missedReport()->count(), 'missed_report_url' => route('works.index', ['view' => 'missedReport']), ]; } @endphp @endcan {{-- Ajánlat --}} @can('show-offer') @php $infoboxes['issue_tickets'] = [ 'title' => 'Hibajegyek', 'description' => '', 'total' => App\Models\IssueTicket::all()->count(), 'total_url' => route('issuetickets.index'), 'open' => false, 'task' => false, 'task_text_visible' => false, 'issue_ticket_handled' => App\Models\IssueTicket::handled()->count(), 'issue_ticket_handled_url' => route('issuetickets.index', ['view' => 'handled']), 'issue_ticket_to_order' => App\Models\IssueTicket::toOrder()->count(), 'issue_ticket_to_order_url' => route('issuetickets.index', ['view' => 'toOrder']), 'issue_ticket_awaiting_materials' => App\Models\IssueTicket::awaitingMaterials()->count(), 'issue_ticket_awaiting_materials_url' => route('issuetickets.index', ['view' => 'awaitingMaterials']), //'issue_ticket_work_organize' => App\Models\IssueTicket::workOrganize()->count(), //'issue_ticket_work_organize_url' => route('issuetickets.index', ['view' => 'workOrganize']), 'issue_ticket_awaiting_ready' => App\Models\IssueTicket::awaitingReady()->count(), 'issue_ticket_awaiting_ready_url' => route('issuetickets.index', ['view' => 'awaitingReady']), 'open_url' => false, 'task_url' => false, 'modal' => false, ]; @endphp @endcan {{-- Pénzügy --}} @can('show-offer') @php $infoboxes['finance'] = [ 'title' => 'Pénzügy', 'description' => '', 'total' => App\Models\Payment::all()->count(), 'open' => false, 'task' => false, 'task_text_visible' => false, 'delayed' => false, 'payment_reconciliation' => App\Models\Order::PaymentReconciliation()->count(), 'comes_in_to_pay' => App\Models\Order::ComesInToPay()->count(), 'didnt_come_in_to_pay' => App\Models\Order::DidntComeInToPay()->count(), 'need_to_be_invoiced' => App\Models\Order::NeedToBeInvoiced()->count(), 'waiting_for_the_transfer' => App\Models\Order::WaitingForTheTransfer()->count(), 'did_not_transfer' => App\Models\Order::DidNotTransfer()->count(), 'pay_locally' => App\Models\Order::PayLocally()->count(), 'didnt_paid_locally' => App\Models\Order::DidntPaidLocally()->count(), 'transfer_after_work' => App\Models\Order::TransferAfterWork()->count(), 'cash_certificate' => App\Models\Payment::CashCertificate()->count(), 'organize' => false, 'report' => false, 'total_url' => route('payments.index'), 'open_url' => false, 'task_url' => false, 'delayed_url' => false, 'payment_reconciliation_url' => route('orders.index', ['view' => 'PaymentReconciliation']), 'comes_in_to_pay_url' => route('orders.index', ['view' => 'ComesInToPay']), 'didnt_come_in_to_pay_url' => route('orders.index', ['view' => 'DidntComeInToPay']), 'need_to_be_invoiced_url' => route('orders.index', ['view' => 'NeedToBeInvoiced']), 'waiting_for_the_transfer_url' => route('orders.index', ['view' => 'WaitingForTheTransfer']), 'did_not_transfer_url' => route('orders.index', ['view' => 'DidNotTransfer']), 'pay_locally_url' => route('orders.index', ['view' => 'PayLocally']), 'didnt_paid_locally_url' => route('orders.index', ['view' => 'DidntPaidLocally']), 'transfer_after_work_url' => route('orders.index', ['view' => 'TransferAfterWork']), 'cash_certificate_url' => route('payments.index', ['view' => 'CashCertificate']), 'organize_url' => false, 'report_url' => false, 'modal' => false, ]; @endphp @endcan {{-- Naptárak --}} @if(auth()->user()->can('show-complete-calendar') || auth()->user()->can('show-survey-calendar') || auth()->user()->can('show-vehicle-calendar')) @php $infoboxes['calendar'] = [ 'type' => 'calendar', 'title' => 'Naptárak', 'description' => 'Letölthető naptárak.', 'total' => false, 'open' => false, 'task' => false, 'task_text_visible' => false, 'delayed' => false, 'organize' => false, 'report' => false, 'total_url' => false, 'open_url' => false, 'task_url' => false, 'delayed_url' => null, 'organize_url' => false, 'report_url' => false, 'modal' => 'calendarModal', ]; @endphp @endif @extends('layouts.admin') @section('main-content')