Explorar o código

member - aggiunti controlli per archiviato e eliminato

ferrari hai 2 meses
pai
achega
da3f14f2c8
Modificáronse 1 ficheiros con 120 adicións e 22 borrados
  1. 120 22
      routes/web.php

+ 120 - 22
routes/web.php

@@ -364,9 +364,14 @@ Route::group(['middleware' => 'tenant'], function () {
                 } else if ($filterValue == "3") {
                     // Only non-archived members without certificates
                     $scadIds = \App\Models\Member::whereNotIn('id', \App\Models\MemberCertificate::pluck('member_id'))
+                        ->where(function($query) use($archived) {
+                            $query->where('is_archived', $archived);
+                            if (!$archived)
+                                $query->orWhereNull('is_archived');
+                        })
                         ->where(function($query) {
-                            $query->where('is_archived', false)
-                                ->orWhereNull('is_archived');
+                            $query->where('is_deleted', false)
+                                ->orWhereNull('is_deleted');
                         })
                         ->pluck('id')->toArray();
                 } else if ($filterValue == "4") {
@@ -397,10 +402,18 @@ Route::group(['middleware' => 'tenant'], function () {
         if ($_GET["filterStatus"] != "null") {
             $status = explode(",", $_GET["filterStatus"]);
             // Only get non-archived members for status filtering
-            $members = \App\Models\Member::where(function($query) {
-                $query->where('is_archived', false)
-                    ->orWhereNull('is_archived');
+            $members = \App\Models\Member::where(function($query) use($archived) {
+                $query->where(function($q) use($archived) {
+                    $q->where('is_archived', $archived);
+                    if (!$archived)
+                        $q->orWhereNull('is_archived');
+                })
+                ->where(function($q) {
+                    $q->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                });
             })->get();
+            
 
             foreach ($status as $s) {
                 foreach ($members as $m) {
@@ -538,11 +551,14 @@ Route::group(['middleware' => 'tenant'], function () {
 
         $datas = [];
 
-        // BASE IDENTICA ALLA TUA get_members
         $x = \App\Models\Member::select('id', 'first_name', 'last_name', 'email', 'phone', 'birth_date', 'to_complete', 'current_status', 'certificate', 'certificate_date')
             ->where(function($query) {
                 $query->where('is_archived', false)
                     ->orWhereNull('is_archived');
+            })
+            ->where(function($query) {
+                $query->where('is_deleted', false)
+                    ->orWhereNull('is_deleted');
             });
 
         if (isset($_GET["search"]["value"]) && $_GET["search"]["value"] != "") {
@@ -646,6 +662,10 @@ Route::group(['middleware' => 'tenant'], function () {
                             $query->where('is_archived', false)
                                 ->orWhereNull('is_archived');
                         })
+                        ->where(function($query) {
+                            $query->where('is_deleted', false)
+                                ->orWhereNull('is_deleted');
+                        })
                         ->pluck('id')->toArray();
                 } else if ($filterValue == "4") {
                     $memberLatestCerts = DB::table('member_certificates')
@@ -675,8 +695,14 @@ Route::group(['middleware' => 'tenant'], function () {
         if ($_GET["filterStatus"] != "null") {
             $status = explode(",", $_GET["filterStatus"]);
             $members = \App\Models\Member::where(function($query) {
-                $query->where('is_archived', false)
-                    ->orWhereNull('is_archived');
+                $query->where(function($q) {
+                    $q->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($q) {
+                    $q->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                });
             })->get();
 
             foreach ($status as $s) {
@@ -1008,7 +1034,15 @@ Route::group(['middleware' => 'tenant'], function () {
                 $excludeCausals[] = $e->id;
             }*/
 
-        $exclude_from_records = \App\Models\Member::where('exclude_from_records', true)->pluck('id')->toArray();
+        $exclude_from_records = \App\Models\Member::where('exclude_from_records', true)
+            ->where(function($query) {
+                $query->where('is_archived', false)
+                    ->orWhereNull('is_archived');
+            })
+            ->where(function($query) {
+                $query->where('is_deleted', false)
+                    ->orWhereNull('is_deleted');
+            })->pluck('id')->toArray();
 
         // Pagamento money
         $moneys = \App\Models\PaymentMethod::where('money', true)->pluck('id')->toArray();
@@ -1204,9 +1238,17 @@ Route::group(['middleware' => 'tenant'], function () {
             if ($_GET["search"]["value"] != '') {
                 $v = str_replace("'", "\'", stripcslashes($_GET["search"]["value"]));
                 $member_ids = \App\Models\Member::where(function ($query) use ($v) {
-                    $query->whereRaw("CONCAT(first_name, ' ', last_name) like '%" . $v . "%'")
-                        ->orWhereRaw("CONCAT(last_name, ' ', first_name) like '%" . $v . "%'");
-                })->pluck('id');
+                        $query->whereRaw("CONCAT(first_name, ' ', last_name) like '%" . $v . "%'")
+                            ->orWhereRaw("CONCAT(last_name, ' ', first_name) like '%" . $v . "%'");
+                    })
+                    ->where(function($query) {
+                        $query->where('is_archived', false)
+                            ->orWhereNull('is_archived');
+                    })
+                    ->where(function($query) {
+                        $query->where('is_deleted', false)
+                            ->orWhereNull('is_deleted');
+                    })->pluck('id');
                 /*
                     $v = str_replace("'", "\'", stripcslashes($_GET["search"]["value"]));
                     $member_ids = \App\Models\Member::where(function ($query) use ($v) {
@@ -1579,9 +1621,17 @@ Route::group(['middleware' => 'tenant'], function () {
             $v = str_replace("'", "\'", stripcslashes($_GET["search"]["value"]));
 
             $member_ids = \App\Models\Member::where(function ($query) use ($v) {
-                $query->whereRaw("CONCAT(first_name, ' ', last_name) like '%" . $v . "%'")
-                    ->orWhereRaw("CONCAT(last_name, ' ', first_name) like '%" . $v . "%'");
-            })->pluck('id');
+                    $query->whereRaw("CONCAT(first_name, ' ', last_name) like '%" . $v . "%'")
+                        ->orWhereRaw("CONCAT(last_name, ' ', first_name) like '%" . $v . "%'");
+                })
+                ->where(function($query) {
+                    $query->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($query) {
+                    $query->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                })->pluck('id');
 
             /*$member_ids = \App\Models\Member::where(function ($query) use ($v) {
                     $query->where('first_name', 'like', '%' . $v . '%')
@@ -1694,6 +1744,14 @@ Route::group(['middleware' => 'tenant'], function () {
                     $allScadIds = array_merge($allScadIds, $expiringMemberIds);
                 } else if ($filterValue == "3") {
                     $scadIds = \App\Models\Member::whereNotIn('id', \App\Models\MemberCertificate::pluck('member_id'))
+                        ->where(function($query) {
+                            $query->where('is_archived', false)
+                                ->orWhereNull('is_archived');
+                        })
+                        ->where(function($query) {
+                            $query->where('is_deleted', false)
+                                ->orWhereNull('is_deleted');
+                        })
                         ->pluck('id')
                         ->toArray();
                     $allScadIds = array_merge($allScadIds, $scadIds);
@@ -1725,21 +1783,53 @@ Route::group(['middleware' => 'tenant'], function () {
         }
 
         if ($_GET["fromYear"] != "") {
-            $m_ids = \App\Models\Member::where('birth_date', '<', date("Y-m-d", strtotime("-" . $_GET["fromYear"] . " year", time())))->pluck('id');
+            $m_ids = \App\Models\Member::where('birth_date', '<', date("Y-m-d", strtotime("-" . $_GET["fromYear"] . " year", time())))
+                ->where(function($query) {
+                    $query->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($query) {
+                    $query->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                })->pluck('id');
             $datas = $datas->whereIn('member_id', $m_ids);
         }
 
         if ($_GET["toYear"] != "") {
-            $m_ids = \App\Models\Member::where('birth_date', '>', date("Y-m-d", strtotime("-" . $_GET["toYear"] . " year", time())))->pluck('id');
+            $m_ids = \App\Models\Member::where('birth_date', '>', date("Y-m-d", strtotime("-" . $_GET["toYear"] . " year", time())))
+                ->where(function($query) {
+                    $query->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($query) {
+                    $query->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                })->pluck('id');
             $datas = $datas->whereIn('member_id', $m_ids);
         }
 
         if ($_GET["fromFromYear"] != "") {
-            $m_ids = \App\Models\Member::whereYear('birth_date', '>=', $_GET["fromFromYear"])->pluck('id');
+            $m_ids = \App\Models\Member::whereYear('birth_date', '>=', $_GET["fromFromYear"])
+                ->where(function($query) {
+                    $query->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($query) {
+                    $query->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                })->pluck('id');
             $datas = $datas->whereIn('member_id', $m_ids);
         }
         if ($_GET["toToYear"] != "") {
-            $m_ids = \App\Models\Member::whereYear('birth_date', '<=', $_GET["toToYear"])->pluck('id');
+            $m_ids = \App\Models\Member::whereYear('birth_date', '<=', $_GET["toToYear"])
+                ->where(function($query) {
+                    $query->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($query) {
+                    $query->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                })->pluck('id');
             $datas = $datas->whereIn('member_id', $m_ids);
         }
         if ($_GET["filterCards"] != "null") {
@@ -1883,9 +1973,17 @@ Route::group(['middleware' => 'tenant'], function () {
         if (isset($_GET["search"]["value"]) && !empty($_GET["search"]["value"])) {
             $v = str_replace("'", "\'", stripcslashes($_GET["search"]["value"]));
             $member_ids = \App\Models\Member::where(function ($query) use ($v) {
-                $query->whereRaw("CONCAT(first_name, ' ', last_name) like '%" . $v . "%'")
-                    ->orWhereRaw("CONCAT(last_name, ' ', first_name) like '%" . $v . "%'");
-            })->pluck('id');
+                    $query->whereRaw("CONCAT(first_name, ' ', last_name) like '%" . $v . "%'")
+                        ->orWhereRaw("CONCAT(last_name, ' ', first_name) like '%" . $v . "%'");
+                })
+                ->where(function($query) {
+                    $query->where('is_archived', false)
+                        ->orWhereNull('is_archived');
+                })
+                ->where(function($query) {
+                    $query->where('is_deleted', false)
+                        ->orWhereNull('is_deleted');
+                })->pluck('id');
             $baseQuery = $baseQuery->whereIn('receipts.member_id', $member_ids);
         }