ソースを参照

fix: member or not

コミット
acd6e5722a
共有3 個のファイルを変更した23 個の追加6 個の削除を含む
  1. 17
    5
      app/Http/Controllers/TestTransactionController.php
  2. 5
    0
      app/Models/Vehicle.php
  3. 1
    1
      webpack.mix.js

+ 17
- 5
app/Http/Controllers/TestTransactionController.php ファイルの表示

@@ -5,9 +5,11 @@ namespace App\Http\Controllers;
5 5
 use App\Http\Controllers\Controller;
6 6
 use App\Http\Requests\TestTransaction\StoreTestTransactionRequest;
7 7
 use App\Models\EntryTransaction;
8
+use App\Models\Member;
8 9
 use App\Models\OutTransaction;
9 10
 use App\Models\ParkingFee;
10 11
 use App\Models\TypeVehicle;
12
+use App\Models\Vehicle;
11 13
 use Carbon\Carbon;
12 14
 use Illuminate\Http\Request;
13 15
 use Illuminate\Support\Str;
@@ -77,13 +79,23 @@ class TestTransactionController extends Controller
77 79
     public function store(StoreTestTransactionRequest $request)
78 80
     {
79 81
         if ($request->id === 2) {
80
-            $entryTransactions = EntryTransaction::where('transaction_number', $request->entry_transaction_id)->first();
81
-            $vehicleEntryTime = $entryTransactions->getRawOriginal('created_at');
82
-            $longParkingPerHours = Carbon::parse($vehicleEntryTime)->floatDiffInRealHours(now());
82
+            // Check member or not
83
+            $memberId = Vehicle::where('plat_number', $request->plat_number)->first('member_id');
83 84
 
84
-            $parkingFee = ParkingFee::get();
85
+            if ($memberId) {
86
+                // Check expired member or not
87
+                $expDate = $memberId->member->getRawOriginal('exp_date');
85 88
 
86
-            return;
89
+                $exp = Carbon::parse($expDate)->greaterThanOrEqualTo(now());
90
+            } else {
91
+                $entryTransactions = EntryTransaction::where('transaction_number', $request->entry_transaction_id)->first();
92
+
93
+                $vehicleEntryTime = $entryTransactions->getRawOriginal('created_at');
94
+
95
+                $longParkingPerHours = Carbon::parse($vehicleEntryTime)->floatDiffInRealHours(now());
96
+
97
+                $parkingFee = ParkingFee::get();
98
+            }
87 99
         } else {
88 100
             EntryTransaction::create([
89 101
                 'transaction_number' => Str::uuid(),

+ 5
- 0
app/Models/Vehicle.php ファイルの表示

@@ -28,4 +28,9 @@ class Vehicle extends Model
28 28
     {
29 29
         return $this->belongsTo(TypeVehicle::class);
30 30
     }
31
+
32
+    public function member()
33
+    {
34
+        return $this->belongsTo(Member::class);
35
+    }
31 36
 }

+ 1
- 1
webpack.mix.js ファイルの表示

@@ -15,7 +15,7 @@ mix
15 15
   .js('resources/js/vue.js', 'public/js')
16 16
   .webpackConfig(require('./webpack.config'))
17 17
   .vue()
18
-  .browserSync('http://127.0.0.1:8000')
18
+  .browserSync('http://parkirin.test')
19 19
   .disableNotifications()
20 20
 
21 21
 if (mix.inProduction()) {