@php
$active = 0;
// 1. ตรวจสอบว่ามีการ Login อยู่หรือไม่
if (Auth::check()) {
// ดึง ID ของ User ที่ Login อยู่
$user_id = Auth::id();
// หา Role จากตาราง user_meta
$user_role = DB::table('user_meta')
->where('user_userid', $user_id)
->value('user_role');
// 2. ตรวจสอบว่าเจอ Role หรือไม่ ถ้าเจอค่อย Query ต่อ
if ($user_role) {
// ดึงรายการ item ที่เคยถูกปฏิเสธ (rejected) ไปแล้วในระบบ Active
$rejected_items_active = DB::table('workflow_approve')
->where('workflow_approve_status', 'rejected')
->pluck('workflow_approve_item') // ดึงเฉพาะ ID ของใบคำร้อง/ไอเทม
->toArray();
// ค้นหาเอกสารค้างอนุมัติ (pending)
$data_active = DB::table('workflow_approve')
->where('workflow_approve_status', 'pending')
->whereNotIn('workflow_approve_item', $rejected_items_active) // ไม่เอาไอเทมที่เคยโดน reject
->orderBy('workflow_approve_order', 'asc') // เรียงลำดับเพื่อให้เจอลำดับแรกก่อน
->get();
// ยุบกลุ่มข้อมูลตามใบคำร้อง (item) เพื่อหาคนที่มีสิทธิ์อนุมัติในลำดับปัจจุบัน
$current_approvers_active = $data_active->unique('workflow_approve_item')->values();
$user_role_array = explode('///', $user_role);
// ใช้ whereIn เพื่อเช็กว่า workflow_approve_who_id ในคิวปัจจุบัน ตรงกับเลขใดเลขหนึ่งใน Array ของเราหรือไม่
if ($current_approvers_active->whereIn('workflow_approve_who_id', $user_role_array)->isNotEmpty()) {
$active = 1;
} else {
$active = 0;
}
}
}
@endphp
@extends('layouts.master')
@section('title', 'Consulting Center')
@section('style')
@endsection
@section('content')
{{-- เริ่มเนื้อหาได้เลย ไม่ต้อง @include header --}}
"Your Trusted Partner in Growth" Consulting Center
"Expert Consulting for Modern Businesses"
 }})