|
@@ -42,6 +42,9 @@ class AdminController extends Controller
|
|
|
|
|
|
public function patients(Request $request)
|
|
public function patients(Request $request)
|
|
{
|
|
{
|
|
|
|
+
|
|
|
|
+ // DB::enableQueryLog();
|
|
|
|
+
|
|
$filters = $request->all();
|
|
$filters = $request->all();
|
|
$patients = AdminPatient::whereNull('shadow_pro_id');
|
|
$patients = AdminPatient::whereNull('shadow_pro_id');
|
|
|
|
|
|
@@ -304,14 +307,22 @@ class AdminController extends Controller
|
|
|
|
|
|
$insurance = $request->get('insurance');
|
|
$insurance = $request->get('insurance');
|
|
if($insurance){
|
|
if($insurance){
|
|
- if($insurance === 'MEDICARE'){
|
|
|
|
- $patients = $patients->whereHas('effectiveClientPrimaryCoverage', function($cpcQuery) {
|
|
|
|
- return $cpcQuery->where('is_partbprimary', '=', 'YES');
|
|
|
|
- });
|
|
|
|
- }else{
|
|
|
|
- $patients = $patients->whereHas('effectiveClientPrimaryCoverage', function($cpcQuery) use ($insurance){
|
|
|
|
- return $cpcQuery->where('commercial_payer_id', '=', $insurance);
|
|
|
|
- });
|
|
|
|
|
|
+
|
|
|
|
+ if(strpos($insurance, '_new_|') === 0){
|
|
|
|
+ $trimmed = trim(str_replace('_new_|', '', $insurance));
|
|
|
|
+ $condSql = "EXISTS(SELECT 1 FROM insurance_card WHERE client_id = admin_patient_list.id AND is_active = TRUE AND (carrier_category ILIKE '%{$trimmed}%' OR carrier_name ILIKE '%{$trimmed}%'))";
|
|
|
|
+ $patients = $patients->whereRaw($condSql);
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ if($insurance === 'MEDICARE'){
|
|
|
|
+ $patients = $patients->whereHas('effectiveClientPrimaryCoverage', function($cpcQuery) {
|
|
|
|
+ return $cpcQuery->where('is_partbprimary', '=', 'YES');
|
|
|
|
+ });
|
|
|
|
+ }else{
|
|
|
|
+ $patients = $patients->whereHas('effectiveClientPrimaryCoverage', function($cpcQuery) use ($insurance) {
|
|
|
|
+ return $cpcQuery->where('commercial_payer_id', '=', $insurance);
|
|
|
|
+ });
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -358,9 +369,15 @@ class AdminController extends Controller
|
|
$patients = $patients->orderByRaw($sortBySQL)->paginate(25);
|
|
$patients = $patients->orderByRaw($sortBySQL)->paginate(25);
|
|
}
|
|
}
|
|
|
|
|
|
- $insurances = DB::select('SELECT DISTINCT commercial_payer_name, commercial_payer_id FROM client_primary_coverage WHERE commercial_payer_name IS NOT NULL ORDER BY commercial_payer_name ASC');
|
|
|
|
|
|
+ $oldInsurances = DB::select('SELECT DISTINCT commercial_payer_name, commercial_payer_id FROM client_primary_coverage WHERE commercial_payer_name IS NOT NULL ORDER BY commercial_payer_name ASC');
|
|
|
|
+
|
|
|
|
+ $newInsurances = DB::select("select distinct COALESCE(ic.carrier_name, ic.carrier_category) as payer_name from insurance_card ic");
|
|
|
|
+
|
|
|
|
+ // $qLog = DB::getQueryLog();
|
|
|
|
+
|
|
|
|
+ // dd($qLog);
|
|
|
|
|
|
- return view('app.admin.patients', compact('patients', 'filters', 'insurances'));
|
|
|
|
|
|
+ return view('app.admin.patients', compact('patients', 'filters', 'oldInsurances', 'newInsurances'));
|
|
}
|
|
}
|
|
|
|
|
|
public function partBPatients(Request $request){
|
|
public function partBPatients(Request $request){
|