zilong 4 éve
szülő
commit
d7e2836afb

+ 34 - 3
app/Http/Controllers/Api/V1/OrderController.php

xqd
@@ -119,9 +119,40 @@ class OrderController extends AuthController
     {
         $req = request()->post();
         $this->validate(request(), [
-            'product_type' => 'require|integer',
-            'order_status' => 'require|integer',
-            ''
+            'list_type' => 'required|in:1,2,3',
+            'product_type' => 'integer',
+            'order_status' => 'integer',
+            'time_sort' => 'in:0,1'
         ]);
+        $user = $this->user;
+
+        $builder = Order::with(['docter' => ['office', 'qualification'], 'orderPatient', 'orderPack', 'orderNurse', 'orderVaccine'])->where('user_id', $user['id']);
+        if (!empty($req['product_type'])) {
+            $builder->where('product_type', $req['product_type']);
+        }
+        else {
+            if ($req['list_type'] == 1) {
+                $builder->whereIn('product_type', [1,2]);
+            }
+            elseif ($req['list_type'] == 2) {
+                $builder->whereIn('product_type', [3,4,5]);
+            }
+            elseif ($req['list_type'] == 3) {
+                $builder->where('product_type', 6);
+            }
+        }
+        if (!empty($req['order_status'])) {
+            $builder->where('order_status', $req['order_status']);
+        }
+        if (!empty($req['time_sort'])) {
+            $builder->orderBy('id', 'desc');
+        }
+        else {
+            $builder->orderBy('id', 'asc');
+        }
+
+        $data = $builder->paginate();
+
+        return out($data);
     }
 }

+ 15 - 0
app/Models/Order.php

xqd
@@ -15,8 +15,23 @@ class Order extends BaseModel
         return $this->belongsTo(Docter::class);
     }
 
+    public function orderPatient()
+    {
+        return $this->hasOne(orderPatient::class);
+    }
+
     public function orderPack()
     {
         return $this->hasMany(OrderPack::class);
     }
+
+    public function orderNurse()
+    {
+        return $this->hasMany(OrderNurse::class);
+    }
+
+    public function orderVaccine()
+    {
+        return $this->hasOne(OrderVaccine::class);
+    }
 }

+ 14 - 0
app/Models/OrderNurse.php

xqd
@@ -0,0 +1,14 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: zilongs
+ * Date: 20-10-2
+ * Time: 下午11:44
+ */
+
+namespace App\Models;
+
+class OrderNurse extends BaseModel
+{
+
+}

+ 14 - 0
app/Models/OrderVaccine.php

xqd
@@ -0,0 +1,14 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: zilongs
+ * Date: 20-10-2
+ * Time: 下午11:44
+ */
+
+namespace App\Models;
+
+class OrderVaccine extends BaseModel
+{
+
+}