Преглед на файлове

修改问题件查询已处理的

ajun преди 5 години
родител
ревизия
dfcbed8726
променени са 1 файла, в които са добавени 12 реда и са изтрити 13 реда
  1. 12 13
      app/Filters/OrderIssueFilter.php

+ 12 - 13
app/Filters/OrderIssueFilter.php

@@ -154,14 +154,13 @@ class OrderIssueFilter
         if(empty($this->params['hidden_tag']))
             $this->queryBuilder->whereNull('order_issues.hidden_tag');
 
-        if(empty($this->params['final_status']))
-            $this->queryBuilder->whereNull('order_issues.final_status');
-        else
-            $this->queryBuilder->where('order_issues.final_status',$this->params['final_status']);
-
-        if(isset($this->params['is_handle']) && isset($this->params['final_status']))
-            $this->queryBuilder->whereIn('final_status.final_status',['已解决','已归档'])->orWhereNull('order_issues.final_status');
-
+        if(!($this->params['is_handle'] ?? false) && !($this->params['final_status'] ?? false)){
+            if(!(isset($this->params['settlement_at_start']) || isset($this->params['settlement_at_end']))) {
+                $this->queryBuilder->where(function ($query) {
+                    $query->whereNotIn('order_issues.final_status', ['已解决', '已归档'])->orWhereNull('order_issues.final_status');
+                });
+            }
+        }
 
         $user = Auth::user();
         $owner_ids = $user ? app('UserService')->getPermittingOwnerIds($user) : [];
@@ -286,11 +285,6 @@ class OrderIssueFilter
         $this->queryBuilder->where('order_issues.created_at', '<=', $created_at_end . " 23:59:59");
     }
 
-    public function final_status($final_status)
-    {
-        $this->queryBuilder->where('order_issues.final_status',$final_status);
-    }
-
     public function order_issue_type_id($order_issue_type_id)
     {
         $this->searchWay($this->queryBuilder,$order_issue_type_id,'order_issues.order_issue_type_id');
@@ -378,6 +372,11 @@ class OrderIssueFilter
         }
     }
 
+    public function final_status($final_status)
+    {
+        $this->queryBuilder->where('order_issues.final_status',$final_status);
+    }
+
     public function finance_confirm($finance_confirm)
     {
         $this->queryBuilder->where('order_issues.finance_confirm',$finance_confirm);